mirror of
https://github.com/Vonng/ddia.git
synced 2024-12-06 15:20:12 +08:00
fix a zh-tw translation issue found by @skyran1278
This commit is contained in:
parent
d1d526e40e
commit
f3d854627b
@ -10,6 +10,7 @@ def convert(src_path, dst_path, cfg='s2twp.json'):
|
||||
.replace('髮布', '釋出')
|
||||
.replace('髮生', '發生')
|
||||
.replace('髮出', '發出')
|
||||
.replace('嚐試', '嘗試')
|
||||
for line in src))
|
||||
print("convert %s to %s" % (src_path, dst_path))
|
||||
|
||||
|
@ -182,7 +182,7 @@ $ cat database
|
||||
|
||||
* 有新寫入時,將其新增到記憶體中的平衡樹資料結構(例如紅黑樹)。這個記憶體樹有時被稱為 **記憶體表(memtable)**。
|
||||
* 當 **記憶體表** 大於某個閾值(通常為幾兆位元組)時,將其作為 SSTable 檔案寫入硬碟。這可以高效地完成,因為樹已經維護了按鍵排序的鍵值對。新的 SSTable 檔案將成為資料庫中最新的段。當該 SSTable 被寫入硬碟時,新的寫入可以在一個新的記憶體表例項上繼續進行。
|
||||
* 收到讀取請求時,首先嚐試在記憶體表中找到對應的鍵,如果沒有就在最近的硬碟段中尋找,如果還沒有就在下一個較舊的段中繼續尋找,以此類推。
|
||||
* 收到讀取請求時,首先嘗試在記憶體表中找到對應的鍵,如果沒有就在最近的硬碟段中尋找,如果還沒有就在下一個較舊的段中繼續尋找,以此類推。
|
||||
* 時不時地,在後臺執行一個合併和壓縮過程,以合併段檔案並將已覆蓋或已刪除的值丟棄掉。
|
||||
|
||||
這個方案效果很好。它只會遇到一個問題:如果資料庫崩潰,則最近的寫入(在記憶體表中,但尚未寫入硬碟)將丟失。為了避免這個問題,我們可以在硬碟上儲存一個單獨的日誌,每個寫入都會立即被追加到這個日誌上,就像在前面的章節中所描述的那樣。這個日誌沒有按排序順序,但這並不重要,因為它的唯一目的是在崩潰後恢復記憶體表。每當記憶體表寫出到 SSTable 時,相應的日誌都可以被丟棄。
|
||||
|
Loading…
Reference in New Issue
Block a user