[发明专利]分布式KV数据库的数据读写方法、系统、设备和介质有效
| 申请号: | 202110475497.2 | 申请日: | 2021-04-29 |
| 公开(公告)号: | CN113190619B | 公开(公告)日: | 2022-12-27 |
| 发明(设计)人: | 蔡军;方然;宋昊霖 | 申请(专利权)人: | 优刻得科技股份有限公司 |
| 主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/21;G06F16/176 |
| 代理公司: | 上海华诚知识产权代理有限公司 31300 | 代理人: | 崔巍 |
| 地址: | 200090 上海市杨浦*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 分布式 kv 数据库 数据 读写 方法 系统 设备 介质 | ||
1.一种分布式KV数据库的数据读写方法,其特征在于,包括:
接收用户的写入请求,通过主数据库,以追加写的方式将相应数据写入远程的分布式文件系统;
接收用户的读出请求,根据数据库服务压力情况,从所述主数据库和至少一个从数据库中选取一个数据库,当选取的所述数据库为所述主数据库时,从所述分布式文件系统读出相应数据,当选取的所述数据库为所述从数据库时,从所述分布式文件系统中,读取所述数据的一个副本,同时查询所述数据的其它所有副本的长度,如果所述数据的预定数量的副本的长度一致,则将所述数据判定为有效数据并读出,否则将所述数据判定为异常数据而不读出。
2.根据权利要求1所述的方法,其特征在于,所述分布式文件系统包括:
多个数据块服务,每个所述数据块服务对应一个物理存储器,在所述数据块服务中,数据以数据块的形式存储,每个数据的多个副本分别存储于多个所述数据块服务;
元数据服务,用于存放所述多个数据块服务中的数据的元数据信息,所述元数据信息包括数据的数据块信息;
客户端服务,所述客户端服务包括Crush算法和存储引擎,用于在所述数据库通过所述客户端服务进行数据读写时,从所述元数据服务获取所述数据块信息,以确定所述数据块位于哪个所述数据块服务。
3.根据权利要求1所述的方法,其特征在于,每个所述数据库启动时,都作为所述从数据库启动,当没有所述主数据库或所述主数据库故障时,根据所述从数据库的注册成为所述主数据库的请求,确定一个所述从数据库成为新的所述主数据库。
4.根据权利要求3所述的方法,其特征在于,对所述从数据库的注册成为所述主数据库的请求的响应包括:
响应于所述从数据库注册分布式协调系统的节点的请求,根据预定条件确定是否注册成功;
如果注册成功,响应于所述从数据库获取分布式文件锁的请求,将所述分布式文件锁分配给所述从数据库,所述从数据库成为新的所述主数据库,其中,所述分布式文件锁只有一个;
如果注册不成功,所述从数据库保持从数据库身份不变。
5.根据权利要求4所述的方法,其特征在于,所述响应于所述从数据库获取分布式文件锁的请求,将所述分布式文件锁分配给所述从数据库包括:
响应于所述从数据库获取分布式文件锁的请求,如果当时所述分布式文件锁为其他所述数据库所有,则从所述其他数据库处释放所述分布式文件锁,然后将释放出来的所述分布式文件锁分配给请求所述分布式文件锁的所述从数据库。
6.根据权利要求4所述的方法,其特征在于,还包括,当所述主数据库不能够进行追加写操作的情况下,从其他数据库处释放所述分布式文件锁,然后将释放出来的所述分布式文件锁分配给所述主数据库;
当所述主数据库失去所述分布式协调系统的节点时,从所述主数据库处释放所述分布式文件锁,并且所述主数据库转变为所述从数据库。
7.根据权利要求5或6所述的方法,其特征在于,所述数据块包括正常状态和封闭状态,当处于所述正常状态时,所述数据块可以被写入和读取,当处于所述封闭状态时,所述数据块可以被读取而不能被写入。
8.根据权利要求7所述的方法,其特征在于,所述释放所述分布式文件锁包括:
通过将所述分布式文件锁正在操作的所述数据块设置为所述封闭状态,使得拥有所述分布式文件锁的所述数据库因写入数据失败而失去所述分布式文件锁。
9.根据权利要求1所述的方法,其特征在于,所述数据库为RocksDB。
10.根据权利要求9所述的方法,其特征在于,所述数据库使用RDMA或TCP网络通信,使用SPDK或libio磁盘读写模式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于优刻得科技股份有限公司,未经优刻得科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110475497.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种水土压力监测预警装置
- 下一篇:中国桔整体开发利用的技术工艺
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





