最近我們開始在SQL Server上發現一些性能問題。SQL Server 2005 - 表中的行數(推薦)
在分析我發現,DBA在一個表(300 GB的大小)
沒有分區,沒有合適的指標已經得到了800個百萬行 - 導致性能下降。
忠告:
多少行的數量將一個在SQL Server推薦表2005年
最近我們開始在SQL Server上發現一些性能問題。SQL Server 2005 - 表中的行數(推薦)
在分析我發現,DBA在一個表(300 GB的大小)
沒有分區,沒有合適的指標已經得到了800個百萬行 - 導致性能下降。
忠告:
多少行的數量將一個在SQL Server推薦表2005年
Oracle用戶(從來沒有使用MS SQL服務器等大量的行)
我可以說,我的一切具有數億行的,所有表只是工作過的系統分區。
根據這份文件,你也應該在MS SQL中分配這樣大的表格。 http://msdn.microsoft.com/en-us/library/ms345146(v=sql.90).aspx
應該有對單個表中行數量沒有真正的限制,只要它被正確編入索引--8億美元並不像那麼多。
什麼是「正確索引」將完全取決於應用程序和表。
沒有「推薦」數字。
你應該只保存你使用的數據。如果你不使用它,將其歸檔。
如果您確實需要它並且出現性能問題,那麼您的DBA應該能夠調整數據庫。有了這些行數(並非不尋常),索引和確保SAN正常工作應該有所斬獲。水平縮放是另一種選擇。
我看到很多「沒有限制」的答案,但我會不同意。除非你有大量的硬件,否則這個表應該被分區。有8億行的事實告訴我,或者a。)這是數據倉庫中的事實表(並且應該被分區)或b)dba一直在睡着。
我在想b(或者可能是a和b)。我無法想象成爲dba,並且在沒有某種干涉的情況下讓桌面獲得8億條記錄。我喜歡積極主動,這是dba沒有計劃老化數據的一個大紅旗。它要麼迅速增長,要麼完全不受管理。
記錄的數量不一定是問題,認爲它是一個不同問題的標誌。 – MatBailie
同意@Dems - 問題不是行數,而是其他觀察 - 「不分區,沒有合適的索引」 - 它們是問題,而不是行數。 –