【技术实现步骤摘要】
一种能够保证分布式数据库全表查询语句结果集顺序的方法和装置
本专利技术涉及分布式数据库查询
,具体地说是一种能够保证分布式数据库全表查询语句结果集顺序的方法和装置。
技术介绍
查询操作是数据库核心的操作,数据库中其他的操作均或多或少的依赖于查询操作返回的结果集。分布式数据库将计算和存储分布在不同的节点上。数据被分割开来,存储在不同的数据库服务器上,随着数据量的增加服务器的数目也随之增加。分布式技术支持硬件以水平扩展的方式来获得线性增长的性能和存储,同时对硬件的性能要求也较为宽松。在分布式数据库中,每个服务器节点只存储数据的一部分,节点之间是彼此信任的,这些节点组合成一个完整的分布式数据库。在分布式数据库进行相关操作时,会将总的工作任务分解成若干个小的任务,通过分布式并行执行的方式将其完成。因此,在对一个分布式数据库进行数据查询操作时,会将一个查询操作分解为若干个执行计划,由各个节点执行具体的查询操作,从而能够得到若干个结果集,最后将这些结果集整合起来形成一个总的结果集返回给用户。通过分析上述的流 ...
【技术保护点】
1.一种能够保证分布式数据库全表查询语句结果集顺序的方法,其特征在于该方法中数据以Range为基本存储单元,网关节点根据从元数据解析的Range信息,并根据Range的StartKey的顺序生成执行计划,然后按照顺序将执行计划发送到对应节点执行,并对返回结果按照执行计划发送的顺序进行组合;/n所述Range为分布式数据库数据存储单元,Range中存储的数据按照表中数据行的编号进行排序。/n
【技术特征摘要】
1.一种能够保证分布式数据库全表查询语句结果集顺序的方法,其特征在于该方法中数据以Range为基本存储单元,网关节点根据从元数据解析的Range信息,并根据Range的StartKey的顺序生成执行计划,然后按照顺序将执行计划发送到对应节点执行,并对返回结果按照执行计划发送的顺序进行组合;
所述Range为分布式数据库数据存储单元,Range中存储的数据按照表中数据行的编号进行排序。
2.根据权利要求1所述的一种能够保证分布式数据库全表查询语句结果集顺序的方法,其特征在于若干条有序数据组成一个Range,存储在节点上,一个节点可以存储一个或多个Range。
3.根据权利要求2所述的一种能够保证分布式数据库全表查询语句结果集顺序的方法,其特征在于Range的数据结构包含RangeID、Node信息、StartKey和EndKey,其中,
RangeID用于标记自身,当一个节点中存储多个Range时,通过RangeID来进行区分;
Node信息包括所在节点的地址和端口;
StartKey是Range存储数据的起始值,EndKey是Range存储数据的结束值,存储范围的表示是左闭右开的[StartKey,EndKey)。
4.根据权利要求1所述的一种能够保证分布式数据库全表查询语句结果集顺序的方法,其特征在于所述网关节点为用户客户端访问的节点,分布式数据库中,各网关节点对等,两两之间能够相互通信,用户通过链接任意一个网关节点进行操作,由该节点将操作具体化,并下发给其余各个节点执行,并将返回的结果进行组合,返回给用户。
5.根据权利要求1或2或3或4所述的一种能够保证分布式数据库全表查询语句结果集顺序的方法,其特征在于生成执行计划的具体方式如下:
当查询语句到达网关节点时,记该网关节点为Node1,首先从该节点中获取元数据,从元数据中解析出t1表中数据存储的相关Range信息,Node1根据Range信息,按照StartKey生成执行计划,并将执行计划按照顺序分发给对应的节点执行。
6.根据权利要求5所述的一种能够保证分布式数据库全表查询语句结果集顺序的方法,其特征在于返回结果的具体方式如下:
执行计划之后,将得到...
【专利技术属性】
技术研发人员:江磊,陈磊,张乾坤,樊文昌,周恒,高子奇,史大义,周正德,
申请(专利权)人:山东汇贸电子口岸有限公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。