2017-05-29 71 views
0

假設我有一個具有1個未索引字段和5個索引字段的物品實體。如果我要通過單獨修改未索引屬性來更新實體,是否也會導致重寫五個索引字段的索引?基本上我很擔心這裏的寫入成本。更新物品實體而不更改索引屬性

回答

1

是的,實體的每次更新都會導致所有索引屬性的更新。換句話說,無論是隻更新一個屬性還是所有屬性,寫入成本都是相同的。

這不是特定於Objectify - 這是數據存儲的工作原理。

+0

這種定價改變之前是不正確的回來,肯定不是現在。目前的定價是每個實體的固定價格,不論指數的數量如何。 – stickfigure

+0

什麼是不正確?您的回覆與我的完全相同 - 寫作成本不取決於索引屬性的數量,即無論有多少屬性更新,寫入成本都是相同的。 –

+0

我非常懷疑它會獨立於索引屬性的數量 - 爲什麼Google會繼續解釋寫入成本,如https://cloud.google.com/appengine/docs/standard/python/datastore/entities#Python_Understanding_write_costs所示。開發者必須爲未經索引的房產留下何種激勵? – adarsh

2

Google會按實體寫入收費,而不考慮索引數量。

https://cloud.google.com/appengine/pricing#costs-for-datastore-calls

+0

我對此的解釋是,這裏提到的成本是每個寫入請求,但我同意每個實體寫入更合理的解釋。我懷疑是因爲https://cloud.google.com/appengine/docs/standard/python/datastore/entities#Python_Understanding_write_costs中解釋過,單個實體寫入實際上可能導致數十個寫入請求。 – adarsh

+0

該文檔似乎已過時;這就是它以前的工作方式。無論更好還是更糟,Google現在都會根據實體撰寫費用。 – stickfigure