精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

新一代的鍵值存儲 KVell · SOSP 2019

存儲 存儲軟件
本文要介紹的是 2019 年 SOSP 期刊中的論文 —— KVell: the Design and Implementation of a Fast Persistent Key-Value Store[^1],該論文實現的 KVell 是為現代 SSD 開發的鍵值存儲系統,與使用 LSM 樹或者 B 樹的主流鍵值存儲不同,KVell 為了充分利用新設備的性能并降低 CPU 的開銷使用了完全不同的設計。

 [[350070]]

本文要介紹的是 2019 年 SOSP 期刊中的論文 —— KVell: the Design and Implementation of a Fast Persistent Key-Value Store[^1],該論文實現的 KVell 是為現代 SSD 開發的鍵值存儲系統,與使用 LSM 樹(Log-structured merge-tree)或者 B 樹的主流鍵值存儲不同,KVell 為了充分利用新設備的性能并降低 CPU 的開銷使用了完全不同的設計。

作為軟件工程師,我們直接與硬件打交道的概率其實很少,大多數時間都會通過操作系統以和 POSIX 間接操作不同的硬件。雖然看起來過去 10 年磁盤等存儲硬件的演變與更新非常緩慢,但是實際上:

  • 磁盤遠比 10 年前要快得多;
  • 磁盤的隨機和順序 I/O 性能差距變小;

圖 1 - 磁盤的演進[^2]

磁盤性能和特性的演進使得在過去很多鍵值存儲成立的設計變得無效,例如:隨機 I/O 的速度遠遠慢于順序 I/O,很多數據庫為了減少隨機 I/O 的次數會使用特定的數據結構并犧牲一些 CPU 計算資源,但是在最新的硬件上已經沒有太多的必要了。

KVell 的論文中不止提到了目前主流鍵值存儲在新存儲設備上各種問題,還給出了最新的設計原則、實現方式以及對性能的評估。我們在這里不會面面俱到的介紹論文中全部的內容,主要會分析主流鍵值存儲的問題以及最新的設計原則,其余的內容各位讀者可以在論文中自行探索。

實現問題

目前的大多數的鍵值存儲系統都會使用 LSM 樹或者 B 樹作為主要的數據結構存儲數據,這兩種不同的數據結構適合用于不同類型的工作負載:

LSM 樹:適合寫密集型的負載;

B 樹:適合讀密集型的負載;

圖 2 - LSM 和 B 樹

RocksDB 和 Cassandra 等數據庫都使用 LSM 樹,而 MongoDB 以及其他的數據庫都會使用 B 樹和它的變種。雖然這兩者設計在過去都有著優異的表現,不過這兩種設計在 NVMe SSD 這種較新的硬件上表現地并不好,CPU 成為了瓶頸并導致嚴重的性能波動。

LSM 樹

LSM 樹是為寫密集型負載特別優化的數據結構,在 LSM 樹中,我們使用內存緩存接收所有的寫操作并將變更批量寫入磁盤,內存緩存中的數據會被后臺線程合并到持久存儲里的樹形結構中。

圖 3 - LSM 樹

磁盤中的數據結構包含多個層級,每個層級都會包含多個不可變的、排序后的文件,同一個層級中文件的鍵范圍也不會有重疊。為了保證上述特性,LSM 引入了 CPU 和 I/O 密集的操作 — 壓縮,如上圖所示,壓縮會將多個低層級的文件合并成更高層級的文件,保證鍵值對的順序并刪掉其中重復的鍵。這也使得 CPU 在新的存儲設備上已經成為 LSM 樹的主要瓶頸,這種設計讓我們在舊設備上花費 CPU 時間保證數據的順序并降低掃描操作順序訪問磁盤時的延遲。

除了 CPU 成為瓶頸之外,使用 LSM 樹的鍵值存儲的負載在數據壓縮時會受到顯著的影響,論文中的數據表示 RocksDB 在壓縮期間的性能可能會降低一個數量級,雖然有一些技術可以緩解數據壓縮的影響,但是這些方法在高端的 SSD 上卻并不適用。

B 樹

B+ 樹只在葉節點存儲鍵值對數據,內部的節點只包含用于路由的鍵,每個葉節點都包含一組排序后的鍵值對,所有的葉節點會組成方便掃描的鏈表。最先進的 B+ 樹為了實現優異的性能都會依賴緩存,大多數的寫操作也都會先寫入提交日志再寫入緩存,當緩存中的數據被驅逐時,B+ 樹中的信息才會被更新。

圖 4 - B 樹

B+ 樹中有兩種操作可以持久化其中的數據,也就是檢查點(Checkpoint)和驅逐(Eviction);其中,前者是按照固定頻率觸發的,當日志的大小達到了特定的閾值后才會觸發,這樣可以保證提交日志的大小在固定范圍內,而驅逐會從緩存向樹中寫入臟數據,它也會在緩存達到特定閾值時觸發寫入。

這種設計更容易受到同步(Synchronization)額外開銷的影響,論文在測試中發現只有 18% 的時間用于處理客戶端的請求,而其他時間都用于不同的等待,內核中 75% 的時間都在等待 futex 和 yield 等函數調用。

當內存中數據的驅逐不能快速完成時,B 樹的性能也會受到影響,論文中的數據表示 WiredTiger 的吞吐量會在延遲期間從 120 Kops/s 降低到 8.5Kops/s,這種巨大的影響持續幾秒鐘的時間才會恢復。

設計原則

為了利用新存儲設備的特性并減少鍵值存儲的 CPU 開銷,我們在現代 SSD 上開發的 KVell 會遵循如下所示的設計原則提高鍵值存儲的性能:

  • 不共享數據:所有的數據結構都分片存儲在不同的 CPU 上,所有的 CPU 也就不需要在執行計算時同步數據;
  • 磁盤中的數據不排序、內存中的索引排序:在磁盤上存儲未經排序的數據,避免昂貴的重排操作;
  • 減少系統調用、而不是順序 I/O:因為現代 SSD 上的隨機 I/O 和順序 I/O 有著相似的性能,所以減少批處理 I/O 能夠降低 CPU 的額外開銷;
  • 不需要提交日志:不在內存中緩存數據的更新,避免不必要的 I/O 操作;

不共享數據

在多線程的軟件系統中,稍微有常識的人都知道不同線程之間同步數據會對性能帶來比較大的影響,讓多個線程之間不共享數據就可以避免上述的同步開銷,減少線程等待帶來的性能損失。

圖 5 - 不共享數據的設計

為了實現這一目標,KVell 的每個線程都會處理一組特定鍵的操作并維護這些鍵相關的私有數據結構:

  1. 輕量級的、內存中的 B 樹索引 — 存儲了鍵在持久存儲的位置;
  2. I/O 隊列 — 負責從持久存儲中快速讀取或者寫入數據;
  3. 空閑列表 — 內存中的用于存儲鍵值對的硬盤塊;
  4. 頁面緩存 — 使用內部的頁面緩存,不依賴于操作系統;

鍵值存儲的大多數操作都只是對單個鍵的增刪改查,這些操作都不需要多線程之間的數據同步,只有遍歷鍵值的掃描才需要不同線程之間同步內存中的 B 樹索引。

磁盤不排序

因為 KVell 不會在磁盤上按照順序排序數據,所以鍵值對在磁盤中初始位置就是它的最終位置,這種不排序的方式不僅可以減少插入項目的額外開銷,而且可以消除磁盤維護操作帶來的 CPU 開銷。

無序的鍵值對雖然可以降低寫操作的開銷,但是也會影響掃描時的性能,不過根據論文中的測試,掃描的操作在遇到中等大小的負載以及大鍵值對時不會被明顯地影響,所以這個結果在多數情況下是可以接受的。

減少系統調用

在 KVell 中,所有的操作都會在磁盤中執行隨機的讀寫,所以它不會浪費 CPU 時間將隨機 I/O 轉換成順序 I/O。與 LSM 鍵值對類似,KVell 會將 I/O 請求批量轉發給磁盤,它的主要目的是減少系統調用的次數,即 CPU 的額外開銷。有效地鍵值存儲應該向磁盤發出足夠的請求保證磁盤擁有足夠的工作,但是不應該發出過多的工作影響磁盤的性能并帶來較高的延遲。

移除提交日志

KVell 不會依賴提交日志決定數據是否被系統持久化,它只會在更新寫入到磁盤的最終位置時確認更新,一旦更新被工作線程提交,它會在下一批 I/O 請求中處理。提交日志的作用其實是將隨機 I/O 變成順序 I/O,解決崩潰帶來的一致性影響,但是因為今天的隨機 I/O 與順序 I/O 已經有著類似的性能,所以提交日志在鍵值存儲中已經失去了過去的作用,移除提交日志可以減少磁盤帶寬的占用。

總結

KVell 作為基于最新硬件的鍵值存儲系統,它在特定場景下有著非常優異的性能表現,論文中給出了它與主流的鍵值存儲在不同負載下的吞吐量對比,其中 YCSB A、YCSB B、YCSB C 和 YCSDN E 分別是寫密集型、讀密集型、只讀和掃描密集型地任務,從中我們可以看出,在除了掃描密集型地任務之外的其他負載中,KVell 的表現都遠好于 RocksDB 等主流鍵值存儲:

圖 6 - KVell 吞吐量對比

作為軟件工程師,雖然說操作系統為我們提供了操作硬件的標準接口,使得我們不用于硬件直接接觸,可以將更多的精力放到軟件上,但是我們仍然要時刻牢記硬件對軟件系統的諸多影響和限制并用發展的眼光看待硬件的進步,也只有軟硬件結合才能帶來極致的性能。

本文轉載自微信公眾號「真沒什么邏輯」,可以通過以下二維碼關注。轉載本文請聯系真沒什么邏輯公眾號。

 

責任編輯:武曉燕 來源: 真沒什么邏輯
相關推薦

2025-03-17 10:38:30

2009-03-11 13:02:20

存儲虛擬化數據中心

2017-10-19 16:21:02

SCM存儲技術

2018-03-29 15:50:48

華為

2015-06-23 15:46:56

高端存儲濟南華為

2015-07-31 15:14:44

OceanStor 1華為

2024-03-06 11:30:55

PowerScale戴爾科技

2017-05-15 08:56:05

NVMeTier 0存儲

2010-02-07 15:50:33

Android手機

2009-09-02 16:10:40

ADSL技術

2013-01-04 16:15:08

微軟ERPDynamics AX

2015-05-06 15:51:09

OceanStor 1新一代高端存儲系統華為

2012-07-02 10:36:19

菲亞特

2022-03-10 16:01:29

Playwright開源

2011-08-24 11:52:47

戴爾

2024-05-06 07:39:30

CubeFS云原生存儲平臺

2016-01-26 11:58:12

2012-07-25 13:19:16

ibmdw

2024-01-23 12:27:15

2014-05-15 13:40:43

在線重刪存儲華為
點贊
收藏

51CTO技術棧公眾號

久久综合给合久久狠狠色| 亚洲欧美日韩国产手机在线| 日本免费一区二区三区视频观看| 女性生殖扒开酷刑vk| 青春草免费在线视频| 国产成人av一区二区三区在线| 久久高清视频免费| 国产精品无码午夜福利| 9999精品| 精品福利在线看| 在线观看日本一区| 国产成人精品一区二三区四区五区| 亚洲视频狠狠| 综合网中文字幕| 玖玖爱视频在线| 狼人综合视频| 综合色中文字幕| 久久国产精品久久| 99热这里只有精品99| 久久精品动漫| 久久久久五月天| 日韩在线一卡二卡| 国产aⅴ精品一区二区三区久久| 欧美一区二区三区免费视频| 50路60路老熟妇啪啪| 特级毛片在线| 国产婷婷色一区二区三区在线| 成人黄色在线免费观看| 一二区在线观看| 国产亚洲精品自拍| 最近2019免费中文字幕视频三| www.色天使| 韩国女主播一区二区三区| 欧美日韩精品一区二区三区 | 99国产精品私拍| 久热99视频在线观看| 黄色三级生活片| 国产精品极品在线观看| 欧美肥胖老妇做爰| 污版视频在线观看| 日韩一级二级 | 久久久久久美女| 日日噜噜夜夜狠狠久久波多野| 神马香蕉久久| 日韩电影网在线| 亚洲久久久久久| 国内毛片久久| 日韩电视剧免费观看网站| 一级黄色片毛片| av成人综合| 日韩三级精品电影久久久| www激情五月| 日本在线精品| 欧美日韩一区二区三区视频| 午夜免费福利在线| 日韩一区精品| 欧美日韩国产大片| 成年人黄色片视频| 日本中文字幕一区二区| 欧美三级一区二区| 波多野结衣国产精品| 男女羞羞在线观看| 一本大道久久a久久精品综合| 欧美 丝袜 自拍 制服 另类| 高清在线视频不卡| 中文字幕亚洲一区二区av在线 | 欧美日韩在线视频免费观看| 日韩美女视频一区| 亚洲欧美日韩精品综合在线观看| 亚洲s色大片| 国产精品久久久久影视| 亚洲女人毛片| 日本美女在线中文版| 国产精品国产成人国产三级| 亚洲高清在线观看一区| 在线免费av电影| 亚洲精品乱码久久久久久黑人 | 亚洲国产日韩欧美在线图片| 中文字幕无码人妻少妇免费| 亚洲警察之高压线| 中文字幕综合一区| 青春草免费视频| 亚洲永久免费精品| 国产精品都在这里| 6—12呦国产精品| 成人免费av在线| 欧美日韩在线高清| 国产网站在线播放| 一区二区三区欧美日韩| 亚洲色成人www永久在线观看| 6699嫩草久久久精品影院| 欧美视频13p| 亚洲老女人av| 国产一区二区三区不卡av| 亚洲香蕉成视频在线观看| 成年人一级黄色片| 久久国产高清| 91aaaa| 中文字字幕在线中文| 久久99精品国产麻豆婷婷| 99久久无色码| 毛片在线免费| 亚洲精品国产成人久久av盗摄 | 欧美日韩在线一二三| 免费**毛片在线| 福利视频导航一区| 涩涩网站在线看| 亚洲精品无吗| 欧美大片免费观看| 怡春院在线视频| 国产不卡视频在线播放| 亚洲免费视频一区| www.日韩| 精品国产乱码久久久久久免费| 毛片视频免费播放| 老司机一区二区三区| 成人午夜在线观看| 青青久在线视频| 亚洲国产人成综合网站| 日韩精品aaa| 全球成人免费直播| 欧美性视频在线| 免费a级片在线观看| 久久奇米777| japanese在线播放| 少妇高潮一区二区三区99| 国产亚洲日本欧美韩国| 亚洲伊人成人网| 高清不卡一区二区| 国产专区在线视频| 国产精品亚洲一区二区在线观看| 影音先锋日韩有码| 99精品在线播放| 99精品国产视频| 黄色激情在线视频| 一区二区三区在线免费看| 国产一区二区日韩| 无码人妻丰满熟妇精品区| 91啪亚洲精品| 国产二级片在线观看| 国产成人精品亚洲线观看| 欧美日本中文字幕| 国产老妇伦国产熟女老妇视频| 欧美激情综合在线| 91香蕉视频导航| 成人免费在线播放| 2019亚洲日韩新视频| 色婷婷激情五月| 精品福利樱桃av导航| 强迫凌虐淫辱の牝奴在线观看| 亚洲天堂偷拍| 国产精品夜色7777狼人| 1024视频在线| 精品视频一区二区三区免费| 亚洲第一综合网| 麻豆视频一区二区| 在线视频91| 精品国产亚洲一区二区三区大结局| 久久精品国产欧美激情| www.av日韩| 亚洲成av人片一区二区梦乃| theporn国产精品| 欧美激情第8页| 国产精品亚洲综合| 国产蜜臀av在线播放| 精品国产乱码久久久久久影片| 日本一级特级毛片视频| 国产精品主播直播| 波多野结衣av一区二区全免费观看| 主播大秀视频在线观看一区二区| 久久精品人人做人人爽| 亚洲国产成人在线观看| 精品久久久久久国产91| 国产又黄又粗视频| 国产在线观看一区二区| 国产精品裸体瑜伽视频| 欧美美女黄色| 国产有码一区二区| 26uuu亚洲电影在线观看| 亚洲经典中文字幕| 五月婷婷激情视频| 成人欧美一区二区三区小说| 日本久久久久久久久久| 亚洲国产精品一区| 天天综合色天天综合色hd| 日韩精品成人在线观看| 91精品国产乱码久久久久久久久 | 日韩在线高清| 亚洲伊人久久大香线蕉av| 九色porny视频在线观看| 亚洲人成网在线播放| 老熟妇仑乱一区二区av| 亚洲欧洲日韩女同| 波多野结衣先锋影音| 狠狠色综合日日| 一本大道熟女人妻中文字幕在线 | 日韩美女在线| 国模精品视频一区二区| 9i精品一二三区| 精品国产a毛片| 中文字幕有码视频| 精品久久久久久久久中文字幕 | 国产精品欧美亚洲777777| 成人在线免费观看| 亚洲第一区在线| 国产影视一区二区| 色婷婷综合中文久久一本| 黄色片在线观看网站| 欧美激情一区二区三区不卡 | 欧美国产激情一区二区三区蜜月| 亚洲911精品成人18网站| 男女视频一区二区| www.激情网| 天堂美国久久| 极品校花啪啪激情久久| 经典三级久久| 午夜精品蜜臀一区二区三区免费 | 国产欧美va欧美va香蕉在| 波多野结衣在线播放| 精品国产一区av| h视频在线播放| 精品爽片免费看久久| 97在线公开视频| 疯狂蹂躏欧美一区二区精品| 久久久久久久久久久97| 亚洲四区在线观看| 欧美aaa级片| 国产女主播视频一区二区| 欧美 日本 国产| 波多野结衣在线aⅴ中文字幕不卡| 亚洲综合日韩欧美| 国产免费成人| 欧美 日本 亚洲| 亚洲另类黄色| 欧美一级爱爱视频| 韩日精品视频| 日韩黄色片在线| 欧美伊人影院| 欧美在线观看黄| 红桃视频亚洲| 青青青青草视频| 激情综合在线| 99热都是精品| 91成人精品视频| 亚洲一区三区| 羞羞答答成人影院www| 一区二区三区四区欧美日韩| 99久久精品费精品国产| 一区二区三区在线观看www| 91亚洲国产| 午夜午夜精品一区二区三区文| 激情视频极品美女日韩| 国产精品精品软件视频| 欧美午夜网站| 日本精品久久久| 欧美日韩五码| 国产精品久久久久免费a∨| 成人免费影院| 国产精品视频xxx| 伊人久久综合网另类网站| 亚洲xxxxx| 精品视频一区二区三区| 亚洲伊人久久大香线蕉av| 超碰在线一区| 鲁片一区二区三区| 成人精品电影| 亚洲日本精品一区| 欧美精选一区| 妞干网在线播放| 亚洲中午字幕| 国产一级做a爰片久久| 国产在线播放一区| 亚洲 自拍 另类 欧美 丝袜| 不卡影院免费观看| 三上悠亚ssⅰn939无码播放| 国产亚洲精品aa午夜观看| 人人澡人人澡人人看| 亚洲午夜精品一区二区三区他趣| 国产三级av片| 在线一区二区三区四区| 无码日韩精品一区二区| 欧美日韩一区小说| 成人福利小视频| 亚洲护士老师的毛茸茸最新章节| 国产三区四区在线观看| 久热国产精品视频| www欧美xxxx| 国产精品青青在线观看爽香蕉| 国产色99精品9i| 国产综合精品一区二区三区| 久操国产精品| 午夜精品视频在线观看一区二区| 欧美精品一卡| 亚洲美女爱爱视频| 国产一本一道久久香蕉| 国产精品扒开腿做爽爽爽a片唱戏| 国产区在线观看成人精品| 免费成人美女女在线观看| 亚洲电影第三页| 一起草av在线| 日韩精品极品在线观看| www久久日com| 国产精品成人av在线| 精品福利网址导航| 天天成人综合网| 国产欧美精品久久| 成年人看片网站| 中文字幕视频一区| 亚洲无码精品一区二区三区| 日韩免费一区二区三区在线播放| 免费在线视频一级不卡| 久久久亚洲网站| jizz欧美| 欧洲成人一区二区| 亚洲国产影院| 精品无码av一区二区三区不卡| 国产欧美一区二区三区网站| 日韩无码精品一区二区三区| 91精品黄色片免费大全| yiren22综合网成人| 欧美专区中文字幕| 精品久久国产一区| 中文视频一区视频二区视频三区| 三级在线观看一区二区 | 欧美亚洲另类小说| 亚洲精品福利免费在线观看| 日本高清在线观看| 91久久国产精品| 成人毛片在线| 性刺激的欧美三级视频| 91蝌蚪porny成人天涯| 日本网站免费观看| 欧美一区二区在线视频| 91啦中文在线| 国产精品直播网红| 国产一区二区三区不卡视频网站| 天天夜碰日日摸日日澡性色av| 国产黑丝在线一区二区三区| 国产在线一卡二卡| 91精品国产全国免费观看| a视频在线观看| 91午夜理伦私人影院| 在线国产一区| 欧洲在线免费视频| 亚洲精品久久嫩草网站秘色| 国产免费高清av| 九九热这里只有精品免费看| 欧美影院视频| 免费看欧美黑人毛片| 国产超碰在线一区| 国产精品xxxx喷水欧美| 精品亚洲国产视频| 3d性欧美动漫精品xxxx软件| 久久久久久久久久久久久久一区| 鲁大师影院一区二区三区| 天天躁日日躁狠狠躁av麻豆男男| 亚洲不卡一区二区三区| 无码国产伦一区二区三区视频 | 久久精品国产成人精品| 91九色美女在线视频| 国严精品久久久久久亚洲影视| 好吊日精品视频| 日韩人妻一区二区三区| 欧美视频免费在线观看| 国产又色又爽又黄又免费| 欧美成人在线网站| 丝袜老师在线| 日韩在线导航| 国产精品一二三四| www日韩精品| 在线播放日韩av| 成人污污视频| 国产精品无码电影在线观看| 99久久精品免费| 久久精品五月天| 久久深夜福利免费观看| 精品精品国产毛片在线看| 久久精品网站视频| 国产精品乱人伦一区二区| 亚洲图片小说视频| 欧美成人午夜剧场免费观看| 欧美调教在线| 两根大肉大捧一进一出好爽视频| 欧美激情一区二区三区全黄| www.国产欧美| 国产精品678| 狠狠综合久久| 国产精品综合激情| 日韩一区二区在线观看| 日韩欧美看国产| 一区二区在线不卡| 91香蕉视频污在线| 国产内射老熟女aaaa∵| 欧美激情第一页xxx| 日韩精品诱惑一区?区三区| 日本人妻一区二区三区| 欧美视频一区在线| 激情黄产视频在线免费观看| 色播五月综合| 99久久免费精品高清特色大片|