出于某种原因,我的印象是编写一个现有实体与编写一个新实体一样昂贵,甚至更多,所以我的很多代码都集中在将实体分解成更小的实体的方法上,这样当我修改一个属性,它会产生更少的写入成本。但是,现在查看文档,它指出现有实体 put 具有以下成本:
1 次写入 + 每个修改的索引属性值 4 次写入 + 每个修改的复合索引值 2 次写入
在更改代码的整个结构之前,我想确保我了解细节。究竟是什么使索引符合“修改”的条件?假设我有 4 个索引字符串属性并且没有复合索引。将其作为一个新实体将花费 10 次写入(2 + 2(indexed properties))
。假设我现在修改这些字符串属性之一并将其放回原处。那只需要5次写入(1 + 4 per modified index)
吗?我错过了什么吗?有什么我应该考虑的吗?
如果我有 4 个索引属性和 1 个非索引属性,并且我只修改非索引属性——这只会花费我 1 次写入来重新放置?