📜  什么是半结构化数据?

📅  最后修改于: 2021-09-09 10:47:47             🧑  作者: Mango

半结构化数据是不符合数据模型但具有一定结构的数据。它缺乏固定或僵化的模式。数据并不驻留在合理的数据库中,但具有一些使其更易于分析的组织属性。通过一些过程,我们可以将它们存储在关系数据库中。

半结构化数据的特点:

  • 数据不符合数据模型,但具有某种结构。
  • 数据不能像数据库那样以行和列的形式存储
  • 半结构化数据包含标签和元素(元数据),用于对数据进行分组并描述数据的存储方式
  • 相似的实体组合在一起并按层次结构组织
  • 同一组中的实体可能具有或可能不具有相同的属性或特性
  • 不包含足够的元数据,这使得数据的自动化和管理变得困难
  • 组中相同属性的大小和类型可能不同
  • 由于缺乏明确定义的结构,它不能被计算机程序轻易使用

半结构化数据来源:

  • 电子邮件
  • XML 和其他标记语言
  • 二进制可执行文件
  • TCP/IP 数据包
  • 压缩文件
  • 整合不同来源的数据
  • 网页

半结构化数据的优点:

  • 数据不受固定模式的约束
  • 灵活,即架构可以轻松更改。
  • 数据可移植
  • 可以将结构化数据视为半结构化数据
  • 它支持无法用 SQL 表达需求的用户
  • 它可以轻松处理来源的异质性。

半结构化数据的缺点

  • 缺乏固定的、僵化的模式导致数据存储困难
  • 解释数据之间的关系很困难,因为模式和数据没有分离。
  • 与结构化数据相比,查询效率较低。

存储半结构化数据面临的问题

  • 数据通常具有不规则的部分结构。一些来源具有隐含的数据结构,这使得很难解释数据之间的关系。
  • 模式和数据通常是紧密耦合的,即它们不仅链接在一起,而且相互依赖。同一个查询可能会更新架构和数据,而架构经常更新。
  • 模式和数据之间的区别非常不确定或不清楚。这使数据结构的设计变得复杂
  • 与结构化数据相比,存储成本较高

存储半结构化数据的可能解决方案

  • 数据可以存储在专门用于存储半结构化数据的DBMS中
  • XML 广泛用于存储和交换半结构化数据。它允许用户定义标签和属性,以分层形式存储数据。
    架构和数据在 XML 中不是紧密耦合的。
  • 对象交换模型 (OEM) 可用于存储和交换半结构化数据。 OEM 以图形的形式构建数据。
  • RDBMS 可用于通过将数据映射到关系模式然后将其映射到表来存储数据

从半结构化数据中提取信息
由于来源的异质性,半结构化数据具有不同的结构。有时它们根本不包含任何结构。这使得标记和索引变得困难。因此,虽然从他们那里提取信息是一项艰巨的工作。以下是可能的解决方案——

  • 基于图形的模型(例如 OEM)可用于索引半结构化数据
  • OEM 中的数据建模技术允许将数据存储在基于图形的模型中。基于图形的模型中的数据更易于搜索和索引。
  • XML 允许按层次顺序排列数据,从而可以对数据进行索引和搜索
  • 各种数据挖掘工具的使用

要阅读结构化、半结构化和非结构化数据之间的差异,请参阅以下文章 –

  • 结构化、半结构化和非结构化数据的区别