Redian新闻
>
NoSQL 数据库如何选型

NoSQL 数据库如何选型

公众号新闻

作者 | Arslan Ahmad
译者 | 平川
策划 | Tina
什么是 NoSQL 数据库?

通常,“NoSQL 数据库”是指非关系型数据库。不管它是“non SQL”的缩写,还是“not only SQL”的缩写,大多数人都同意,NoSQL 数据库是以关系表之外的格式存储数据的。

NoSQL 数据库之所以如此大受欢迎,是因为它们为用户提供了灵活的数据存储模式。

为什么要使用 NoSQL 数据库?

NoSQL 数据库性能优异、可扩展,而且很灵活,非常适合移动、Web 和游戏应用程序。

  • 可扩展性:NoSQL 数据库通常使用分布式硬件集群进行横向扩展,而不是通过增加昂贵、健壮的服务器进行纵向扩展。在全托管服务中,有些云提供商在后台帮用户完成了所有这些操作。

  • 灵活性:NoSQL 数据库通常都提供了灵活的模式,支持快速迭代开发。NoSQL 数据库有灵活的数据模型,非常适合半结构和非结构化数据。

  • 高性能:与关系型数据库相比,NoSQL 数据库针对特定的数据模型和访问模式做了优化,进一步提升了性能。

以下是一些知名的 NoSQL 数据库类

键值数据库

键值数据库成对存储数据,每个记录包含一个唯一 id 和一个值。这类数据库提供了灵活的存储结构,因为值中可以存储任意数量的非结构化数据。

应用场景

会话管理、用户偏好设置和产品推荐。

典型产品

Amazon DynamoDB、Azure Cosmos DB、Riak。

内存键值数据库

不同于基于磁盘的数据库,这类数据库的数据主要保存在内存中。通过减少磁盘访问实现最小响应时间。由于所有数据都存储在内存中,在进程或服务器出现故障时,内存数据库有丢失数据的风险。内存数据库可以通过在日志中记录每个操作或生成数据快照的方式将数据持久化到磁盘上。

典型产品

Redis、Memcached、Amazon Elasticache。

文档数据库

文档数据的结构和键值数据库类似,只是键和值的形式是用标记语言(如 JSON、XML 或 YAML)编写的文档。

应用场景

用户资料、产品目录和内容管理。

典型产品

MongoDB、Amazon DocumentDB、CouchDB。

列式数据库

列式数据库基于表存储,但没有严格的列格式。列式数据库不要求每一列都有值,而且可以组合包含不同数据格式的行段和列段。

应用场景

遥测数据、分析数据、消息传递和时序数据。

典型产品

Cassandra、Accumulo、Azure Table Storage、HBase。

NoSQL 数据库的类型

图数据库

图数据库使用节点和边来映射数据之间的关系。节点是单个的数据值,边是这些值之间的关系

应用场景

社交图谱、推荐引擎和欺诈检测。

典型产品

Neo4j、Amazon Neptune、Azure Cosmos DB Gremlin。

时序数据库

这类数据库存储有时间顺序的流式数据。数据不是按值或 id 排序,而是按收集、摄入时间或元数据中包含的其他时间戳排序。

应用场景

工业遥测数据、DevOps 和物联网(IOT)应用程序。

典型产品

Graphite、Prometheus、Amazon Timestream。

分类账数据库

分类账数据库以日志为基础,日志中记录了与数据值相关的事件。这类数据库存储用于验证数据完整性的数据更改操作。

应用场景

银行系统、注册、供应链、记录系统(systems of record)。

典型产品

Amazon Quantum Ledger Database(QLDB)。

小   结

为了选出最合适自己的 NoSQL 数据库,你应该了解各种 NoSQL 数据库之间的差异。

原文链接:

https://levelup.gitconnected.com/system-design-interviews-nosql-databases-and-when-to-use-them-780021f4063

相关阅读:

为什么 NoSQL 数据库这么受欢迎?(https://xie.infoq.cn/article/b663f3c216b96fc6c8d0710d6 )

SQL 与 NoSQL 最终会走向融合吗?(https://xie.infoq.cn/article/1601b4dc6dc8a4e8cc1b7b4e6 )

腾讯云 NoSQL 数据库产品 2022 再迎升级,多项技术细节首次公开 (https://xie.infoq.cn/article/2bca963b0c9d1a6f2a8e654aa )

最全 SQL 与 NoSQL 优缺点对比 (https://xie.infoq.cn/article/de732963b420ee35542fb1010 )

声明:本文为 InfoQ 翻译,未经许可,禁止转载

点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!

今日好文推荐

“干净”的代码,贼差的性能

一场向应用交付标准的“冲锋”

没有 NGINX 和 OpenResty 的未来:Cloudflare 工程师正花费大量时间用 Rust 重构现有功能

开源意味着不问责,我们准备好应对比 Log4Shell 更大的安全危机了吗?|Log4j 一周年特别报道

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
MySQL 索引 15 连问,抗住!多模数据库、“Serverless 化” | 开源数据库领域解读慢SQL是如何拖垮数据库的?MySQL 数据同步到 Redis 缓存, so Easy !如何高效实现MySQL与elasticsearch的数据同步美团四面:如何保障 MySQL 和 Redis 的数据一致性?Java中如何解析、格式化、生成SQL语句?MySQL 字符串指南 | Linux 中国登顶对话式语义解析国际权威榜单SParC和CoSQL,全新多轮对话表格知识预训练模型STAR解读感谢信SQL能完成哪方面的计算?一文详解关系代数和SQL语法隐语开源首个工业级多方安全数据分析系统SCQL:像写SQL一样「易用」隐私计算AAAI 2023 | 基于T5的两阶段的多任务Text-to-SQL预训练模型MIGA一文掌握 MyBatis 的动态 SQL 使用与原理Andy教授解读数据库的2022:大规模数据库投资大幅放缓、区块链数据库仍然是一个愚蠢的想法文化大革命是新文化运动的继续使用 Vector 将 PostgreSQL 日志输出为 Prometheus 指标2022 stocks 投坛魔鬼都在细节里,揭秘腾讯云数据库TDSQL刷新TPC-C世界记录!盘点2022年的数据库/数据仓库/数据湖市场(上)。。。8 种主流数据迁移工具技术选型,yyds!MySQL 批量操作,一次插入多少行数据效率最高?Spring Boot 如何防护 XSS + SQL 注入攻击 ?终于懂了!了解那些“奇葩”SQL写法,快速写出高效率SQL5大主流方案对比:MySQL千亿级数据线上平滑扩容实战Could China ever surpass the United States economically?FlinkSQL 必知必会的核心知识点,整齐了 | 极客时间临床数据库对于临床科研有多重要?如何利用开放的数据库撰写SCI论文?MySQL 处理大数据表的 3 种方案,写的太好了,建议收藏!!每分钟可处理8.14亿笔交易、腾讯云数据库TDSQL刷新TPC-C纪录对国产数据库行业意味着什么?愚民的连花最全的生物样本数据库(Biobank)收集;及部分公开数据库的大数据分享盘点2022年的数据库/数据仓库/数据湖市场(下)——Teradata退出中国市场了,Oracle还没走。。。SpringBoot 实现 MySQL 百万级数据量导出并避免 OOM 的解决方案2022 年数据库发展总结:中国和海外数据库差距还有多远?
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。