gpt4 book ai didi

azure - 如何为已经具有唯一属性的表选择 Azure 表分区键和 RowKey

转载 作者:行者123 更新时间:2023-12-03 04:44:09 24 4
gpt4 key购买 nike

我的实体是一个键值对。 90% 的时间我会根据键检索实体,但 10% 的时间我还会进行反向查找,即我将按值搜索并获取键。

键和值都保证是唯一的,因此它们的组合也保证是唯一的。

使用Key作为PartitionKey、Value作为RowKey是否正确?

我相信这也将确保我的数据在服务器之间完美负载平衡,因为 ParitionKey 是唯一的。

上述决定有问题吗?在任何情况下使用硬编码分区键是否实用?即所有行都有相同的分区键?并保持 RowKey 唯一?

最佳答案

这是否可行,是的,但根据数据的大小,我不太确定这是一个好主意。当您查询分区键时,表格存储可以直接转到确切的分区并检索您的所有记录。如果单独查询Rowkey,表存储必须检查该行是否存在于表的每个分区中。因此,如果您有 1000 个键值对,则按键搜索将读取单个分区/行。如果您仅通过您的值进行搜索,它将读取所有 1000 个分区!

我遇到了类似的问题,我用两种方法解决了它:

  1. 有 2 个不同的表,一个以 partitionKey 作为您的键,另一个以您的值作为分区键。存储很便宜,因此复制数据不会花费太多。

  2. (我最终做了什么)如果您根据唯一键有效地返回单个实体,只需将它们粘贴在 blob 中(如第 1 点所示进行分区和旋转),因为您不需要遍历表,所以不要。

关于azure - 如何为已经具有唯一属性的表选择 Azure 表分区键和 RowKey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4778669/

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