Python数据预处理技术与实践
上QQ阅读APP看书,第一时间看更新

3.2 数据类型与采集方法

本节介绍大数据领域中三种主流的数据形式,即结构化数据、半结构化数据和非结构化数据,然后介绍常用的数据采集方法——爬虫技术。

3.2.1 结构化数据

结构化数据是指可以使用关系型数据库表示和存储,表现为二维形式的数据。一般特点是,数据以行为单位,一行数据表示一个实体的信息,每一行数据的属性是相同的。如表3-1所示。

表3-1 二维数据表

  • 数据特点:关系模型数据,关系数据库表示。
  • 常见格式:如MySQL、Oracle、SQL Server格式等。
  • 应用场合:数据库、系统网站、数据备份、ERP等。
  • 数据采集:DB导出、SQL等方式。

结构化数据的存储和排列是很有规律的,这对查询和修改等操作很有帮助,但其扩展性较差。

3.2.2 半结构化数据

半结构化数据是结构化数据的一种形式,它并不符合关系型数据库或其他以数据表的形式关联起来的数据模型结构,其通过相关标记用来分隔语义元素以及对记录和字段进行分层。因此,它也被称为自描述的结构。半结构化数据同一类实体可以有不同的属性,但这些属性的顺序并不重要,即使它们被组合在一起。如XML格式文件的数据就是半结构数据的一种,以下是一个简单的示例:

  • 数据特点:非关系模型数据,有一定的格式。
  • 常见格式:比如Email、HTML、XML、JSON格式等。
  • 应用场合:邮件系统、档案系统、新闻网站等。
  • 数据采集:网络爬虫、数据解析等方式。

不同的半结构化数据的属性的个数是不定的。有人说半结构化数据是以树或者图的数据结构存储的数据,如上面的例子中,<person>标签是树的根节点,<name>标签是子节点。这样的数据格式可以自由地表达很多有用的信息,如个人描述信息(元数据)等。可见,半结构化数据的扩展性是很好的。

3.2.3 非结构化数据

指没有固定结构的数据,各种文档、图片、视频/音频等都属于非结构化数据。对于这类数据可整体进行存储,一般存储为二进制的数据格式。如图3-1所示。

图3-1 非结构化数据

  • 数据特点:没有固定格式的数据。
  • 常见格式:Word、PDF、PPT、图片、音视频等。
  • 应用场合:图片识别、人脸识别、医疗影像、文本分析等。
  • 数据采集:网络爬虫、数据存档等方式。