← 最新论文
💻 computer science

CM2: a Cloud Monetary Cost Model for Document-Based NoSQL Databases

本文提出了 CM2,一种可参数化的面向文档的 NoSQL 数据库云货币成本模型,该模型通过分析无服务器环境中模式设计、索引策略与查询模式之间的相互作用,来精确估算运营费用。

原作者: Matteo Francia, Enrico Gallinucci, Matteo Golfarelli, Alessandra Lumini

发布于 2026-10-06
📖 1 分钟阅读☕ 轻松阅读

原作者: Matteo Francia, Enrico Gallinucci, Matteo Golfarelli, Alessandra Lumini

原始论文采用 CC BY 4.0 许可(https://creativecommons.org/licenses/by/4.0/)。 ✨ 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

在现代数字世界中,海量的信息被存储在被称为面向文档型数据库的灵活、非传统格式中。与旧系统中那种僵化的、类似电子表格的结构不同,这些数据库允许数据以反映应用程序实际使用方式的方式进行组织,通常将相关信息组合在单个、自包含的单元中。随着企业将这些系统迁移到由大型技术供应商管理的云端,数据的组织方式不再仅仅是一个技术选择,而变成了一个财务选择。每当计算机读取一段数据、写入新数据或存储一个文件时,云服务商都会收取费用。这些费用基于数据的规模、访问的项目数量以及请求的复杂程度,从而创造了一个复杂的经济图景,其中一个微小的设计决策就可能导致显著更高的账单。

多年来,设计这些系统的专家一直依赖于预测数据库运行速度或内存使用量的模型。然而,这些传统工具往往忽略了在云端实际花费的钱。它们可能会告诉工程师某个设计很快,但无法说明这种速度是否是以无法承受的价格换来的。这种差距让组织在面对未来成本时只能靠猜测,可能导致架构虽然在性能上高效,但在预算上却极其糟糕。问题在于,云定价并不是单一的固定费率,而是由存储费用、读取特定量数据的费用、写入更新的费用以及维护用于快速查找信息的索引的费用所组成的拼凑体系。如果没有一种方法能将技术设计选择转化为单一的美元金额,那么比较不同的数据库结构就像是在尝试比较两辆车的成本,而一辆车的价格是以每加仑行驶里程表示,另一辆车则是以引擎马力表示。

为了解决这个问题,来自博洛尼亚大学的研究人员 Matteo Francia、Enrico Gallinucci、Matteo Golfarelli 和 Alessandra Lumini 开发了一种名为 CM2 的新工具。这是一种专门为运行在无服务器环境中的面向文档的 NoSQL 数据库设计的云货币成本模型。CM2 不关注速度或技术复杂度,而是充当数据库设计师的财务计算器。它获取一种提议的数据组织方式和一份关于数据库将被问及的问题列表,然后计算出确切的每月美元成本。该模型并非在猜测,而是将总支出分解为三个截然不同的部分:存储数据及其索引的成本、读取数据的成本,以及写入或更新数据的成本。它考虑了主要云服务商的具体定价政策,例如他们对每 GB 存储空间或每字节传输数据的收费标准。

研究人员使用一个基于在线商店的现实场景测试了该模型,该场景包含了客户、订单、产品和物流详情。他们创建了该商店数据组织的多个版本。在一个版本中,他们保持数据高度组织化且极少重复,类似于严格的图书馆目录。在另一个版本中,他们在不同的组中复制信息以加快查找速度,类似于在每辆车里都放一份地图的副本。然后,他们在微软 Azure 提供的真实云数据库服务上,针对这些不同的设置运行了数千次模拟查询。其目标是观察他们的模型能否预测云服务商发送的实际账单。

结果非常准确。当研究人员将模型的预测结果与云服务产生的实际成本进行比较时,对于访问文档的数量,误差通常小于 2%;对于使用的索引条目数量,误差小于 1%。对于总存储容量,模型的误差小于 5%。更重要的是,该模型成功预测了最终的货币成本。在一个测试案例中,模型估计每月成本为 0.70 美元,而实际成本为 0.73 美元。在涉及数百万次操作的更复杂场景中,该模型始终能识别出哪种数据库设计最便宜,即使差异很细微,也能正确地对选项进行排名。

研究还表明,最高效的设计完全取决于系统的使用方式。如果应用需要频繁进行复杂的搜索,从而迫使系统读取大量数据,那么一个节省存储空间的设计可能会造成巨额开支。相反,如果系统是读多写少的模式,那么通过重复数据来加速搜索的设计可能会是最经济的选择。该模型显示,在某些情况下,冗余设计由于减少了昂贵的读取操作而更便宜;而在其他情况下,精简的设计由于最大限度地减少了写入更新的成本而胜出。这证明了不存在一种单一的“最佳”数据库构建方式;正确的选择是与应用程序的具体财务和运营模式相一致的选择。

通过提供一种统一的衡量成本的方法,CM2 让工程师能够在构建系统之前做出明智的决策。它将对话的主题从“这是否可行?”转向了“这是否符合我们的预算?”研究人员证明,在设计阶段忽略货币维度会导致架构虽然在技术上完善,但在财务上却不可持续。他们的工作提供了一个平衡性能与价格的实用框架,确保支撑我们数字世界的数据库不仅快速灵活,而且价格合理。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →