2014-04-16 42 views
0

我有一張我即將分區的巨大表格。它有一個複合4元素主鍵。其中一個要素就是創紀錄的時間,這是一個很好的候選人,可以成爲劃分的關鍵。 MySQL手冊給出了很多例子,其中DATE字段與RANGE YEAR是非常有效的分區密鑰。MySQL按YEAR劃分:日期與時間戳

我的問題是我有timestamp而不是dateMySQL docs狀態,它有可能使用timestamp

與MySQL 43年5月1日開始,但也可以通過基於TIMESTAMP列的值範圍內,以分隔表 使用 UNIX_TIMESTAMP()函數

但它沒有提到任何有關性能的內容。問題是:date,timestamp中的哪一個會更快地作爲分區鍵?如果DATE更好,我正在考慮更改主鍵。我將把所有數據分成一年或一年的分區。

回答

0

只有這樣,才能知道肯定是看到了一個基準。

我從來沒有一個這樣我的回答可能是錯誤的。

在我看來,DATE應該比TIMESTAMP更快,因爲它存儲的信息較少,因此使用起來會更容易。此外,由於它是分區應該告訴你,它可以更好地實現爲支持第一個(不是說TIMESTAMP版本將受到嚴重實現)。

但我的問題是,如果DATE將是TIMESTAMP的好替代品,因爲你會失去很多精度。