2020年了还不知道结构化数据,非结构化数据,半结构化数据的区别吗?!!

引言

在繁杂的计算机数据中我们可以把数据分为三类,即:

  1. 结构化数据
  2. 非结构化数据
  3. 半结构化数据

结构化数据

这类数据其实其实就是数据之间满足某种关系,这里称其为结构化,而在关系型数据库中关系的实体就是表,所以这类数据一般我们使用关系型数据库进行管理.结构化数据首先依赖于建立一个数据模型,数据模型是指数据是怎么样被存储,处理和登录的, 他包括数据是怎么样被存储的,数据的格式以及其他的限制.

非结构化数据

非结构化数据其实就是没有固定模式的数据,也就是数据之间没有什么关系,举个简单的例子就是文本数据,这类数据我们没办法用某种关系来描述它,遂通常使用Ceph、GFS、HDFS 和 Swift这些分布式文件系统来存储.

非结构化数据

显然半结构化数据也是一种结构化数据,只不过其结构变化很大,不好已一种特定的关系展现出来,由于结构变化很大也不能够简单的建立一个表和他对应.它的定义是非关系模型的,有基本固定结构模式的数据,例如日志文件,XML文档,JSON文档,Email等.这样的解释可能还是不能很清楚的说清楚,我们举一个例子:就比如说每一个人的个人介绍,显然每一个人写的都不太可能是一样的,有些人可能会介绍自己的兴趣,爱好,工作,家庭等.但是有些人就只是写上自己的名字性别,显然我们没有办法使用一张表来存储这些,除非使用某些方法压缩成一个字符串.一般使用Redis,memcache这样的键值数据库来存储.

总结

以前脑子里并没有数据类型这种概念,在了解以后瞬间觉得对于存储有了一种醍醐灌顶的感觉,如此繁杂的数据库我们到底该如何选择呢,问题的关键就在于数据类型,这决定了底层存储的具体实现.

参考:
https://www.zhihu.com/question/50986354#_Toc32103

posted @ 2022-07-02 13:17  李兆龙的博客  阅读(424)  评论(0编辑  收藏  举报