按日期時間列對MySQL 表進行分區,目標是每天一個分區,這可能是一項有價值的最佳化用於大型資料集的技術。然而,選擇正確的分區方法對於有效的效能至關重要。
使用 HASH(day(ftime)) 分區 31 的初始分區方法有很大的限制。 HASH 分區無法有效利用日期時間列的分區,因為它無法使用分區修剪,這會從查詢評估過程中排除不必要的分區。
另一種方法的方法是建立一個額外的 INTEGER 欄位來儲存 TO_DAYS(DATE()) 的值。此整數列可以進行修剪,從而提高查詢效能。
另一種分區方法是 RANGE 分區,它提供了更大的靈活性。透過根據一系列 TO_DAYS(ftime) 值定義分割區,您可以精確選擇特定日期的分割區。例如,範例將分區劃分為每日範圍,確保諸如「SELECT * FROM raw_log_2011_4 WHERE ftime = '2011-04-03'」之類的查詢僅存取當天的分區。
最佳分割方法取決於您的特定要求和表格特性。對於分區修剪至關重要的場景,建議使用 TO_DAYS() 列方法。如果您需要更靈活的分區,RANGE 分區提供了強大的解決方案。
以上是以下是文章標題的幾個選項,請記住您要求的問題格式: **選項 1(直接、切中要害):** * **如何按 Opti 的日期時間對 MySQL 表進行分區的詳細內容。更多資訊請關注PHP中文網其他相關文章!