2014-03-31 24 views
3

您好,我想知道使用Int和String ID爲實體密鑰之間的性能差異有多大。Google App Engine - 數據存儲區密鑰ID int與字符串性能

我無法找到任何關於此的文章。在我看來,大規模比較長字符串 必須比int64s慢很多,或者我錯了,並且有一些很酷的算法可以使它以相同的速度運行。

我想使用sha256散列作爲字符串ID,但不想失去與int ID相比的任何東西。

例如,如果我有1 000 000 000個相同類型的實體,並且我使用的sha512具有實體的字符串ID(128個字符),將會比使用int64 ID讀取(從數據存儲獲取)實體的數量?如果是比多少?

感謝您的任何答覆或建議,希望我解釋正確。

回答

7
  1. 我不認爲會有任何區別。 App Engine存儲數以萬億計的實體,我相信他們在團隊中擁有足夠的計算機科學博士學位,可以優化檢索單個記錄等基本任務。

  2. 即使有差異,它也可以忽略不計。我想不出一個用例,它在哪裏很重要。

  3. 還有更多的決定對性能有更大的影響。

  4. 我想你應該專注於獲得數百萬用戶第一。一旦你到達那裏,你可以籌集很多錢,然後你可以優化你的應用程序。

+1

不是最友好的答案,但我還是謝謝你 – calvix

+1

我不認爲它的意思是不友好的,關鍵是不要在你還沒有遇到問題,優化失去你的時間。 –

+0

對不起,我不希望它聽起來不友善。我自己浪費了很多時間來優化後來被證明是不必要的事情。 –

相關問題