【问题标题】:Confused About DocumentDB Pricing对 DocumentDB 定价感到困惑
【发布时间】:2016-11-29 04:09:01
【问题描述】:

我在Microsoft Azure Website 中看到,DocumentDB 的定价基于集合。例如,对于 1GB 存储空间和 100 RU,我需要支付大约 4 英镑/月的费用。

描述是:

在任何规模下,您都可以存储数据和预置吞吐能力。 每个集合都根据存储的数据量按小时计费 (以 GB 为单位)和以 100 RU/秒为单位保留的吞吐量。

我的困惑是:它真的要为我拥有的每个收藏品计费吗?如果我的应用程序使用包含 20 个集合的数据库,我应该支付(~80 英镑/月)吗?还是说集合就是数据库?

谢谢大家

【问题讨论】:

  • 是的,每个集合的 DocumentDB 账单。将集合视为等同于(关系)数据库会有所帮助。您为每个集合配置吞吐量,针对集合运行查询,并在集合中存储多种类型。

标签: azure azure-cosmosdb


【解决方案1】:

可以认为 Document DB 中的集合等同于普通数据库术语中的表。它不等同于数据库。

【讨论】:

  • 这是错误的。一个集合应该更多地被视为级别 - 至少就您存储到其中的内容而言 - 使用关系数据库,因为您通常会将大部分数据(是的,不同类型的数据,因为它的模式不可知)存储在一个集合中,以压低价格。您将使用分区键按实体或其他适合您系统的东西进行分组。如果像您建议的那样(类似于关系表),70 多个表的典型电子商务系统的价格将是疯狂的。
  • 我不明白你为什么认为答案是错误的。这是来自 MongoDB 的词汇表定义:一组 MongoDB 文档。集合相当于 RDBMS 表。集合存在于单个数据库中。集合不强制使用模式。集合中的文档可以有不同的字段。通常,集合中的所有文档都有相似或相关的目的。
  • 抱歉我的回复晚了。在一个典型的关系应用程序中,一个数据库会包含 X 个表——所有表都具有定义的结构。然而,在文档数据库应用程序中,通常只需要一个集合。集合与模式无关,因此您的所有数据通常都存储在这个集合中 - 因为文档结构无关紧要。如果缩放是一个问题,则有使用多个集合的用例。我对 MongoDB 不是很熟悉,所以那里的术语/结构可能略有不同。我指的是 Azure DocumentDB。
  • 感谢您的回复。我认为问题在于 Mongo API 确实考虑了类似于表的集合。它们确实必须有一个通用的分区键,因此当仍然需要正确的分区键时,混合不同的文档类型可能会遇到问题。最后由于性能要求,不同的文档类型需要不同的可扩展性。与频繁查询的大型文档类型相比,查询频率较低的小型文档类型需要更少的 RU。这将是不混合文档类型的另一个原因。
【解决方案2】:

你的理解是正确的。您必须为每个集合付费,因为吞吐量是按集合定义的。因此,在您的示例中,您将为 20 次收藏支付 80 英镑(或每次收藏 4 英镑)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-13
    • 2012-07-22
    • 2013-05-13
    • 2020-04-16
    • 2023-03-08
    • 2019-08-04
    相关资源
    最近更新 更多