MySQL和PostgreSQL引入了JSON数据类型,它与NoSQL数据库相同吗?
为什么?
这里的NoSQL是类似于MongoDb和DynamoDB的一类数据库。
发布于 2018-12-29 11:05:35
关系数据库管理系统将数据处理为关系,这只是表示由行和列组成的表的一种奇特方式。即使列的类型被定义为JSON,但对于DBMS来说,它仍然是单个列的值。这里有一个类比,比方说,定义为十进制的一列。在外部,我们可以说列有整数部分、小数部分、小数位数等等。然而,对于DBMS来说,它是单个列的值。
即使代码从JSON中提取值,情况也是如此。这些拉出的值将以行内列的形式呈现给使用者。该行将是关系(即表)的一部分,该关系中的每一行都将具有相同的结构。仅仅因为查询的结果集是在运行时动态构造的,它与通过CREATE语句定义的结果集的关系是一样的。
但是,NoSQL数据库管理系统(在这里我相信您指的是文档DB品种,如MongoDB,而不是键值或列存储)将数据视为JSON。它接受格式良好的JSON作为输入,并响应查询返回JSON。这就是它的模式。它把世界看作是文件,而不是表格。
在这两种模型中,客户端和服务器之间的接口才是最显著的特点。每个DBMS在内部选择做的事情不是任何人的事情,而是它的事务。
https://dba.stackexchange.com/questions/225969
复制相似问题