2016-06-21 103 views
0

谷歌的用戶ID存儲谷歌的用戶ID值在MySQL和Java從令牌 如:最好的辦法

"sub": "110169484474386276334", 

Source

似乎無法找到這個號碼的定義有例子是21個字符長,所以即使是一個無符號的bigint不能處理它在mysql和一個長期無法處理它在java中,

目前我存儲它作爲一個字符串,但我覺得這可能是低效的,特別是因爲我的大部分數據庫工作最低50%是對這些數字進行查找我希望它儘可能具有索引友好性,並且我有一種直覺認爲數字上的索引比字符串上的索引更快。我從有限的文件中認爲總是有數字。

當前正在使用varchar。謝謝

+1

表達式「google user id」不能縮寫爲「Guid」,這沒有任何意義。實際上,「Guid」已經被幾個已知的**實際** [GUID](https://de.wikipedia.org/wiki/Globally_Unique_Identifier)製造商/開發商 – specializt

回答

1

保持它作爲一個字符串。

除非你有一個非常大的用戶基礎和存儲空間是一個大問題,像這樣的優化很可能會帶來更多的麻煩。

僅舉一例,爲什麼存儲ID爲數字可能是一個問題: IDS帶前導零,如果你把它當作一個號碼將被忽略。 0100不一定與100相同。