根据数据集的结构和建索引的难易程度,数据集通常被分为三类。
结构化数据
这类数据最容易整理和搜索,主要包括财务数据、机器日志和人口统计明细等。结构化数据很好理解,类似于 Excel 电子表格中预定义的行列布局。这种结构下的数据很容易分门别类,数据库设计人员和管理员只需要定义简单的算法就能实现搜索和分析。不过,即使结构化数据数量非常大,也不一定称得上大数据,因为结构化数据本身比较易于管理,不符合大数据的定义标准。一直以来,数据库都是使用 SQL 编程语言管理结构化数据。SQL 是由 IBM 在 20 世纪 70 年代开发的,旨在帮助开发人员构建和管理当时正逐步兴起的关系型(电子表格式)数据库。
非结构化数据
这类数据包括社交媒体内容、音频文件、图片和开放式客户评论等。这些数据通常很难用标准的行列关系型数据库捕获。一直以来,企业若想搜索、管理或分析大量非结构化数据,只能依靠繁琐的手动流程。毫无疑问,分析和理解这类数据能够为企业带来价值,但是执行成本往往太过高昂。而且,由于耗时太长,分析结果往往还未交付就已经过时。因为无法存储在电子表格或关系型数据库中,所以非结构化数据通常存储在数据湖、数据仓库和 NoSQL 数据库中。
半结构化数据
顾名思义,半结构化数据是结构化数据和非结构化数据的混合体。电子邮件就是一个很好的例子,因为其中的正文属于非结构化数据,而发件人、收件人、主题和日期等则属于结构化数据。使用地理标记、时间戳或语义标记的设备也可以同时提供结构化数据和非结构化内容。例如,一张未做标识的智能手机图片仍然可以告诉你,这是一张自拍照,以及拍摄的时间和地点。采用人工智能技术的现代数据库不仅能够即时识别不同类型的数据,还能够实时生成算法,有效地管理和分析各种相关的数据集。