专栏首页海天一树结构化、半结构化和非结构化数据

结构化、半结构化和非结构化数据

一、结构化数据

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

id      name             age     gender
1       Liu Yi          20      male
2       Chen Er            35      female
3       Zhang San       28      male

所以,结构化的数据的存储和排列是很有规律的,这对查询和修改等操作很有帮助。

但是,它的扩展性不好。比如,如果字段不固定,利用关系型数据库也是比较困难的,有人会说,需要的时候加个字段就可以了,这样的方法也不是不可以,但在实际运用中每次都进行反复的表结构变更是非常痛苦的,这也容易导致后台接口从数据库取数据出错。你也可以预先设定大量的预备字段,但这样的话,时间一长很容易弄不清除字段和数据的对应状态,即哪个字段保存有哪些数据。

二、半结构化数据

半结构化数据是结构化数据的一种形式,它并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层。因此,它也被称为自描述的结构。

半结构化数据,属于同一类实体可以有不同的属性,即使他们被组合在一起,这些属性的顺序并不重要。

常见的半结构数据有XML和JSON,对于对于两个XML文件,第一个可能有

<person>
    <name>A</name>
    <age>13</age>
    <gender>female</gender>
</person>

第二个可能为:

<person>
    <name>B</name>
    <gender>male</gender>
</person>

从上面的例子中,属性的顺序是不重要的,不同的半结构化数据的属性的个数是不一定一样的。有些人说半结构化数据是以树或者图的数据结构存储的数据,怎么理解呢?上面的例子中,标签是树的根节点,和标签是子节点。通过这样的数据格式,可以自由地表达很多有用的信息,包括自我描述信息(元数据)。所以,半结构化数据的扩展性是很好的。

三、非结构化数据

非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、各类报表、图像和音频/视频信息等等。

非结构化数据其格式非常多样,标准也是多样性的,而且在技术上非结构化信息比结构化信息更难标准化和理解。所以存储、检索、发布以及利用需要更加智能化的IT技术,比如海量存储、智能检索、知识挖掘、内容保护、信息的增值开发利用等。

四、应用场景

结构化数据,简单来说就是数据库。结合到典型场景中更容易理解,比如企业ERP、财务系统;医疗HIS数据库;教育一卡通;政府行政审批;其他核心数据库等。这些应用需要哪些存储方案呢?基本包括高速存储应用需求、数据备份需求、数据共享需求以及数据容灾需求。

非结构化数据,包括视频、音频、图片、图像、文档、文本等形式。具体到典型案例中,像是医疗影像系统、教育视频点播、视频监控、国土GIS、设计院、文件服务器(PDM/FTP)、媒体资源管理等具体应用,这些行业对于存储需求包括数据存储、数据备份以及数据共享等。

半结构化数据,包括邮件、HTML、报表、资源库等等,典型场景如邮件系统、WEB集群、教学资源库、数据挖掘系统、档案系统等等。这些应用对于数据存储、数据备份、数据共享以及数据归档 等基本存储需求。

本文分享自微信公众号 - KidsCode少儿编程(gh_de7b45c40e8b)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-08-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • AtCoder算法竞技平台简介

    AtCoder是日本最大的算法竞技网站,域名为http://atcoder.jp/(注意http://www.atcoder.jp/ 是其官网)。AtCoder...

    海天一树
  • 小朋友学Python(17):文件

    Python 提供了必要的函数和方法进行默认情况下的文件基本操作。你可以用 file 对象做大部分的文件操作。 一、打开和关闭文件 例1 (1)创建名为test...

    海天一树
  • 小朋友学Python(14):日期和时间

    一、获取当前时间戳 例1 import time now = time.time() print now 运行结果: 1512884891.53 说明: 这里得...

    海天一树
  • 中国人民大学文继荣:大数据的经验主义解释

    image.png 大数据似乎在一夜之间迅速走红,它势不可挡地冲击着金融、零售等各个行业。云计算将如何改变计算的世界?未来将有怎样的应用前景?如何解决“...

    腾讯研究院
  • 大数据人工智能词汇索引S大数据人工智能词汇索引S

    大数据人工智能词汇索引S S ---- 流处理(Stream processing):流处理被设计来用于持续地进行流数据的处理。与流分析技术(指的是能够持续地计...

    Albert陈凯
  • Helm 3预览:探索我们的未来 - 第5部

    这是Helm 3预览:探索我们的未来博客文章7部中的第5部,讨论关于Chart依赖项以及Helm 2和Helm 3的差异。(查看我们之前关于发布管理的第4部。)

    CNCF
  • 回顾WannaRen勒索病毒一生:从传播到解密享年6天

    随着针对WannaRen勒索病毒的解密工具推出,对于该病毒的事件终于告一段落。至此,我们梳理了一下整个事件,将病毒的现身、分析、溯源以及解密过程进行汇总,发现充...

    用户6477171
  • 如何设计实时数据平台(设计篇)

    导读:本文将会分上下两篇对一个重要且常见的大数据基础设施平台展开讨论,即“实时数据平台”。

    宜信技术学院
  • MySQL常见问题

    mysql数据库做分页用limit关键字,它后面跟两个参数startIndex和pageSize

    步履不停凡
  • 不看这篇,别怪GPU大神们不回答你的问题!

    本篇改编自 Eric Steven Raymond 的《提问的艺术》 在Lady的GPU应用技术开发QQ群里,当提出一个技术问题时,你能得到怎样的回答? 这取决...

    GPUS Lady

扫码关注云+社区

领取腾讯云代金券