当我说“小”实体时,我的意思Entity
是例如只有 1-2 个字段,当我说“大”实体时,那些有很多字段和/或EmbeddedEntity
上面有很多字段的实体。
所以我的问题是,存储(放置)和检索(获取)是否有区别:
- 投入时间和获取时间
- 单价
put
和get
当我说“小”实体时,我的意思Entity
是例如只有 1-2 个字段,当我说“大”实体时,那些有很多字段和/或EmbeddedEntity
上面有很多字段的实体。
所以我的问题是,存储(放置)和检索(获取)是否有区别:
put
和get
put/get 时间与序列化实体所需的时间以及通过网络传输实体所需的时间有关。这通常更多地取决于实体的大小(以字节为单位),而不是字段的数量。与具有 100 个 4 字节字段的实体相比,具有 1 900KB 字段的实体需要更长的处理时间。
GAE 定价页面中描述了 put/gets 的成本。获取成本不取决于实体大小。放置成本取决于正在更新的索引数量 - 而不是字段总数或总大小。未索引字段不会影响成本,因此您可以拥有一个包含许多未索引字段和一个索引字段的巨大实体 - 放置一个具有单个 4 字节索引字段的实体的成本相同。
另请注意,只有需要更新的索引才会影响您的成本。如果您更新具有许多索引字段的实体,但字段未更改且索引不需要更新,则您无需为此付费。
不过不要忘记大型实体的存储成本。