MongoDB日志是如何工作的-創(chuàng)新互聯(lián)

MongoDB日志是如何工作的,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)專注于石城企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計,電子商務(wù)商城網(wǎng)站建設(shè)。石城網(wǎng)站建設(shè)公司,為石城等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站制作,專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

Good idea, Patrick!

那么, MongoDB日志是如何工作的呢?

我們用下圖表示硬盤上的數(shù)據(jù)文件和日志文件:

MongoDB日志是如何工作的

當(dāng)你使用mongod啟動MongoDB的時候,數(shù)據(jù)文件將被加載到共享視圖?;旧?,操作系統(tǒng)說:“OK,你的數(shù)據(jù)占用2,000bytes的磁盤空間,我將加載他們到內(nèi)存地址為1,000,000-1,002,000.所以,如果你讀內(nèi)存地址為1,000,042,你就可以獲取這個文件的第42個byte的數(shù)據(jù)?!保ㄆ鋵?,除非你真的存取這些內(nèi)存地址,否則這些數(shù)據(jù)沒必要加載)

MongoDB日志是如何工作的

這段內(nèi)存仍然被這個數(shù)據(jù)文件占有:如果你在這段內(nèi)存中做修改,操作系統(tǒng)將刷新這個文件,修改數(shù)據(jù)。這就是mongod不開啟日志的工作方式:進(jìn)程每60秒通知操作系統(tǒng)對這段內(nèi)存做flush操作。

然而,啟用日志,mongod會建立另一個內(nèi)存映射用作私有視圖。這就是為什么需要分配兩倍于mongod所占內(nèi)存的內(nèi)存量給日志操作的原因。

MongoDB日志是如何工作的

需要注意的是私有視圖不直接關(guān)聯(lián)到數(shù)據(jù)文件,所用操作系統(tǒng)不能通過刷新私有視圖來寫數(shù)據(jù)到磁盤。

現(xiàn)在,當(dāng)你有一個寫操作,mongod進(jìn)程就把這個操作寫到私有視圖。

MongoDB日志是如何工作的

mongod進(jìn)程會把這個操作寫到日志文件,并描述哪個文件的哪個字節(jié)有修改。

MongoDB日志是如何工作的

日志記錄每一個修改操作。

MongoDB日志是如何工作的

這個時候,寫操作是安全的。如果mongod進(jìn)程崩潰,日志可以重現(xiàn)此次修改,即使還沒有對數(shù)據(jù)文件做更新操作。

MongoDB日志是如何工作的

然后,mongod進(jìn)程重新將共享視圖映射到私有視圖,這樣可以防止私有視圖過于“dirty”(相對于映射過來的共享視圖有太多的修改)。

MongoDB日志是如何工作的

最后,經(jīng)過一系列漫長的驗證,共享視圖數(shù)據(jù)將會被刷新到磁盤。默認(rèn)情況下,mongod每60秒對OS請求一次刷新操作。

And that’s how journaling works. Thanks to Richard, who gave the best explanation of this I’ve heard (Richard is going to be teaching an online course on MongoDB this fall, if you’re interested in more wisdom from the source).

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)站標(biāo)題:MongoDB日志是如何工作的-創(chuàng)新互聯(lián)
本文地址:http://muchs.cn/article10/dhesgo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、App設(shè)計、網(wǎng)站收錄、關(guān)鍵詞優(yōu)化、App開發(fā)、做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作