gpt4 book ai didi

azure - Microsoft Azure DocumentDB 与 Azure 表存储

转载 作者:行者123 更新时间:2023-12-03 06:48:14 27 4
gpt4 key购买 nike

近年来,Microsoft 提供了一种“NoSQL”键/值存储,称为“表存储”( http://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-tables/ )

表存储提供高性能、可扩展性(通过分区)和相对较低的成本。表的一个主要缺点是只能对分区键和行键建立索引 - 因此对值进行查询效率非常低。

最近,微软宣布了一项新的“NoSQL”服务,称为“DocumentDB”( http://azure.microsoft.com/en-us/documentation/services/documentdb/ )

DocumentDB 不存储属性列表(如表那样),而是存储 JSON 对象。整个对象被索引 - 因此可以基于存储对象的每个属性和任何嵌套属性创建有效的查询。

微软表示 DocumentDB 还提供高性能和可扩展性。

如果是这样 - 为什么有人会使用表存储而不是 DocumentDB?听起来 DocumentDB 提供了与表相同的功能,但具有附加功能,例如索引任何内容的能力。

如果有人可以对 DocumentDB 和表存储进行比较,突出显示两者的优缺点,我会很高兴。

最佳答案

两者都是 NoSQL 技术,但它们有很大不同。 Azure Tables 是一个简单的键/值存储,不支持复杂的功能,例如复杂查询(其中大多数无论如何都需要完整的分区/表扫描,这会降低您的性能并节省成本)、自定义索引(索引基于仅 PartitionKey 和 RowKey,您当前无法对任何其他实体属性建立索引,并且搜索除 PartitionKey/RowKey 组合之外的任何内容将需要分区/表扫描)或存储过程。您也无法对多个实体进行批量读取请求(如果所有实体属于同一分区,则支持批量写入请求)。有关 Azure Tables 的实际应用程序,请参阅 HERE .

如果您的数据需求(特别是查询数据)很简单(如上面的示例),那么 Azure 表可以提供您所需的内容,由于价格、性能和存储容量,您最终可能会选择使用 DocDB。例如,Azure 表 performance target是每秒 20.000 次操作。尝试在 DocDB 上获得相同水平的性能将显着提高 service cost为你。此外,Azure 表受到 Azure 存储帐户 ( 500TB ) 容量的限制,而 DocDB 存储则受到您购买的容量单位的限制。

关于azure - Microsoft Azure DocumentDB 与 Azure 表存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28928016/

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