【数据库】SQL server 启用IFI 功能
今天早上Data warehouse 部門的人告訴我平常的Data loading時(shí)間還算正常,但是昨天晚上的loading 時(shí)間比一般平常的時(shí)間長很多,是不是數(shù)據(jù)庫有什么問題?
我仔細(xì)檢查了一下數(shù)據(jù)庫,發(fā)現(xiàn)昨天的數(shù)據(jù)檔案MDF file 已經(jīng)滿了,數(shù)據(jù)庫自動加了10GB 來增大這一個(gè)數(shù)據(jù)檔案。我又跟著進(jìn)一步檢查IFI 的設(shè)定,發(fā)現(xiàn)這個(gè)設(shè)定沒有被啟用。幾乎可以肯定這個(gè)就是問題的所在.
什么是IFI 呢?IFI 就是Instant file initialization. 當(dāng)數(shù)據(jù)庫要取得硬盤空間來擴(kuò)增數(shù)據(jù)檔案的時(shí)候,系統(tǒng)會把取得的硬盤空間一個(gè)一個(gè)的用數(shù)字0 把它填滿,稱為“zero out the disk”.如果是小小的1MB,可能不痛不癢。但如果是10 GB 或是更大的硬盤空間,那就要花一段時(shí)間來等待系統(tǒng)用數(shù)字0 填滿硬盤. 如果資料庫啟用IFI 的話,SQL server 就會省略這個(gè)zero out 的過程。相對的,數(shù)據(jù)庫就不用靜置在那里等待這個(gè)過程的完成.所以一般來講,在設(shè)定數(shù)據(jù)庫的時(shí)候,尤其是數(shù)據(jù)倉儲,都會啟用IFI 的功能。
但是啟用這個(gè)功能都沒有什么缺點(diǎn)嗎?答案是有的,會有數(shù)據(jù)安全考量的問題。因?yàn)槭÷粤藌ero out disk 的動作,所以新取得的硬盤空間不會被完全刪除干凈。有心人士是可以透過特別的方法來讀取那些原本該被刪除的資料。所以有security 的考量。但很多事情都有優(yōu)缺點(diǎn),還是需要衡量利與弊的比重,來做最佳的設(shè)定選擇。
總結(jié)
以上是生活随笔為你收集整理的【数据库】SQL server 启用IFI 功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AH快递单打印管理软件
- 下一篇: Epicor10自定义更新