键值数据库的管理方法和装置的制造方法

文档序号:10655326阅读:240来源:国知局
键值数据库的管理方法和装置的制造方法
【专利摘要】本发明公开了一种键值数据库的管理方法和装置,该方法包括:检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型,所述逻辑模型用于保存被输入的键值数据;当检测到转化操作时,将所述逻辑模型转化为与底层存储对应的物理模型,所述逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;按照转化后的物理模型和数据类型将所述键值数据写入所述底层存储。实现了在可视化管理工具中完成针对存储方案的新建、查询、修改、删除等操作,并将输入的键值数据写入到底层存储,简化了新建存储方案的操作,不再需要通过命令或代码的方式完成操作,提高了键值数据的管理效率。
【专利说明】
键值数据库的管理方法和装置
技术领域
[0001]本发明属于计算机领域,具体地说,涉及一种键值数据库的管理方法和装置。【背景技术】
[0002]随着互联网的快速发展,很多互联网公司都已积累了 TB量级的数据。越来越多的互联网公司开始使用键值(Key-Value)数据库,这是一种NoSQL(非关系型数据库)模型,其数据按照键值对的形式进行组织、索引和存储。键值存储非常适合不涉及过多数据关系和业务关系的业务数据,同时能有效减少读写磁盘的次数,比SQL数据库存储拥有更好的读写性能。
[0003]目前对于键值数据库通常是通过输入命令或者代码的方式来进行管理、查询等操作,过程较为繁琐且效率不高。
【发明内容】

[0004]有鉴于此,本发明实施例提供了一种键值数据库的管理方法和装置,用以解决现有技术中对键值数据库进行管理很繁琐,效率不高的技术问题。
[0005]为了解决上述技术问题,本发明公开了一种键值数据库的管理方法,包括:检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型,所述逻辑模型用于保存被输入的键值数据;当检测到转化操作时,将所述逻辑模型转化为与底层存储对应的物理模型, 所述逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;按照转化后的物理模型和数据类型将所述键值数据写入所述底层存储。
[0006]为了解决上述技术问题,本发明还公开了一种键值数据库的管理装置,包括:显示模块,用于检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型,所述逻辑模型用于保存被输入的键值数据;第一转化模块,用于当检测到转化操作时,将所述逻辑模型转化为与底层存储对应的物理模型,所述逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;第一写入模块,用于按照转化后的物理模型和数据类型将所述键值数据写入所述底层存储。
[0007]与现有技术相比,本发明实施例提供的键值数据库的管理方法和装置,实现了在可视化管理工具中完成针对存储方案的各种操作(如新建、查询、修改、删除等)并将输入的键值数据写入到底层存储,简化了新建存储方案的操作,不再需要通过命令或代码的方式完成操作,提高了键值数据的管理效率。【附图说明】
[0008]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0009]图1是本发明实施例提供的一种键值数据库的管理方法的流程图;
[0010]图2是本发明实施例提供的一种键值数据库的管理方法的流程图;
[0011]图3是本发明实施例提供的一种键值数据库的管理方法的流程图;
[0012]图4是本发明实施例提供的一种键值数据库的管理方法的流程图;
[0013]图5是本发明实施例提供的一种键值数据库的管理方法的流程图;
[0014]图6是本发明实施例提供的一种键值数据库的管理装置的框图。【具体实施方式】
[0015]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0016]本发明实施例提供了键值数据库的可视化管理工具,可通过该可视化管理工具浏览到底层存储已有的存储方案,可以对已有的存储方案进行修改、查询、删除等操作,对已有的存储方案中的键值数据也可以进行过滤、修改、删除等操作,还可以通过该可视化管理工具新建存储方案并在新建的存储方案中添加键值数据。通过该可视化管理工具可以更直观的对键值数据库进行管理操作,提高了管理效率,对键值数据的配置操作也变得更加容易,不需要掌握很多关于底层存储的相关知识也可以完成操作。
[0017]键值数据库的可视化管理工具可以采用WEB应用框架、C/S(Client/SerVer)架构和B/S(Browser/Server)架构中的任意一种。[〇〇18]如图1所示的一种键值数据库的管理方法,包括以下步骤。
[0019]S10,检测到针对存储方案的操作后,加载显示存储方案的逻辑模型,逻辑模型用于保存被输入的键值数据;
[0020]S11,当检测到转化操作时,将逻辑模型转化为与底层存储对应的物理模型,逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;
[0021]S12,按照转化后的物理模型和数据类型将键值数据写入底层存储。[〇〇22]在可视化管理工具中,针对存储方案的操作包括:针对已有的存储方案进行查询、 修改、删除等操作;还可以创建新的存储方案并在创建的存储方案中输入键值数据来保存到底层存储中;而针对创建后的存储方案也同样可以进行查询、修改、删除等操作。[〇〇23]在可视化管理工具中通过逻辑模型以及物理模型与底层存储建立对应关系。底层存储包括在内存中缓存的键值数据以及被持久化至磁盘文件的键值数据。底层存储可以使用一种或多种存储服务,例如redis、memcache等,而在每种存储服务中又可以进一步包括分别针对不同业务的多个存储方案,在每个存储方案中保存着对应业务的键值数据。在可视化管理工具中,对已存在于底层存储的存储方案实现可视化的过程如下。[〇〇24]可视化管理工具读取底层存储后,按照所使用的存储服务生成对应的物理模型。 不同的存储服务对应的物理模型不同,物理模型包括存储格式和数据类型。例如,redis的存储格式包括全量数据、增量请求等,数据类型支持string,1 ist,set及zset;在menchache 中包括多个slab class,每个slab class下包含多个具有相同大小的chunk,键值数据被保存在每个chunk内,memcache并不支持set及zset等数据类型。因此,针对不同的存储服务所生成的物理模型也不同。
[0025]将生成的物理模型转化为逻辑模型。逻辑模型位于相应的界面开发框架下的逻辑层,可以被加载显示在可视化管理工具的界面当中,逻辑模型包括存储方案列表下的存储方案模型和键值数据列表下的键值数据模型。在转化过程中,将存储方案的名称和键值数据的内容转化为字符型,以显示在各自对应的存储方案模型和键值数据模型中。
[0026]可视化管理工具的界面中包括但不限于存储方案列表和键值数据列表。将从每个存储服务中读取到的存储方案以列表的形式进行显示。检测到打开某个存储方案的操作时,在键值数据列表中显示该存储方案的全部键值数据。
[0027]在检测到查询现有存储方案的操作时,上述将底层存储中已有的键值数据实现可视化的过程如图2所示,包括以下步骤。[〇〇28]S100,读取底层存储中的键值数据;[〇〇29]S101,按照键值数据所属的存储方案生成对应的物理模型;[〇〇3〇] S102,将存储方案的物理模型转化为逻辑模型,读取的键值数据被保存在逻辑模型中;
[0031]S103,在存储方案列表中显示存储方案的逻辑模型。[〇〇32]实现了对底层存储中已存在的存储方案以及其中的键值数据的可视化管理,使用户(该可视化管理工具的使用者,通常是开发人员)能够直观的浏览到底层存储中的各个存储方案和其中的键值数据。
[0033]用户可以在存储方案列表中选中并打开一个现有存储方案。该可视化管理工具检测到打开现有存储方案的操作后,在键值列表中加载显示该存储方案的逻辑模型中保存的键值数据。用户还可以对键值数据进行过滤、筛选等操作,例如根据不同的键(Key)对数据进行过滤。检测到用户输入的过滤条件时,过滤出符合该条件的键值数据进行显示。使用户不再需要在底层存储中用命令或代码的方式进行查询,简化的查询操作,并且对结果的浏览也更加直观。[〇〇34]如果对现有存储方案中的键值数据进行了修改或删除操作,则通过上述步骤S11-S12将经过修改或删除后键值数据写入到底层存储中。
[0035]在该可视化管理工具中,还可以新建存储方案,在新建的存储方案中输入键值数据并将输入的键值数据写入到底层存储中。该过程如图3所示,包括以下步骤。
[0036]S20,检测到创建存储方案的操作后,加载显示创建的存储方案的逻辑模型,逻辑模型用于保存被输入的键值数据;[〇〇37]S21,当检测到转化操作时,将逻辑模型转化为与底层存储对应的物理模型,逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;[〇〇38]S22,按照转化后的物理模型和数据类型将键值数据写入底层存储。
[0039]在步骤S20中,检测到创建存储方案的操作后,在存储方案列表中会显示一个新的存储方案模型,用户可以为该存储方案的设置名称。选中该新建的存储方案后,用户可以在键值数据列表的键值数据模型中输入需要保存的键值数据。键值数据可以由用户手动输入,也可以从预设文件中导入。
[0040]在步骤S21中,转化操作可以是保存、确认、写入等操作,其作用是由用户来确认将已输入的键值数据写入到底层存储中。当检测到该转化操作时,即开始进行从逻辑层到物理层的转化。
[0041]将逻辑模型转化为与底层存储对应的物理模型。根据底层存储所使用的存储服务,转化为与该存储服务对应的物理模型,并将键值数据从字符型转化为该存储服务所支持的数据类型。[〇〇42]在一个实施例中,当底层存储同时使用了多种存储服务时,例如,用memcache来维护内存中的一部分键值数据,用redi s来维护内存中的另一部分键值数据以及磁盘文件中的键值数据。在检测到转化操作后,会显示对应的选择提示,提示用户为新建的存储方案选择所要使用的存储服务。根据用户的选择操作确定被选中的一种存储服务后,开始进行逻辑层到物理层的转化。将逻辑模型转化为与被选中的存储服务对应的物理模型,记录的键值数据转化为被选中的存储服务所支持的数据类型。[〇〇43]步骤S22的写入过程相当于将键值数据按照物理模型和数据类型物化到内存或磁盘中。
[0044]通过上述过程实现了在可视化管理工具中新建存储方案并将输入的键值数据写入到底层存储,简化了新建存储方案的操作,不再需要通过命令或代码的方式完成操作,提高了键值数据的管理效率。
[0045]对于新建的存储方案,还可以进行修改、查询、删除等操作。所述查询操作,与前文提到的在可视化管理工具中对现有存储方案进行查询、打开、过滤等操作的方式相同,在此不再重复说明。
[0046]所述修改操作,涉及到对存储方案名称以及键值数据的修改。在逻辑层无论重新修改了存储方案的名称还是键值数据,都需要重新进行转化操作。对于存储方案的修改,如图4所示包括以下步骤
[0047]S30,检测到修改存储方案的操作后,在逻辑模型中保存修改后的键值数据。
[0048]S31,当检测到转化操作时,将修改后的键值数据转化为与底层存储对应的数据类型;
[0049]S32,按照转化后的物理模型和数据类型将修改后的键值数据写入底层存储。
[0050]对被修改的键值数据的处理,与新建时输入的键值数据相同,转化为与底层存储对应的物理模型并进行数据类型的转换后写入到底层存储。
[0051]所述删除操作,如图5所示包括以下步骤。[〇〇52]S40,检测到删除存储方案的操作后,删除存储方案的逻辑模型;[〇〇53]S41,当检测到转化操作时,删除逻辑模型对应的物理模型;[〇〇54]S42,将物理模型在底层存储中对应的存储方案删除。
[0055]删除存储方案的逻辑模型会将存储方案列表中对应的存储方案模型以及键值数据列表中的对应的键值数据模型全部删除。那么对应的物理模型以及在底层存储中对应的存储方案也随之删除,从而会释放该存储方案占用的内存或磁盘空间。
[0056]在可视化工具中对现有存储方案以及其中的键值数据进行修改和删除操作的过程与图4和图5所示的过程相同,在此不再重复说明。[〇〇57]通过该可视化管理工具实现了对键值数据的查询、修改、删除等操作,使这些键值数据管理操作都能够直观简单的完成,进一步提升键值操作的管理效率。
[0058]下文是本发明的装置实施例,用于执行本发明的上述方法实施例。
[0059]图6是本发明实施例提供的一种键值数据库的管理装置,包括:[〇〇6〇]显示模块50,用于检测到针对存储方案的操作后,加载显示存储方案的逻辑模型, 逻辑模型用于保存被输入的键值数据;
[0061]第一转化模块51,用于当检测到转化操作时,将逻辑模型转化为与底层存储对应的物理模型,逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;[〇〇62]第一写入模块52,用于按照转化后的物理模型和数据类型将键值数据写入底层存储。[〇〇63] 在一个实施例中,显示模块50进一步包括:[〇〇64]第一显示子模块,用于检测到创建存储方案的操作后,加载显示创建的存储方案的逻辑模型。[〇〇65]在一个实施例中,第一转化模块51进一步包括:
[0066]选择子模块,用于当底层存储采用了多种存储服务时,根据选择操作确定被选中的一种存储服务;[〇〇67]第一转化子模块,用于将逻辑模型转化为与被选中的存储服务对应的物理模型, 逻辑模型记录的键值数据被转化为与被选中的存储服务对应的数据类型。[0〇68]在一个实施例中,该键值数据库的管理装置还包括:
[0069]保存模块,用于检测到修改存储方案的操作后,在逻辑模型中保存修改后的键值数据;
[0070]第二转化模块,用于当检测到转化操作时,将修改后的键值数据转化为与底层存储对应的数据类型;
[0071]第二写入模块,用于按照转化后的物理模型和数据类型将修改后的键值数据写入底层存储。[0〇72]在一个实施例中,该键值数据库的管理装置还包括:
[0073]第一删除模块,用于检测到删除存储方案的操作后,删除存储方案的逻辑模型; [〇〇74]第二删除模块,用于当检测到转化操作时,删除逻辑模型对应的物理模型;[〇〇75]第三删除模块,用于将物理模型在底层存储中对应的存储方案删除。[〇〇76] 在一个实施例中,显示模块50进一步包括:
[0077]读取子模块,用于检测到查询现有存储方案的操作后,读取底层存储中的键值数据;[〇〇78]生成子模块,用于按照键值数据所属的存储方案生成对应的物理模型;
[0079]第二转化子模块,用于将存储方案的物理模型转化为逻辑模型,读取的键值数据被保存在逻辑模型中;
[0080]第二显示子模块,用于在存储方案列表中显示存储方案的逻辑模型。[0081 ] 在一个实施例中,显示模块50还包括:[〇〇82]第三显示子模块,用于检测到打开现有存储方案的操作后,加载显示存储方案的逻辑模型中保存的键值数据。
[0083]此外,本发明实施例中可以通过硬件处理器(hardware processor)来实现上述各个功能模块。
[0084]本发明实施例还提供了一种终端设备,该终端设备可以是计算机,分布式数据存储系统的控制台等设备,该终端设备包括:包括处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为:检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型,所述逻辑模型用于保存被输入的键值数据;当检测到转化操作时,将所述逻辑模型转化为与底层存储对应的物理模型,所述逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;按照转化后的物理模型和数据类型将所述键值数据写入所述底层存储。
[0085]在一个实施例中,所述检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型包括:检测到创建存储方案的操作后,加载显示所述创建的存储方案的逻辑模型。
[0086]在一个实施例中,所述当检测到转化操作时,将所述逻辑模型转化为与底层存储对应的物理模型,所述逻辑模型记录的键值数据被转化为与底层存储对应的数据类型包括:当底层存储采用了多种存储服务时,根据选择操作确定被选中的一种存储服务;将所述逻辑模型转化为与所述被选中的存储服务对应的物理模型,所述逻辑模型记录的键值数据被转化为与所述被选中的存储服务对应的数据类型。
[0087]在一个实施例中,所述处理器进一步被配置为:检测到修改所述存储方案的操作后,在逻辑模型中保存修改后的键值数据;当检测到转化操作时,将修改后的键值数据转化为与底层存储对应的数据类型;按照转化后的物理模型和数据类型将修改后的键值数据写入所述底层存储。
[0088]在一个实施例中,所述处理器进一步被配置为:检测到删除所述存储方案的操作后,删除所述存储方案的逻辑模型;当检测到转化操作时,删除所述逻辑模型对应的物理模型;将所述物理模型在底层存储中对应的存储方案删除。
[0089]在一个实施例中,所述检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型包括:检测到查询现有存储方案的操作后,读取底层存储中的键值数据;按照所述键值数据所属的存储方案生成对应的物理模型;将所述存储方案的物理模型转化为逻辑模型,所述读取的键值数据被保存在所述逻辑模型中;在存储方案列表中显示所述存储方案的逻辑模型。
[0090]在一个实施例中,所述检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型包括还包括:检测到打开所述现有存储方案的操作后,加载显示所述存储方案的逻辑模型中保存的键值数据。
[0091]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0092]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0093]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换; 而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种键值数据库的管理方法,其特征在于,包括:检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型,所述逻辑模型用 于保存被输入的键值数据;当检测到转化操作时,将所述逻辑模型转化为与底层存储对应的物理模型,所述逻辑 模型记录的键值数据被转化为与底层存储对应的数据类型;按照转化后的物理模型和数据类型将所述键值数据写入所述底层存储。2.根据权利要求1所述的方法,其特征在于,所述检测到针对存储方案的操作后,加载 显示所述存储方案的逻辑模型包括:检测到创建存储方案的操作后,加载显示所述创建的存储方案的逻辑模型。3.根据权利要求2所述的方法,其特征在于,所述当检测到转化操作时,将所述逻辑模 型转化为与底层存储对应的物理模型,所述逻辑模型记录的键值数据被转化为与底层存储 对应的数据类型包括:当底层存储采用了多种存储服务时,根据选择操作确定被选中的一种存储服务;将所述逻辑模型转化为与所述被选中的存储服务对应的物理模型,所述逻辑模型记录 的键值数据被转化为与所述被选中的存储服务对应的数据类型。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:检测到修改所述存储方案的操作后,在逻辑模型中保存修改后的键值数据;当检测到转化操作时,将修改后的键值数据转化为与底层存储对应的数据类型;按照转化后的物理模型和数据类型将修改后的键值数据写入所述底层存储。5.根据权利要求2所述的方法,其特征在于,所述方法还包括:检测到删除所述存储方案的操作后,删除所述存储方案的逻辑模型;当检测到转化操作时,删除所述逻辑模型对应的物理模型;将所述物理模型在底层存储中对应的存储方案删除。6.根据权利要求1所述的方法,其特征在于,所述检测到针对存储方案的操作后,加载 显示所述存储方案的逻辑模型包括:检测到查询现有存储方案的操作后,读取底层存储中的键值数据;按照所述键值数据所属的存储方案生成对应的物理模型;将所述存储方案的物理模型转化为逻辑模型,所述读取的键值数据被保存在所述逻辑 模型中;在存储方案列表中显示所述存储方案的逻辑模型。7.根据权利要求6所述的方法,其特征在于,所述检测到针对存储方案的操作后,加载 显示所述存储方案的逻辑模型包括还包括:检测到打开所述现有存储方案的操作后,加载显示所述存储方案的逻辑模型中保存的 键值数据。8.—种键值数据库的管理装置,其特征在于,包括:显示模块,用于检测到针对存储方案的操作后,加载显示所述存储方案的逻辑模型,所 述逻辑模型用于保存被输入的键值数据;第一转化模块,用于当检测到转化操作时,将所述逻辑模型转化为与底层存储对应的 物理模型,所述逻辑模型记录的键值数据被转化为与底层存储对应的数据类型;第一写入模块,用于按照转化后的物理模型和数据类型将所述键值数据写入所述底层 存储。9.根据权利要求8所述的装置,其特征在于,所述显示模块包括:第一显示子模块,用于检测到创建存储方案的操作后,加载显示所述创建的存储方案 的逻辑模型。10.根据权利要求9所述的装置,其特征在于,所述第一转化模块包括:选择子模块,用于当底层存储采用了多种存储服务时,根据选择操作确定被选中的一 种存储服务;第一转化子模块,用于将所述逻辑模型转化为与所述被选中的存储服务对应的物理模 型,所述逻辑模型记录的键值数据被转化为与所述被选中的存储服务对应的数据类型。11.根据权利要求9所述的装置,其特征在于,所述装置还包括:保存模块,用于检测到修改所述存储方案的操作后,在逻辑模型中保存修改后的键值 数据;第二转化模块,用于当检测到转化操作时,将修改后的键值数据转化为与底层存储对 应的数据类型;第二写入模块,用于按照转化后的物理模型和数据类型将修改后的键值数据写入所述 底层存储。12.根据权利要求9所述的装置,其特征在于,所述装置还包括:第一删除模块,用于检测到删除所述存储方案的操作后,删除所述存储方案的逻辑模 型;第二删除模块,用于当检测到转化操作时,删除所述逻辑模型对应的物理模型;第三删除模块,用于将所述物理模型在底层存储中对应的存储方案删除。13.根据权利要求8所述的装置,其特征在于,所述显示模块包括:读取子模块,用于检测到查询现有存储方案的操作后,读取底层存储中的键值数据;生成子模块,用于按照所述键值数据所属的存储方案生成对应的物理模型;第二转化子模块,用于将所述存储方案的物理模型转化为逻辑模型,所述读取的键值 数据被保存在所述逻辑模型中;第二显示子模块,用于在存储方案列表中显示所述存储方案的逻辑模型。14.根据权利要求13所述的装置,其特征在于,所述显示模块还包括:第三显示子模块,用于检测到打开所述现有存储方案的操作后,加载显示所述存储方 案的逻辑模型中保存的键值数据。
【文档编号】G06F17/30GK106021488SQ201610334875
【公开日】2016年10月12日
【申请日】2016年5月19日
【发明人】刘宏斌, 国铁龙
【申请人】乐视控股(北京)有限公司, 乐视网信息技术(北京)股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1