2017-08-10 175 views
0

我們正在使用Google App Engine來開發我們的新應用。我們想要使用Google的數據存儲,我們試圖瞭解數據存儲索引如何工作。Google雲端數據存儲索引

我們知道對索引有一些限制。我們特別關注實體指數的侷限性。

我們已經在我們的模型中的一個嵌入屬性,

Main class 

Contact 
{ 
    @Indexed 
    private String name; 

    @Embedded 
    @Indexed 
    private CStatus cstatus; 
} 

Embedded class 

CStatus 
{ 
    private Long start_time = 0L; 

    public enum Status 
    { 
     ACTIVE, PAUSE, DELETED 
    }; 

    private String status = null; 
} 

假定我保存的聯繫人的一個實例,

1.How許多預定義的指標將爲Contact那種總被創造出來的?

2.總共創建了多少索引條目?

3.是否有任何開發者可以用於數據存儲?我們檢查了數據存儲的統計數據,但需要24-48小時更新索引條目列表。

回答

1

根據您的代碼,將創建兩個簡單的索引; 1代表name,另一代表status

您應該注意,如果在運行需要其他索引的查詢的代碼中的其他位置,也會創建索引。

要注意的另一件事是,索引上的200限制不適用於使用一個單一屬性的索引。它適用於使用多個屬性的複合索引。

截至目前爲止,除非你想創建一個虛擬項目並測試你的代碼,否則我不知道有什麼玩法。否則,你只需要在你的開發環境中玩,直到谷歌解決這個問題。

+0

cstatus是一個嵌入式對象,它包含兩個屬性,這兩個屬性是否也有單獨的預定義索引? – Rams

+0

嗯,不,因爲創建索引'Contact'的類將使用一個屬性,即使存儲在其中的對象是複雜實例。希望有所幫助。 – Y2H

+0

能否詳細說明一下,這裏的單個屬性是什麼。 cstatus預定義索引是否包含cstatus類的所有屬性? – Rams