非分區表我有一個表,在我看來,將受益分區:分區在SQL Server 2008
CREATE TABLE [dbo].[my_table](
[id] [int] IDENTITY(1,1) NOT NULL,
[external_id] [int] NOT NULL,
[amount] [money] NOT NULL,
PRIMARY KEY CLUSTERED ([id] ASC));
只是有幾個不同的external_id
和數以千計的爲他們每個人的記錄。
SSMS創建分區嚮導生成一個我不完全理解的腳本。創建分區函數和分區架構,
--IT下降主鍵,
--then上id
再創主鍵,此時如非羣集,之後
--then上創建新創建的分區上external_id
聚集索引模式,
- 最後它會刪除在上一步創建的聚集索引。
除了最後一步以外的所有東西看起來都很清晰,但我無法理解爲什麼它必須刪除聚簇索引。我應該從批處理中刪除最後一步嗎?
任何幫助將不勝感激。
您正在尋找分區,是否有任何您需要的查詢性能? – Pankaj 2011-05-27 05:16:11
@ SQL-我主要關心的不是執行'select',而是與新數據合併。我只爲給定的'external_id'選擇1(使用頂部)行,使用它並刪除它。當找不到記錄時,我爲這個'external_id'插入另外幾千條記錄。預先生成所需的數據並切換到新的分區似乎以比INSERT更快的數千次(幾百萬次)的速度運行。 – a1ex07 2011-05-27 14:17:25