gpt4 book ai didi

sql - 文档存储的最佳用途是什么?

转载 作者:行者123 更新时间:2023-12-03 10:38:59 26 4
gpt4 key购买 nike

我听说过很多关于像 CouchDB 这样的面向文档的数据存储。我了解 BigTable 的用途,例如 Cassandra 之类的商店。阅读后this question ,我想知道使用文档存储的条件是什么?

最佳答案

Bigtable 和 Cassandra 等列族存储的查询能力非常有限。应用程序负责维护索引以查询更复杂的数据模型。

文档数据库允许您查询内容,而不仅仅是键。它还将为您管理索引,从而降低应用程序的复杂性。

Domain-driven design宣传聚合和值对象的使用。 As Ayende points out ,(复杂)聚合是非常自然的候选者,可以存储为单个文档,而不是在多个表或列族上对它们进行规范化。这将降低持久层的复杂性。相关数据分散在多个节点的可能性也较小,因为所有数据都包含在一个文档中。

如果您的应用程序需要存储多态对象,文档数据库也是一个不错的选择。当然,这也可以存储在 Cassandra 中,但您将没有那么多的查询功能。至少不是开箱即用的。

将文档数据库视为豪华跑车。它不需要专业的司机(阅读:复杂的应用程序)来让你从 A 到 B,它具有空调和舒适的座椅等功能,它将在可接受的时间内完成高可扩展性的赛道。但是,如果您想在高扩展性赛道上创下单圈记录,则需要专业的驾驶员和高度优化的汽车(例如 Cassandra),该汽车缺少空调等功能。

关于sql - 文档存储的最佳用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3376636/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com