重組:資料庫使用較長一段時間後,因為一些增,刪,改等操作,使得資料的分佈索引及相關資料會變得比較凌亂,從而影響資料庫的效率。 重組即是將資料庫的相關資訊重新組織,提高資料庫效率。資料庫重組可分為:①索引的重組②單表的重組③表空間的重組。重組是比較底層且比較費時的操作,在重組時會停止前端業務,把資料庫裡表的資料放到磁碟的空閒空間上,刪除原有的表或索引,重建空的表或索引後,再把資料匯入新表或索引中,這個過程無誤即資料庫重組成功.但也有匯入資料失敗的情況,所以資料庫重組的風險也比較大。 重構:是對資料庫模式的簡單變更,在保持原有的行為語義和資訊語義的情況下改進資料庫設計。簡單理解為既不新增新功能也不減少原有功能,既不新增新資料也不改變原有資料的含義。資料庫模式包括結構(比如表和檢視)和功能(比如觸發器和儲存過程)。重構要保持需求上的原有性,即在資訊使用者的角度上資料庫不能有所變動,重構包括不同種類:結構重構、資料質量重構、參照完整性重構、架構重構、方法重構和轉換。 二者最本質的區別就是重組不涉及模式的變更,而重構是對模式的簡單變更但保持原有需求不便。而且重組不涉及任何程式碼重構,而對模式的變更卻要求做相應的程式碼重構,以實現原有功能的不變。 聯絡:重構一定會重組,但重組不一定會重構。
簡單來說,資料庫執行時間長後會產生一定的垃圾,影響執行速度,尤其是一些超大的資料庫。重構資料庫後會把這些垃圾過濾掉。
重組:資料庫使用較長一段時間後,因為一些增,刪,改等操作,使得資料的分佈索引及相關資料會變得比較凌亂,從而影響資料庫的效率。 重組即是將資料庫的相關資訊重新組織,提高資料庫效率。資料庫重組可分為:①索引的重組②單表的重組③表空間的重組。重組是比較底層且比較費時的操作,在重組時會停止前端業務,把資料庫裡表的資料放到磁碟的空閒空間上,刪除原有的表或索引,重建空的表或索引後,再把資料匯入新表或索引中,這個過程無誤即資料庫重組成功.但也有匯入資料失敗的情況,所以資料庫重組的風險也比較大。 重構:是對資料庫模式的簡單變更,在保持原有的行為語義和資訊語義的情況下改進資料庫設計。簡單理解為既不新增新功能也不減少原有功能,既不新增新資料也不改變原有資料的含義。資料庫模式包括結構(比如表和檢視)和功能(比如觸發器和儲存過程)。重構要保持需求上的原有性,即在資訊使用者的角度上資料庫不能有所變動,重構包括不同種類:結構重構、資料質量重構、參照完整性重構、架構重構、方法重構和轉換。 二者最本質的區別就是重組不涉及模式的變更,而重構是對模式的簡單變更但保持原有需求不便。而且重組不涉及任何程式碼重構,而對模式的變更卻要求做相應的程式碼重構,以實現原有功能的不變。 聯絡:重構一定會重組,但重組不一定會重構。