[發明專利]一種內存數據庫存儲引擎管理方法有效
| 申請號: | 202110894627.6 | 申請日: | 2021-08-05 |
| 公開(公告)號: | CN113688130B | 公開(公告)日: | 2023-10-13 |
| 發明(設計)人: | 張華海 | 申請(專利權)人: | 上海沄熹科技有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/2455 |
| 代理公司: | 濟南信達專利事務所有限公司 37100 | 代理人: | 郗艷榮 |
| 地址: | 200120 上海市浦東新區中國(上海)自由貿*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 內存 數據庫 存儲 引擎 管理 方法 | ||
本發明特別涉及一種內存數據庫存儲引擎管理方法。該內存數據庫存儲引擎管理方法,基于RocksDB存儲引擎的Memtable管理機制,在Memtable內部新建ART索引用以取代skiplist索引,采用ART索引加Hash索引的雙索引機制查詢key?value,優化RocksDB存儲引擎的讀性能,從而實現RocksDB內存引擎模式,減少磁盤讀寫,提高查詢速度。該內存數據庫存儲引擎管理方法,優化了現有分布式NewSQL數據庫中基于RocksDB存儲引擎的讀性能問題,充分發揮了內存的高效讀寫性能,能夠在內存中緩存更多的數據,解決了RocksDB的讀放大問題。
技術領域
本發明涉及數據庫管理技術領域,特別涉及一種內存數據庫存儲引擎管理方法。
背景技術
近年來,隨著動態隨機存儲器(DRAM)容量的上升和單位價格的下降,使大量數據在內存中的存儲和處理成為可能。相對于磁盤,內存的數據讀寫速度要高出幾個數量級,將數據保存在內存中相比從磁盤上訪問能夠極大地提高應用的性能。
CockroachDB是一款開源的分布式數據庫,具有NoSQL對海量數據的存儲管理能力,又保持了傳統數據庫支持的ACID和SQL等,還支持跨地域、去中心、高并發、多副本強一致和高可用等特性。支持OLTP場景,同時支持輕量級OLAP場景。
CockroachDB使用RocksDB作為KV存儲引擎,RocksDB是一個高性能的Key-Value數據庫。RocksDB是基于LSM做存儲,RocksDB在內存中的結構叫做Memtable,用于形成Log-Structured的file叫做logfile,磁盤上的file結構叫做sstfile,用于記錄對file更改的log叫做manifest。
LSM存儲模型的所有寫操作都是順序寫,在稍微損失讀性能的情況下,極大地提高了數據的寫性能。換來的代價是讀性能和增加合并的開銷:RocksDB單列族的Memtable默認有64MB,超過這個大小時,寫入數據會從Memtable轉換為immutable Memtable,然后啟動后臺線程定時對寫入immutable Memtable的數據進行Compaction壓縮操作,以進行資源的回收;并將immutable Memtable加入flush pipeline,等待后臺線程去flush到SST中,導致讀放大問題,查詢一個Key值所對應的Value值,可能需要遍歷多個SSTable文件,對應了復數次隨機IO。而且空間放大,多版本數據在合并之前會占用更多的存儲空間。
為了優化現有分布式NewSQL數據庫中基于RocksDB存儲引擎的讀放大問題,優化基于ART算法的內存數據庫的讀性能問題,本發明提出了一種內存數據庫存儲引擎管理方法。
發明內容
本發明為了彌補現有技術的缺陷,提供了一種簡單高效的內存數據庫存儲引擎管理方法。
本發明是通過如下技術方案實現的:
一種內存數據庫存儲引擎管理方法,其特征在于:基于RocksDB存儲引擎的Memtable管理機制,在Memtable內部新建ART索引用以取代skiplist索引,采用ART索引加Hash索引的雙索引機制查詢key-value,優化RocksDB存儲引擎的讀性能,從而實現RocksDB內存引擎模式,減少磁盤讀寫,提高查詢速度。
該內存數據庫存儲引擎管理方法,具體實現過程如下:
1)將插入Memtable的數據轉為插入到ART算法管理的內存塊中,并將ART算法的葉節點地址加入Hash索引中;
2)修改Memtable刷盤的邏輯,使得Memtable永不轉換imMemtable,通過內存塊的形式進行刷盤,內存塊通過雙向鏈表進行管理;
3)執行查詢操作時,先從Hash表中查詢,然后查詢ART樹,最后查詢磁盤SST文件。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海沄熹科技有限公司,未經上海沄熹科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110894627.6/2.html,轉載請聲明來源鉆瓜專利網。





