Johan Euphrosine によるこのプレゼンテーションのような複数の情報源によると、AppEngine はプロパティ名をデータとインデックスと共に保存します。このため、ディスクのスペースを節約するために、データストア内の種類とプロパティ名の短縮版を使用しています。
@Entity("p")
public class PersistentClass {
@Property("n")
private String name;
}
このエンティティのインデックス エントリは、次の行になります。
PersistentClass:1
PersistentClass:name:foo:PersistentClass:1
(短縮されたプロパティ名を適用する)と比較して:
p:1
p:n:foo:p:1
これは 73% の圧縮率ですが、これは理論的な演習であり、プラットフォームに関する内部知識がなければ先に進むのは困難です。私の質問は次のとおりです。これは一般的な慣行ですか?NoSQL、特に AppEngine で保存された短縮されたプロパティ名の節約を測定した人はいますか?