2014-03-31 25 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

对不起,我不希望它听起来不友善。我自己浪费了很多时间来优化后来被证明是不必要的事情。 –

相关问题