一种分布式数据库的控制方法及系统技术方案

技术编号:16327339 阅读:29 留言:0更新日期:2017-09-29 19:09
本发明专利技术公开了一种分布式数据库的控制方法,所述方法包括初始化物理块设备,挂载文件系统,文件系统用于运行数据库,基于文件系统的对象创建第一类的对象,第一类为第二类的继承类,第二类为数据库的对外开发的类,将第一类的对象发送至数据库,运行数据库。挂载一个文件系统,使数据库在文件系统上运行,通过文件系统可将数据保存在物理块设备上,直接操作物理块设备,解决了冗余写的问题。

【技术实现步骤摘要】
一种分布式数据库的控制方法及系统
本专利技术涉及数据库
,更具体地说,涉及一种分布式数据库的控制方法及系统。
技术介绍
键值分布式数据库查询速度快、存放数据量大、支持高并发,非常适合通过主键进行查询。其中,Level数据库是一个谷歌实现的非常高效的键值分布式数据库,而Rocks数据库则是在Level数据库进行改进得到的产物。Rocks数据库的能够充分利用闪存的较高的每秒进行读写(I/O)操作的次数性能,同时也能利用多核服务器的计算性能,脸书目前已经在Rocks数据库的GitHub(一个面向开源及私有软件项目的托管平台)页面上发布了Rocks数据库在Fusion-io(一个做数据库的公司)服务器上的跑分基准测试结果,脸书声称其速度比谷歌的Level数据库快很多。Rocks数据库本身是基于文件系统的,不能直接操作物理块设备,但Rocks数据库将系统相关的处理抽象成Env,默认的Env是PosixEnv,直接对接本地文件系统,用户可用继承实现EnvWrapper接口,为Rocks数据库提供底层系统的封装。然而,Rocks数据库一般运行在宿主机的文件系统之上(比如XFS),存在文件系统自身的日志信息和Rocks数据库的预写日志系统的冗余写的问题。在现有技术中,并没有用于解决这个问题的技术方案。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种分布式数据库的控制方法,挂载一个文件系统,使数据库在文件系统上运行,通过文件系统可将数据保存在物理块设备上,直接操作物理块设备,解决了冗余写的问题。为实现上述目的,本专利技术提供如下技术方案:一种分布式数据库的控制方法,所述方法包括以下步骤:初始化物理块设备;挂载文件系统,所述文件系统用于运行所述数据库;基于所述文件系统的对象创建第一类的对象,所述第一类为第二类的继承类,所述第二类为所述数据库的对外开发的类;将所述第一类的对象发送至所述数据库;运行所述数据库。优选地,所述初始化物理块设备包括:格式化所述物理块设备;生成超级块的元数据信息及预写日志文件的元数据信息;生成操作符;将所述操作符存储至所述预写日志文件中;将所述超级块及所述预写日志文件存储至所述物理块设备。优选地,所述挂载文件系统包括:读取所述物理块设备中的所述超级块,基于所述超级块生成存放所述文件系统的元数据信息;基于所述存放所述文件系统的元数据信息读取所述预写日志文件;基于所述预写日志文件及所述操作符生成目录的元数据及文件的元数据;加载所述目录的元数据及所述文件的元数据;建立所述预写日志文件的对象。优选地,基于所述存放所述文件系统的元数据信息读取所述预写日志文件包括:基于所述存放所述文件系统的元数据信息中的偏移量、长度及所在逻辑快设备读取所述预写日志文件。一种分布式数据库的控制装置,所述控制装置包括系统处理器、物理块管理装置及运行处理器,其中:所述物理块管理装置及所述系统处理器初始化物理块设备;所述物理块管理装置及所述系统处理器挂载文件系统,所述文件系统用于运行所述数据库;所述系统处理器基于所述文件系统的对象创建第一类的对象,所述第一类为第二类的继承类,所述第二类为所述数据库的对外开发的类;所述运行处理器将所述第一类的对象发送至所述数据库;所述系统处理器及所述运行处理器运行所述数据库。优选地,所述物理块管理装置包括空间管理处理器及读写处理器;所述初始化物理块设备包括:所述空间管理处理器格式化所述物理块设备;所述系统处理器生成超级块的元数据信息及预写日志文件的元数据信息;所述系统处理器生成操作符;所述系统处理器将所述操作符存储至所述预写日志文件中;所述读写处理器将所述超级块及所述预写日志文件存储至所述物理块设备。优选地,所述物理块管理装置包括空间管理处理器及读写处理器;所述挂载文件系统包括:所述读写处理器读取所述物理块设备中的所述超级块,所述系统处理器基于所述超级块生成存放所述文件系统的元数据信息;所述读写处理器基于所述存放所述文件系统的元数据信息读取所述预写日志文件;所述系统处理器基于所述预写日志文件及所述操作符生成目录的元数据及文件的元数据;所述系统处理器加载所述目录的元数据及所述文件的元数据;所述系统处理器建立所述预写日志文件的对象。优选地,基于所述存放所述文件系统的元数据信息读取所述预写日志文件包括:所述读写处理器基于所述存放所述文件系统的元数据信息中的偏移量、长度及所在逻辑快设备读取所述预写日志文件。从上述技术方案可以看出,本专利技术公开了一种分布式数据库的控制方法,所述方法包括初始化物理块设备,挂载文件系统,文件系统用于运行数据库,基于文件系统的对象创建第一类的对象,第一类为第二类的继承类,第二类为数据库的对外开发的类,将第一类的对象发送至数据库,运行数据库。挂载一个文件系统,使数据库在文件系统上运行,通过文件系统可将数据保存在物理块设备上,直接操作物理块设备,解决了冗余写的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本专利技术公开的一种分布式数据库的控制方法的实施例1的流程图;图2为本专利技术公开的另一种分布式数据库的控制方法的实施例2的流程图;图3为本专利技术公开的另一种分布式数据库的控制方法的实施例2的流程图;图4为本专利技术公开的一种分布式数据库的控制系统的实施例1的结构示意图;图5为本专利技术公开的一种分布式数据库的控制系统的实施例2的结构示意图;图6为本专利技术公开的一种分布式数据库的控制系统的实施例3的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。如图1所示,本专利技术公开的一种分布式数据库的控制方法的实施例1的流程图,本方法包括以下步骤:S101、初始化物理块设备;为便于Rocks数据库的运行,系统开机后,将物理块设备初始化,其中物理块设备可包括非易失性随机访问存储器、固态硬盘及机械硬盘。S102、挂载文件系统,文件系统用于运行数据库;为了支撑InspurFS,定义基础数据结构超级块信息、inode信息、文件系统的扩展信息(记录快的信息),其中超级块存放通用唯一识别码、版本号、块大小、预写日志文件的元数据等信息;inode信息存放文件的inode号、大小、创建时间、所在物理块设备等信息;文件系统的扩展信息(记录快的信息)存放文件内容在物理块设备的偏移及长度。S103、基于文件系统的对象创建第一类的对象,第一类为第二类的继承类,第二类为数据库的对外开发的类;Rocks数据库::EnvWrapper为Rocks数据库的对外开发的类,Rocks数据库::EnvWrapper即为第二类,第一类为InspurRocksEnv,InspurRocksEnv是继承Rocks数据库::EnvWrapper的实现类。基于文件系统的对象创建第一类的对象,即创建Insp本文档来自技高网...
一种分布式数据库的控制方法及系统

【技术保护点】
一种分布式数据库的控制方法,其特征在于,所述方法包括以下步骤:初始化物理块设备;挂载文件系统,所述文件系统用于运行所述数据库;基于所述文件系统的对象创建第一类的对象,所述第一类为第二类的继承类,所述第二类为所述数据库的对外开发的类;将所述第一类的对象发送至所述数据库;运行所述数据库。

【技术特征摘要】
1.一种分布式数据库的控制方法,其特征在于,所述方法包括以下步骤:初始化物理块设备;挂载文件系统,所述文件系统用于运行所述数据库;基于所述文件系统的对象创建第一类的对象,所述第一类为第二类的继承类,所述第二类为所述数据库的对外开发的类;将所述第一类的对象发送至所述数据库;运行所述数据库。2.如权利要求1所述的方法,其特征在于,所述初始化物理块设备包括:格式化所述物理块设备;生成超级块的元数据信息及预写日志文件的元数据信息;生成操作符;将所述操作符存储至所述预写日志文件中;将所述超级块及所述预写日志文件存储至所述物理块设备。3.如权利要求1所述的方法,其特征在于,所述挂载文件系统包括:读取所述物理块设备中的所述超级块,基于所述超级块生成存放所述文件系统的元数据信息;基于所述存放所述文件系统的元数据信息读取所述预写日志文件;基于所述预写日志文件及所述操作符生成目录的元数据及文件的元数据;加载所述目录的元数据及所述文件的元数据;建立所述预写日志文件的对象。4.如权利要求2所述的方法,其特征在于,基于所述存放所述文件系统的元数据信息读取所述预写日志文件包括:基于所述存放所述文件系统的元数据信息中的偏移量、长度及所在逻辑快设备读取所述预写日志文件。5.一种分布式数据库的控制装置,其特征在于,所述控制装置包括系统处理器、物理块管理装置及运行处理器,其中:所述物理块管理装置及所述系统处理器初始化物理块设备;所述物理块管理装置及所述系统处理器挂载文件系统,所述文件系统...

【专利技术属性】
技术研发人员:贺计文
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1