Sql-Server

從表中清除數據的最佳方法是對性能的損害最小?

  • January 15, 2018

當您從數據庫表中清除記錄並刪除它們時,您會影響目標表的邏輯和物理結構,以及索引和統計資訊。

海量記錄刪除後的表應該進行哪些維護?

您可以重建或碎片整理,具體取決於已刪除數據的性質、索引的數量以及它們受到的影響程度。如果您在刪除之前知道碎片,則很容易從sys.dm_db_index_physical_stats;評估增量。如果您不這樣做,那麼您可以在確定是否進行碎片整理、重建或都不進行碎片整理時應用通常的規則。(您也可以花時間查看sys.dm_db_index_operational_statssys.dm_db_index_usage_stats驗證您的所有索引是否都是必要的並且正在使用。有時最好的辦法是刪除索引。)

您還可以將刪除分成塊(請參閱本文),並在其間執行增量維護,這樣您最終的維護將是最小的。這可能比單個操作更具侵入性,但它會在更長的時間內分解成更小的突發。

引用自:https://dba.stackexchange.com/questions/107517