为什么叫 NoSQL? [英] Why is it called NoSQL?

查看:39
本文介绍了为什么叫 NoSQL?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近使用了 MongoDB,了解了它的无模式设计.但是,我对 NoSQL 一词感到困惑?为什么这么叫?它不使用 SQL 或类似 SQL 的查询吗?

I've recently worked with MongoDB and learned about its schemaless design. However, I'm confused with the term NoSQL? Why is it called that? Doesn't it use SQL or SQL-like queries?

我还阅读了一篇文章主要区别在于数据的存储方式.这是真的?对于 MongoDB,它像 JSON 文档一样存储.

I've also read from an article that the main difference lies in how data is stored. Is this true? In the case of MongoDB, it's stored like JSON documents.

另外,我很困惑为什么我总是看到NoSQL 与关系数据库".NoSQL 数据库不是关系型的吗?我相信 MongoDB 中的文档仍然通过一些键相关/链接(如果我错了,请纠正我).那么为什么它被标记为非关系?

Also, I'm confused why I always see 'NoSQL vs relational databases'. Aren't NoSQL databases relational? I believe documents in MongoDB are still related/linked through some keys (please correct me if I'm wrong). So why is it labeled as non-relational?

提前致谢!

推荐答案

它不使用 SQL 或类似 SQL 的查询吗?

Doesn't it use SQL or SQL-like queries?

虽然非关系数据库"可能是一个更准确的名称,但它们中的大多数实际上并没有使用 SQL 或类似的东西.

While "non-relational databases" might be a more accurate name, most of them do in fact not use SQL or something similar.

NoSQL 数据库不是关系型的吗?我相信 MongoDB 中的文档仍然通过一些键相关/链接(如果我错了,请纠正我).那么为什么它被标记为非关系?

Aren't NoSQL databases relational? I believe documents in MongoDB are still related/linked through some keys (please correct me if I'm wrong). So why is it labeled as non-relational?

NoSQL 数据库是非关系型数据库.

NoSQL databases are non-relational databases.

它们有多种风格(主要是文档数据库"、键值存储"和图形数据库"),但您通常不会获得以下任何或所有关系"功能:

They come in a variety of flavours (mainly "document databases", "key-value stores", and "graph databases"), but you usually don't get any or all of the following "relational" features:

  • 使用模式定义表(命名列和通常类型列)

  • Defining tables with a schema (named and usually typed columns)

能够在单个查询中连接多个表

Ability to join multiple tables in a single query

任意范围的长时间运行的隔离事务

Long-running, isolated transactions of arbitrary scope

临时查询可能需要很长时间,并且有很多方法可以索引数据以加快它们的速度(而不是必须更改整个数据库布局)

Ad-hoc queries that can take a long time, and many ways to index the data to speed them up (as opposed to having to change the whole database layout)

(放弃其中一些方便的功能会得到改进的性能、可用​​性和可扩展性).

(What you get by giving up some of these handy features is improved performance, availability and scalability).

这篇关于为什么叫 NoSQL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆