【发布时间】:2021-09-11 06:22:33
【问题描述】:
当使用 cosmos db 作为简单的键/值存储时,我应该使用什么索引模式/策略?
来自https://docs.microsoft.com/en-us/azure/cosmos-db/index-policy:
无:在容器上禁用索引。这通常在容器用作纯键值存储而不需要二级索引时使用。
这是因为即使 indexMode 设置为“none”,用作分区键的属性也会被索引?我希望需要打开索引,但只指定分区键的路径作为唯一包含的路径。
如果重要的话,我打算使用 SQL API。
编辑:
这是我为理解这一点而缺少的信息:
- 该项目必须具有
id属性,否则 cosmos db 将分配一个。 https://docs.microsoft.com/en-us/azure/cosmos-db/account-databases-containers-items#properties-of-an-item - 由于我使用 Azure 数据工厂加载项目,我可以告诉 ADF 将具有我想要用作我的 id 的值的列复制到一个名为
id的新列中:https://docs.microsoft.com/en-us/azure/data-factory/copy-activity-overview#add-additional-columns-during-copy - 我需要使用
ReadItemAsync,或者更好的是ReadItemStreamAsync,因为它不会反序列化响应,以便在不使用查询的情况下获取项目。 https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.cosmos.container.readitemasync?view=azure-dotnet https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.cosmos.container.readitemstreamasync?view=azure-dotnet
【问题讨论】:
标签: azure azure-cosmosdb azure-cosmosdb-sqlapi