减少 cosmos db 中的存储

Reduce storage in cosmos db

我刚刚意识到我从 parquet 移动到 cosmos db 的一些表有相当大的尺寸,因为显然没有像 parquet 中那样的压缩级别。这显然导致了巨大的成本。最终 RU 不会花费我太多,但存储空间有点高。关于如何减少 Cosmos db 中集合大小的任何好的建议。除了排除不需要的字段和索引?

Cosmos DB 的设计初衷并不是要成为大量未主动查询的数据的冷库。如果您有大量不常查询的数据,一个建议是启用 Synapse Link 并让它以 parquet 格式将 Cosmos DB 中的数据写入远程 blob 存储的分析存储中。使用分析存储中的数据,您可以对 Cosmos DB 中未主动使用的数据进行 TTL 处理,并查询 OLTP 操作。

如果需要查询旧数据,可以配置新的Workspace和Notebooks,使用SQL或Spark查询数据。如果您不需要查询它,那么您可以让数据保留在那里。最重要的是,存储成本与常规 blob 存储相同,绝对比 Cosmos DB 中的存储价格便宜,后者是 .25c/GB,因为它位于集群 SSD 存储上。