[发明专利]一种RocksDB数据库数据写入方法及RocksDB数据库在审
| 申请号: | 201911422981.8 | 申请日: | 2019-12-31 |
| 公开(公告)号: | CN111221922A | 公开(公告)日: | 2020-06-02 |
| 发明(设计)人: | 王晓飞 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
| 主分类号: | G06F16/28 | 分类号: | G06F16/28;G06F3/06 |
| 代理公司: | 济南诚智商标专利事务所有限公司 37105 | 代理人: | 王申雨 |
| 地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 rocksdb 数据库 数据 写入 方法 | ||
本发明公开了一种RocksDB数据库数据写入方法,包括:数据以日志形式写入磁盘,以memtable形式写入内存;当memtable的数据大小超过阈值时,将该memtable保存为只读memtable,新建memtable写入新数据;当只读memtable数量超过阈值时,将只读memtable合并,以SST文件形式写入非易失性内存;当非易失性内存中的SST文件数量超过阈值时,将非易失性内存中的SST文件合并写入磁盘阵列。本发明还公开了一种RocksDB数据库,包括磁盘、内存、非易失性内存和磁盘阵列;通过将level0存储设置为非易失性内存,既保证了level0数据的非易失性和内存级的读写速率,又保证了level0向level1写入数据时不会有较大的读写带宽差距,从而提升RocksDB读写性能。
技术领域
本发明涉及数据库领域,具体涉及一种RocksDB数据库数据写入方法及RocksDB数据库。
背景技术
RocksDB是一种使用一套日志结构的数据库引擎,为了更好的性能,这套引擎采用C++编写,用来存储key和value,Key和value是任意大小的字节流,为快速而又低延迟的存储设备(例如闪存或者高速硬盘)而特殊优化处理。RocksDB能最大限度地发挥闪存和内存的高速率读写性能。
数据写入时,先后经过磁盘、内存,最后在硬盘中存储。目前常用的硬盘存储介质是SSD,其读写性能与内存相比差距非常大,因此数据从内存写入硬盘时,由于硬盘读写速率慢,会出现写入速率降低的问题。
发明内容
为了解决上述技术问题,本发明提出了一种RocksDB数据库数据写入方法及RocksDB数据库,能够提高RocksDB从内存向硬盘写入时的写入速率,提升RocksDB读写性能。
为实现上述目的,本发明采用以下技术方案:
一种RocksDB数据库数据写入方法,包括:
数据以日志形式写入磁盘,以memtable形式写入内存;
当memtable的数据大小超过阈值时,将该memtable保存为只读memtable,新建memtable写入新数据;
当只读memtable数量超过阈值时,将只读memtable合并,以SST文件形式写入非易失性内存;
当非易失性内存中的SST文件数量超过阈值时,将非易失性内存中的SST文件合并写入磁盘阵列。
进一步地,非易失性内存中的SST文件合并写入磁盘阵列后,将非易失性内存中的数据删除。
进一步地,所述磁盘阵列包括若干层level1-leveln,非易失性内存中的SST文件合并写入磁盘阵列的第一层level1;当磁盘阵列的第m层中的SST文件数量超过阈值时,将第m层levelm中的SST文件写入第m+1层levelm+1,其中,mn。
进一步地,所述磁盘阵列的level1-leveln分别包括若干个硬盘,所述将第m层levelm中的SST文件写入第m+1层levelm+1的写入操作多线程执行。
本发明还提出了一种RocksDB数据库,包括磁盘、内存、非易失性内存和磁盘阵列;
所述磁盘用于存储并传递日志形式的数据,数据传递至内存;
所述内存用于存储并传递memtable形式的数据,数据传递至非易失性内存;
所述非易失性内存用于存储并传递SST文件形式的数据,数据传递至磁盘阵列;
所述磁盘阵列用于存储SST文件形式的数据。
进一步地,所述磁盘阵列由若干个硬盘组成若干层level1-leveln,其中,非易失性内存传递的SST文件写入level1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911422981.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:行业云资源访问控制方法及装置
- 下一篇:一种单车自发电装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





