CN108460059A - 基于分布式数据库的数据操作方法、装置及系统 - Google Patents
基于分布式数据库的数据操作方法、装置及系统 Download PDFInfo
- Publication number
- CN108460059A CN108460059A CN201710096719.3A CN201710096719A CN108460059A CN 108460059 A CN108460059 A CN 108460059A CN 201710096719 A CN201710096719 A CN 201710096719A CN 108460059 A CN108460059 A CN 108460059A
- Authority
- CN
- China
- Prior art keywords
- data
- identification code
- manipulation instruction
- database
- operated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于分布式数据库的数据操作方法、装置及系统。所述基于分布式数据库的数据操作方法包括:接收用户的数据操作指令;其中,所述数据操作指令中包括待操作数据及相应的操作类型标识码;根据所述待操作数据确定待操作的目标数据库,并根据所述数据操作指令,在所述目标数据库中完成对所述待操作数据的操作。采用本发明,能够提高分布式数据库中的数据操作的效率,且减少数据库资源的耗费。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于分布式数据库的数据操作方法、装置及系统。
背景技术
HBase(Hadoop Database,一种分布式的、面向列的开源数据库)是目前Hadoop(一种分布式系统基础架构)生态系统中最著名的分布式NoSQL(泛指非关系型的数据库)数据库之一,其设计理念来源于Google的Bigtable(一种Google设计的分布式数据存储系统)。HBase为用户提供表格类型的数据模型。为了方便数据的处理,HBase中的表通常按照主键的类型、范围等划分为若干个region(区块)。HBase的主要组件为HMaster和HRegionsever,其中,HMaster主要负责管理和分配region,HRegionsever主要负责在各region中进行数据的读写。
在现有技术中,分布式数据库系统通常以索引的方式对数据库中的各个region中的数据进行读写,可以理解的是,在数据库中写入数据的同时需要生成相应的索引,在从数据库中读取数据之前需要首先检索索引以获得数据的存储位置,数据的读写过程效率低下,且索引的存储需要占用数据库的空间,造成数据库资源耗费较大。
发明内容
本发明提出一种基于分布式数据库的数据操作方法、装置及系统,能够提高分布式数据库中的数据操作的效率,且减少数据库资源的耗费。
本发明提供的一种基于分布式数据库的数据操作方法,具体包括:
接收用户的数据操作指令;其中,所述数据操作指令中包括待操作数据及相应的操作类型标识码;
根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作;
所述根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作,具体包括:
根据所述待操作数据计算获得目标数据库标识码;
根据所述操作类型标识码判断所述数据操作指令的操作类型;
若所述操作类型为数据写入类型,则将所述待操作数据写入所述目标数据库标识码所对应目标数据库中;
若所述操作类型为数据读取类型,则在所述目标数据库标识码所对应的目标数据库中查找获得与所述待操作数据相对应的目标数据记录,并读取所述目标数据记录。
进一步地,其特征在于,所述根据所述待操作数据计算获得目标数据库标识码,具体包括:
将所述待操作数据代入预先设置的散列函数中,计算获得所述目标数据库标识码。
进一步地,在所述接收用户的数据操作指令之后,所述根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作之前,还包括:
根据所述数据操作指令生成相应的执行计划;其中,所述执行计划中包括数据库连接方式及数据库连接次序;
则所述根据所述待操作数据计算获得目标数据库标识码,具体包括:
在并行机制中,根据所述数据库连接次序确定数据操作指令执行时刻;
当当前时刻为所述数据操作指令执行时刻时,根据所述待操作数据计算获得所述目标数据库标识码;
在所述根据所述待操作数据计算获得目标数据库标识码之后,所述根据所述操作类型标识码判断所述数据操作指令的操作类型之前,还包括:
以所述数据库连接方式与所述目标数据库标识码所对应的目标数据库相连接。
进一步地,所述基于分布式数据库的数据操作方法,还包括:
判断所述执行计划中是否包含事务信息;
若包含,则利用Java事务处理接口,根据所述事务信息实现分布式事务处理和事务管理。
相应地,本发明还提供了一种基于分布式数据库的数据操作装置,具体包括:
数据操作指令接收模块,用于接收用户的数据操作指令;其中,所述数据操作指令中包括待操作数据及相应的操作类型标识码;以及,
数据操作指令执行模块,用于根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作;
所述数据操作指令执行模块,具体包括:
数据库标识码获得单元,用于根据所述待操作数据计算获得目标数据库标识码;
操作类型判断单元,用于根据所述操作类型标识码判断所述数据操作指令的操作类型;以及,
数据写入单元,用于当所述操作类型为数据写入类型时,将所述待操作数据写入所述目标数据库标识码所对应目标数据库中;或者,
数据读取单元,用于当所述操作类型为数据读取类型时,在所述目标数据库标识码所对应的目标数据库中查找获得与所述待操作数据相对应的目标数据记录,并读取所述目标数据记录。
进一步地,所述数据库标识码获得单元,具体包括:
标识码计算子单元,用于将所述待操作数据代入预先设置的散列函数中,计算获得所述目标数据库标识码。
进一步地,所述基于分布式数据库的数据操作装置,还包括:
执行计划生成模块,用于根据所述数据操作指令生成相应的执行计划;其中,所述执行计划中包括数据库连接方式及数据库连接次序;
则所述数据库标识码获得单元,具体包括:
指令执行时刻确定子单元,用于在并行机制中,根据所述数据库连接次序确定数据操作指令执行时刻;以及,
数据库标识码计算子单元,用于当当前时刻为所述数据操作指令执行时刻时,根据所述待操作数据计算获得所述目标数据库标识码;
所述数据操作指令执行模块,还包括:
数据库连接单元,用于以所述数据库连接方式与所述目标数据库标识码所对应的目标数据库相连接。
进一步地,所述基于分布式数据库的数据操作装置,还包括:
事务信息判断模块,用于判断所述执行计划中是否包含事务信息;以及,
事务处理管理模块,用于当所述执行计划中包含所述事务信息时,利用Java事务处理接口,根据所述事务信息实现分布式事务处理和事务管理。
相应地,本发明还提供了一种基于分布式数据库的数据操作系统,具体包括:
系统中央处理装置和至少一个目标数据库;其中,所述系统中央处理装置中包含数据操作指令接收子装置、目标数据库标识码计算子装置、数据操作指令执行子装置;
所述系统中央处理装置,为权利要求上述基于分布式数据库的数据操作装置;
所述数据操作指令接收子装置,用于接收所述数据操作指令;
所述目标数据库标识码计算子装置,用于根据所述待操作数据计算获得所述目标数据库标识码;
所述数据操作指令执行子装置,用于根据所述操作类型标识码判断所述数据操作指令的操作类型,并根据所述数据操作指令的操作类型及所述待操作数据完成相应的数据操作。
进一步地,所述系统中央处理装置中还包含执行计划制定子装置以及分布式事务管理子装置;所述数据操作指令执行子装置中包含至少一个并行任务执行器;
所述执行计划制定子装置,用于根据所述数据操作指令生成相应的执行计划;
所述并行任务执行器,用于并行地根据所述执行计划执行所述数据操作指令;
所述分布式事务管理子装置,用于当所述执行计划中包含事务信息时,利用Java事务处理接口实现分布式事务处理和事务管理。
实施本发明,具有如下有益效果:
本发明提供的基于分布式数据库的数据操作方法、装置及系统,通过对待操作数据进行计算,确定待操作的数据库,即,根据待操作数据的内容即可确定待操作的数据库,从而可以在不使用索引且减少检索的数据量的情况下在大型的分布式数据库中完成数据的存取,该数据存取的过程简单、处理的数据量较少、效率高,且由于无需占用数据库空间对数据库的位置信息、数据记录的位置信息等进行记录,因此能够节省大量的数据库资源。
附图说明
图1是本发明提供的基于分布式数据库的数据操作方法的一个优选的实施例的流程示意图;
图2是本发明提供的基于分布式数据库的数据操作装置的一个优选的实施例的结构示意图;
图3是本发明提供的基于分布式数据库的数据操作系统的一个优选的实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明根据待操作数据的内容确定该待操作数据在数据库中的存取位置,能够在不使用索引且减少检索的数据量的情况下完成在分布式数据库中进行数据存取的操作,数据存储的过程简单,处理的数据量较少,效率高,且能够节省数据库的空间,减少数据库资源的耗费。
如图1所示,为本发明提供的基于分布式数据库的数据操作方法的一个优选的实施例的流程示意图,包括步骤S11至S12,具体如下:
S11:接收用户的数据操作指令;其中,所述数据操作指令中包括待操作数据及相应的操作类型标识码;
S12:根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作;
所述根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作,具体包括步骤S121至S124:
S121:根据所述待操作数据计算获得目标数据库标识码;
S122:根据所述操作类型标识码判断所述数据操作指令的操作类型;
S123:若所述操作类型为数据写入类型,则将所述待操作数据写入所述目标数据库标识码所对应目标数据库中;
S124:若所述操作类型为数据读取类型,则在所述目标数据库标识码所对应的目标数据库中查找获得与所述待操作数据相对应的目标数据记录,并读取所述目标数据记录。
需要说明的是,本发明实施例由分布式数据库系统中的系统中央处理装置执行。系统中央处理装置在接收到用户发送的数据操作指令之后,对该数据操作指令进行分析处理。具体地,系统中央处理装置从该数据操作指令中提取其中的待操作数据,并对该待操作数据进行计算,从而获得待操作的目标数据库的标识码,进而确定当前待操作的目标数据库;随后,系统中央处理装置从该数据操作指令中提取其中的操作类型标识码,并根据该操作类型标识码确定该数据操作指令的操作类型,若该操作类型为写入类型,则将该数据操作指令中的待操作数据写入前述的目标数据库中;若该操作类型为读取类型,则检索前述的目标数据库,在该目标数据库中查找与该数据操作指令中的待操作数据相对应的目标数据记录,并在查找到时,从该目标数据库中读取该目标数据记录,并将所读取到的目标数据记录反馈给用户。
可以理解的是,数据操作指令可为SQL指令,数据操作指令的操作类型还可以为查询、删除、修改等类型。需要进一步说明的是,目标数据库可以为HBase。
通过对待操作数据进行计算,确定待操作的数据库,即,根据待操作数据的内容即可确定待操作的数据库,从而可以在不使用索引且减少检索的数据量的情况下在大型的分布式数据库中完成数据的存取,该数据存取的过程简单、处理的数据量较少、效率高,且由于无需占用数据库空间对数据库的位置信息、数据记录的位置信息等进行记录,因此能够节省大量的数据库资源。
更优选地,所述根据所述待操作数据计算获得目标数据库标识码,具体包括:
将所述待操作数据代入预先设置的散列函数中,计算获得所述目标数据库标识码。
需要说明的是,本优选的实施例采用散列函数对待操作数据进行计算,从而获得目标数据库的标识码。
例如,假设当前分布式数据库系统中有41个目标数据库,标识码依次为0至40,若用户想要从该分布式数据库系统中读取包含“25X3Z”的数据记录,则将包含待操作数据“25X3Z”和操作类型标识码“READ”的数据操作指令发送至系统中央处理装置。系统中央处理装置在接收到该数据操作指令之后,利用散列函数对其中的待操作数据进行计算。具体地,系统中央处理装置将该“25X3Z”转换为十进制的等价值“215643337562”,并用该十进制的等价值除以41,获得余数3,即可确定待操作的目标数据库的标识码为“3”。随后,系统中央处理装置在标识码为“3”的目标数据库中查找包含“25X3Z”的数据记录,并在查找到该数据记录后,从该目标数据库中读取该数据记录。最后,系统中央处理装置将所读取的数据记录反馈给用户。
在另一个优选的实施例中,在上述实施例的基础之上,在所述接收用户的数据操作指令之后,所述根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作之前,还包括:
根据所述数据操作指令生成相应的执行计划;其中,所述执行计划中包括数据库连接方式及数据库连接次序;
则所述根据所述待操作数据计算获得目标数据库标识码,具体包括:
在并行机制中,根据所述数据库连接次序确定数据操作指令执行时刻;
当当前时刻为所述数据操作指令执行时刻时,根据所述待操作数据计算获得所述目标数据库标识码;
在所述根据所述待操作数据计算获得目标数据库标识码之后,所述根据所述操作类型标识码判断所述数据操作指令的操作类型之前,还包括:
以所述数据库连接方式与所述目标数据库标识码所对应的目标数据库相连接。
进一步地,所述基于分布式数据库的数据操作方法,还包括:
判断所述执行计划中是否包含事务信息;
若包含,则利用Java事务处理接口,根据所述事务信息实现分布式事务处理和事务管理。
需要说明的是,系统中央处理装置在接收到用户发送的数据操作指令之后,判断数据库系统中的共享缓存池中是否包含该数据操作指令,若是,则直接获得与该数据操作指令相对应的执行计划;若否,则检查该数据操作指令的语法和语义是否正确,若均正确,则对该数据操作指令进行视图和表达式的转换,并利用优化器对经过转换后的数据操作指令进行选择,从而确定该数据操作指令所对应的数据库连接方式和数据库连接次序,并根据该数据库连接方式和数据库连接次序生成相应的执行计划。
在获得执行计划之后,系统中央处理装置判断该执行计划中是否包含事务信息,若是,则利用Java事务处理接口(JTA,JavaTransactionAPI)协调多方完成分布式事务处理和事务管理;在利用Java事务处理接口协调多方完成分布式事务处理和事务管理之后或者在执行计划中不包含事务信息时,利用并行任务执行器并行地处理各数据操作指令,具体地,系统中央处理装置根据每个执行计划中的数据库连接次序确定相应的数据操作指令的执行时刻,若当前还未到该数据操作指令的执行时刻,则继续排队等待,若当前时刻为该数据操作指令的执行时刻,则根据该数据操作指令中的待操作数据计算获得目标数据库的标识码,并根据所获得的目标数据库的标识码在数据库系统中查找到相应的目标数据库,并按照当前执行计划中的数据库连接方式与该目标数据库进行连接。随后,系统中央处理装置从该数据操作指令中提取其中的操作类型标识码,并根据该操作类型标识码确定该数据操作指令的操作类型,若该操作类型为写入类型,则将该数据操作指令中的待操作数据写入前述的目标数据库中;若该操作类型为读取类型,则检索前述的目标数据库,在该目标数据库中查找与该数据操作指令中的待操作数据相对应的目标数据记录,并在查找到时,从该目标数据库中读取该目标数据记录,并将所读取到的目标数据记录反馈给用户。
通过在并行机制中对数据操作指令进行处理,能够同时对多条数据操作指令进行处理,从而进一步提高数据操作过程的效率。
需要进一步说明的是,系统中央处理装置可以采用云润自研的高速SQL引擎UrunSQL对数据操作指令进行解析并生成相应的执行计划,目标数据库可以为HBase。在一些实施例中,还可以通过在数据库底层增加JSON数据类型以实现数据库系统对半结构化数据的支持,还可以通过在数据库底层增加LOB数据类型以实现数据库系统对大型图片存储格式的支持。在另一些实施例中,还可以在数据库系统中增加Solr(一种高性能的全文搜索引擎)以实现对数据库系统中的数据的全文检索。
本发明实施例提供的基于分布式数据库的数据操作方法,通过对待操作数据进行计算,确定待操作的数据库,即,根据待操作数据的内容即可确定待操作的数据库,从而可以在不使用索引且减少检索的数据量的情况下在大型的分布式数据库中完成数据的存取,该数据存取的过程简单、处理的数据量较少、效率高,且由于无需占用数据库空间对数据库的位置信息、数据记录的位置信息等进行记录,因此能够节省大量的数据库资源。另外,通过在并行机制中对数据操作指令进行处理,能够同时对多条数据操作指令进行处理,从而进一步提高数据操作过程的效率。
相应地,本发明还提供一种基于分布式数据库的数据操作装置,能够实现上述基于分布式数据库的数据操作方法的所有流程。
如图2所示,为本发明提供的基于分布式数据库的数据操作装置的一个优选的实施例的结构示意图,具体包括:
数据操作指令接收模块21,用于接收用户的数据操作指令;其中,所述数据操作指令中包括待操作数据及相应的操作类型标识码;以及,
数据操作指令执行模块22,用于根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作;
所述数据操作指令执行模块22,具体包括:
数据库标识码获得单元221,用于根据所述待操作数据计算获得目标数据库标识码;
操作类型判断单元222,用于根据所述操作类型标识码判断所述数据操作指令的操作类型;以及,
数据写入单元223,用于当所述操作类型为数据写入类型时,将所述待操作数据写入所述目标数据库标识码所对应目标数据库中;或者,
数据读取单元224,用于当所述操作类型为数据读取类型时,在所述目标数据库标识码所对应的目标数据库中查找获得与所述待操作数据相对应的目标数据记录,并读取所述目标数据记录。
更优选地,所述数据库标识码获得单元221,具体包括:
标识码计算子单元,用于将所述待操作数据代入预先设置的散列函数中,计算获得所述目标数据库标识码。
在另一个优选的实施例中,在上述实施例的基础之上,所述基于分布式数据库的数据操作装置,还包括:
执行计划生成模块,用于根据所述数据操作指令生成相应的执行计划;其中,所述执行计划中包括数据库连接方式及数据库连接次序;
则所述数据库标识码获得单元221,具体包括:
指令执行时刻确定子单元,用于在并行机制中,根据所述数据库连接次序确定数据操作指令执行时刻;以及,
数据库标识码计算子单元,用于当当前时刻为所述数据操作指令执行时刻时,根据所述待操作数据计算获得所述目标数据库标识码;
所述数据操作指令执行模块22,还包括:
数据库连接单元,用于以所述数据库连接方式与所述目标数据库标识码所对应的目标数据库相连接。
进一步地,所述基于分布式数据库的数据操作装置,还包括:
事务信息判断模块,用于判断所述执行计划中是否包含事务信息;以及,
事务处理管理模块,用于当所述执行计划中包含所述事务信息时,利用Java事务处理接口,根据所述事务信息实现分布式事务处理和事务管理。
相应地,本发明还提供一种基于分布式数据库的数据操作系统。
如图3所示,为本发明提供的基于分布式数据库的数据操作系统的一个优选的实施例的结构示意图,具体包括:
系统中央处理装置31和至少一个目标数据库32;其中,所述系统中央处理装置31中包含数据操作指令接收子装置311、目标数据库标识码计算子装置312、数据操作指令执行子装置313;
所述系统中央处理装置31,为上述任一基于分布式数据库的数据操作装置;
所述数据操作指令接收子装置311,用于接收所述数据操作指令;
所述目标数据库标识码计算子装置312,用于根据所述待操作数据计算获得所述目标数据库标识码;
所述数据操作指令执行子装置313,用于根据所述操作类型标识码判断所述数据操作指令的操作类型,并根据所述数据操作指令的操作类型及所述待操作数据完成相应的数据操作。
进一步地,所述系统中央处理装置31中还包含执行计划制定子装置314以及分布式事务管理子装置315;所述数据操作指令执行子装置313中包含至少一个并行任务执行器3131;
所述执行计划制定子装置314,用于根据所述数据操作指令生成相应的执行计划;
所述并行任务执行器3131,用于并行地根据所述执行计划执行所述数据操作指令;
所述分布式事务管理子装置315,用于当所述执行计划中包含事务信息时,利用Java事务处理接口实现分布式事务处理和事务管理。
需要说明的是,系统中央处理装置可以同时与一个或者多个用户端相连,并行地处理各个用户端的数据操作指令。
本发明实施例提供的基于分布式数据库的数据操作装置和系统,通过对待操作数据进行计算,确定待操作的数据库,即,根据待操作数据的内容即可确定待操作的数据库,从而可以在不使用索引且减少检索的数据量的情况下在大型的分布式数据库中完成数据的存取,该数据存取的过程简单、处理的数据量较少、效率高,且由于无需占用数据库空间对数据库的位置信息、数据记录的位置信息等进行记录,因此能够节省大量的数据库资源。另外,通过在并行机制中对数据操作指令进行处理,能够同时对多条数据操作指令进行处理,从而进一步提高数据操作过程的效率。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (10)
1.一种基于分布式数据库的数据操作方法,其特征在于,包括:
接收用户的数据操作指令;其中,所述数据操作指令中包括待操作数据及相应的操作类型标识码;
根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作;
所述根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作,具体包括:
根据所述待操作数据计算获得目标数据库标识码;
根据所述操作类型标识码判断所述数据操作指令的操作类型;
若所述操作类型为数据写入类型,则将所述待操作数据写入所述目标数据库标识码所对应目标数据库中;
若所述操作类型为数据读取类型,则在所述目标数据库标识码所对应的目标数据库中查找获得与所述待操作数据相对应的目标数据记录,并读取所述目标数据记录。
2.如权利要求1所述的基于分布式数据库的数据操作方法,其特征在于,所述根据所述待操作数据计算获得目标数据库标识码,具体包括:
将所述待操作数据代入预先设置的散列函数中,计算获得所述目标数据库标识码。
3.如权利要求1所述的基于分布式数据库的数据操作方法,其特征在于,在所述接收用户的数据操作指令之后,所述根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作之前,还包括:
根据所述数据操作指令生成相应的执行计划;其中,所述执行计划中包括数据库连接方式及数据库连接次序;
则所述根据所述待操作数据计算获得目标数据库标识码,具体包括:
在并行机制中,根据所述数据库连接次序确定数据操作指令执行时刻;
当当前时刻为所述数据操作指令执行时刻时,根据所述待操作数据计算获得所述目标数据库标识码;
在所述根据所述待操作数据计算获得目标数据库标识码之后,所述根据所述操作类型标识码判断所述数据操作指令的操作类型之前,还包括:
以所述数据库连接方式与所述目标数据库标识码所对应的目标数据库相连接。
4.如权利要求3所述的基于分布式数据库的数据操作方法,其特征在于,所述基于分布式数据库的数据操作方法,还包括:
判断所述执行计划中是否包含事务信息;
若包含,则利用Java事务处理接口,根据所述事务信息实现分布式事务处理和事务管理。
5.一种基于分布式数据库的数据操作装置,其特征在于,包括:
数据操作指令接收模块,用于接收用户的数据操作指令;其中,所述数据操作指令中包括待操作数据及相应的操作类型标识码;以及,
数据操作指令执行模块,用于根据所述数据操作指令,在目标数据库中完成对所述待操作数据的操作;
所述数据操作指令执行模块,具体包括:
数据库标识码获得单元,用于根据所述待操作数据计算获得目标数据库标识码;
操作类型判断单元,用于根据所述操作类型标识码判断所述数据操作指令的操作类型;以及,
数据写入单元,用于当所述操作类型为数据写入类型时,将所述待操作数据写入所述目标数据库标识码所对应目标数据库中;或者,
数据读取单元,用于当所述操作类型为数据读取类型时,在所述目标数据库标识码所对应的目标数据库中查找获得与所述待操作数据相对应的目标数据记录,并读取所述目标数据记录。
6.如权利要求5所述的基于分布式数据库的数据操作装置,其特征在于,所述数据库标识码获得单元,具体包括:
标识码计算子单元,用于将所述待操作数据代入预先设置的散列函数中,计算获得所述目标数据库标识码。
7.如权利要求5所述的基于分布式数据库的数据操作装置,其特征在于,所述基于分布式数据库的数据操作装置,还包括:
执行计划生成模块,用于根据所述数据操作指令生成相应的执行计划;其中,所述执行计划中包括数据库连接方式及数据库连接次序;
则所述数据库标识码获得单元,具体包括:
指令执行时刻确定子单元,用于在并行机制中,根据所述数据库连接次序确定数据操作指令执行时刻;以及,
数据库标识码计算子单元,用于当当前时刻为所述数据操作指令执行时刻时,根据所述待操作数据计算获得所述目标数据库标识码;
所述数据操作指令执行模块,还包括:
数据库连接单元,用于以所述数据库连接方式与所述目标数据库标识码所对应的目标数据库相连接。
8.如权利要求7所述的基于分布式数据库的数据操作装置,其特征在于,所述基于分布式数据库的数据操作装置,还包括:
事务信息判断模块,用于判断所述执行计划中是否包含事务信息;以及,
事务处理管理模块,用于当所述执行计划中包含所述事务信息时,利用Java事务处理接口,根据所述事务信息实现分布式事务处理和事务管理。
9.一种基于分布式数据库的数据操作系统,其特征在于,包括:
系统中央处理装置和至少一个目标数据库;其中,所述系统中央处理装置中包含数据操作指令接收子装置、目标数据库标识码计算子装置、数据操作指令执行子装置;
所述系统中央处理装置,为权利要求5至8中任一项所述的基于分布式数据库的数据操作装置;
所述数据操作指令接收子装置,用于接收所述数据操作指令;
所述目标数据库标识码计算子装置,用于根据所述待操作数据计算获得所述目标数据库标识码;
所述数据操作指令执行子装置,用于根据所述操作类型标识码判断所述数据操作指令的操作类型,并根据所述数据操作指令的操作类型及所述待操作数据完成相应的数据操作。
10.如权利要求9所述的基于分布式数据库的数据操作系统,其特征在于,所述系统中央处理装置中还包含执行计划制定子装置以及分布式事务管理子装置;所述数据操作指令执行子装置中包含至少一个并行任务执行器;
所述执行计划制定子装置,用于根据所述数据操作指令生成相应的执行计划;
所述并行任务执行器,用于并行地根据所述执行计划执行所述数据操作指令;
所述分布式事务管理子装置,用于当所述执行计划中包含事务信息时,利用Java事务处理接口实现分布式事务处理和事务管理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710096719.3A CN108460059A (zh) | 2017-02-22 | 2017-02-22 | 基于分布式数据库的数据操作方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710096719.3A CN108460059A (zh) | 2017-02-22 | 2017-02-22 | 基于分布式数据库的数据操作方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108460059A true CN108460059A (zh) | 2018-08-28 |
Family
ID=63220047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710096719.3A Pending CN108460059A (zh) | 2017-02-22 | 2017-02-22 | 基于分布式数据库的数据操作方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108460059A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542926A (zh) * | 2018-11-06 | 2019-03-29 | 北京新唐思创教育科技有限公司 | 区块处理方法及计算机存储介质 |
-
2017
- 2017-02-22 CN CN201710096719.3A patent/CN108460059A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542926A (zh) * | 2018-11-06 | 2019-03-29 | 北京新唐思创教育科技有限公司 | 区块处理方法及计算机存储介质 |
CN109542926B (zh) * | 2018-11-06 | 2021-04-09 | 北京新唐思创教育科技有限公司 | 区块处理方法及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11593369B2 (en) | Managing data queries | |
US10521427B2 (en) | Managing data queries | |
CN101587491A (zh) | 使用运行时可重配置硬件的混合数据库系统 | |
US11934371B2 (en) | Data processing method and apparatus, and computer-readable storage medium | |
JP5276639B2 (ja) | 分散データベース管理装置および分散データベース管理プログラム | |
CN103353901B (zh) | 基于Hadoop分布式文件系统的表数据的有序管理方法以及系统 | |
US10810174B2 (en) | Database management system, database server, and database management method | |
CN104317899A (zh) | 一种大数据分析与处理系统及访问方法 | |
JP4511469B2 (ja) | 情報処理方法及び情報処理システム | |
JP2015106219A (ja) | 分散型データ仮想化システム、クエリ処理方法及びクエリ処理プログラム | |
CN108460059A (zh) | 基于分布式数据库的数据操作方法、装置及系统 | |
JPWO2005106713A1 (ja) | 情報処理方法及び情報処理システム | |
CN108874395A (zh) | 一种组件化流处理过程中的硬编译方法及装置 | |
JP5464017B2 (ja) | 分散メモリデータベースシステム、データベースサーバ、データ処理方法およびそのプログラム | |
CN111666302A (zh) | 用户排名的查询方法、装置、设备及存储介质 | |
CN110297858A (zh) | 执行计划的优化方法、装置、计算机设备和存储介质 | |
WO2011099114A1 (ja) | ハイブリッド型データベースシステム及びその動作方法 | |
JP6366812B2 (ja) | 計算機及びデータベースの管理方法 | |
JP4772506B2 (ja) | 情報処理方法、情報処理システムおよびプログラム | |
AU2015221560C1 (en) | Managing data queries | |
WO2023219734A1 (en) | Evaluating row-store expressions on a column-store database | |
Wang et al. | Efficient similarity search on massive gene data based on cloud computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180828 |
|
WD01 | Invention patent application deemed withdrawn after publication |