2009-05-03 70 views
0

我有一個已發展到超過100萬條記錄的表...今天(全部有效)SQL Server 2008中慢速表,表分區

我需要加快步伐......將表分區是答案?如果是這樣,我可以幫助建立查詢?

表有4個BIGINT值鍵與索引的主鍵和用戶標識一個指數遞減的其他值都在最高139這就是所有的(現在有剛剛超過10,000個用戶)

任何幫助或方向將不勝感激:)

+0

你能告訴我們表結構,一些示例查詢速度慢,所有現有的索引? – sisve 2009-05-03 05:39:24

+0

我們不能回答:沒有足夠的信息。基於您的評論如下:SQL Server的錯誤版本,不使用本機SQL,沒有發佈架構或索引。 – gbn 2009-05-03 06:43:38

回答

1

您可能只需要調整您的查詢和/或索引。 100萬條記錄不應該引起你的問題。我有一個有幾億記錄的表&能夠保持相當高的表現。我發現SQL Server分析器對這個東西非常有幫助。它在SQL Server Management Studio中可用(但不幸的是,不是快速版本)。您也可以通過Query > Include Actual Execution Plan查看查詢期間在哪裏花費時間的圖表。

2

在考慮分區之前,應該調查索引和查詢工作負載。如果您已經完成了大量的插入,您的聚集索引可能會被分段。

即使您使用SQL Server Express你仍然可以使用配置文件這個免費工具:Profiler for Microsoft SQL Server 2005/2008 Express Edition

0

我同意的其他意見。使用合理小的數據庫(最大表1MM記錄),如果查詢得到優化並且其餘代碼不會濫用具有冗餘查詢的數據庫,那麼數據庫中的任何活動都不應該提供明顯的負載。這是瞭解數據庫查詢與其他代碼之間相互作用的好機會。