为GCP数据存储中的索引值选择哈希前缀



给定一个单调递增的属性应用作键或仅用于精确匹配查询,我们计划通过在属性值前添加计算哈希来避免索引争用问题。

实际示例:从RDBMS导入数据,其中文档id是顺序的,应该用于查找。所以,我们计算idhash并存储{hash}|{id}

如果这应该有效,你会推荐多大的哈希?例如,如果我们取sha1的前4个字节,这对有效的索引平板拆分有好处吗?找不到此主题的信息。提前谢谢!

前缀的大小与您想要处理的最大流量成比例。因此,按照500/50/5规则,您将需要与流量除以500一样多的前缀。因此,如果您的写入次数少于500次/秒,那么就不需要散列。如果您使用顺序ID进行每秒1M次写入,则需要2个base64前缀数字。

您还需要按照500/50/5规则增加您的总流量。

最新更新