CN106250565B - 基于分片关系型数据库的查询方法和*** - Google Patents
基于分片关系型数据库的查询方法和*** Download PDFInfo
- Publication number
- CN106250565B CN106250565B CN201610771058.5A CN201610771058A CN106250565B CN 106250565 B CN106250565 B CN 106250565B CN 201610771058 A CN201610771058 A CN 201610771058A CN 106250565 B CN106250565 B CN 106250565B
- Authority
- CN
- China
- Prior art keywords
- value
- column name
- count
- record
- fragment
- 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.)
- Active
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于分片关系型数据库的查询方法和***解决现有技术中将大量数据读取到中心节点的内存中,中间节点顺序执行性能非常差,在数据量大的时候,无法满足在线查询的需求的问题。该方法包括步骤:接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称T GROUP BY列名称G;列名称G是列名称A的子集;其能避免中心节点内存消耗甚至内存溢出。
Description
技术领域
本发明涉及分布式数据的查询,特别涉及包含count,distinct和groupby的查询。
背景技术
大数据时代,数据统计是一个常见业务。现在的统计型业务常常构建在关系型数据库之上,比如mysql。这类关系型数据库,因为单机的限制,数据量在千万级别之后,统计性能就会急剧下降。通常地,可以通过对关系型数据库做水平分片,将数据分布在多个机器上,来解决单机瓶颈的问题。
在分片之后,统计类型SQL的执行过程会变成在各个分片节点执行一次统计,然后在中心节点进行一次汇总统计,以保证SQL的语义。对于具有分组,去重,计数功能的SQL会遇到功能和性能上的问题。该类SQL如下:select group_col,count(distinct dist_col)from table group by group_col。其中group_col和dist_col可以是一个或者多个字段名。
通常的,如果将该类SQL直接下发到各个分片执行,并在中心节点将各个分片返回的结果进行汇总,会出现结果错误。因为在多个分片中,可能出现group_col和dist_col一样的数据,分片执行再汇总会出现重复计数导致结果变大。
另外地,为了保证结果正确,可能采用以下方法执行该类SQL。
1.从各个分片节点读取group_col和dist_col包含的字段值。具体SQL为:selectgroup_col,dist_col from table;
2.顺序遍历所有的数据,先根据group_col计算数据所属于的分组,再在该分组内根据dist_col执行去重操作。
3.所有数据遍历完成后,计算各个分组中去重后的dist_col数量。
该方法遇到的问题是,会将大量数据读取到中心节点的内存中,中间节点顺序执行性能非常差,在数据量大的时候,无法满足在线查询的需求。
发明内容
以下给出对一个或更多个方面的简化概述以力图提供对此类方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或更多个方面的一些概念以作为稍后给出的更加具体的说明之序。
本发明提供一种基于分片关系型数据库的查询方法和***解决现有技术中将大量数据读取到中心节点的内存中,中间节点顺序执行性能非常差,在数据量大的时候,无法满足在线查询的需求的问题。
为实现上述目的,发明人提供基于分片关系型数据库的查询方法,包括步骤:
S101、接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;列名称G是列名称A的子集;
S102、在各分片节点分别执行SELECT列名称CFROM表名称T,列名称C是列名称A与列名称B的并集;将上述各分片节点的查询结果中的每条记录进行处理,处理即根据每条记录的b值取其hash值,hash值相同的记录放入相同的数据管道,b值为记录中列名称B所对应的值;
S103、在相同数据管道的记录,分别根据G列的值进行分组,在各分组内计算该分组内不同b值出现的个数count,每个分组计算结果对应一条对应关系(G,COUNT);
S104、将各管道中上述分组计算获得的对应关系(G,COUNT)合并,即根据列名称G,合并g值相同的记录,合并后的记录的COUNT列的值为合并的所有对应关系的COUNT列的值相加;合并的结果即为查询结果。
进一步,列名称G等于列名称A。
进一步,数据管道的个数N为机器cpu核心数的两倍,所述步骤“处理即根据每条记录b值取其hash值,hash值相同的记录放入相同的数据管道”为根据每条记录的b值求取该b值对应的hash值,并将该hash值模N,根据模N的值分配该条记录到对应的数据管道,数值0-到N-1分别唯一对应1个数据管道。
进一步,在步骤“接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;”之前还包括步骤:
读取数据库查询语句,
判断查询语句是否符合语意;
若不符合语意,则返回;
若符合语意,则执行上述接收查询语句的步骤。
进一步,其中上述S101、S102为根据分片节点中的表T的大小分批执行,上述步骤S103在分片节点执行。
本文还提供一种分布式数据库***,其包括至少第一分片节点和第二分片节点、接收模块、第一处理模块、第二处理模块、第三处理模块;第一分片节点和第二分片节点分别存储有数据库的水平切片数据;
接收模块接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;列名称G是列名称A的子集;第一处理模块用于向第一分片节点和第二分片节点分别发送查询语句SELECT列名称CFROM表名称T,列名称C是列名称A与列名称B的并集,将各分片节点的查询结果中的每条记录进行处理,处理即根据每条记录的b值取其hash值,hash值相同的记录放入相同的数据管道,b值为记录中列名称B所对应的值;
第二处理模块用于在相同数据管道的记录,分别根据G列的值进行分组,在各分组内计算该分组内不同b值出现的个数count,每个分组计算结果为对应的一条对应关系(G,COUNT);
第三处理模块用于将各管道中上述分组计算获得的对应关系(G,COUNT)合并,即根据列名称G,合并g值相同的记录,合并后的记录的COUNT列的值为合并的所有对应关系的COUNT列的值相加;合并的结果即为查询结果。
进一步,列名称G等于列名称A。
进一步,数据管道的个数N为机器cpu核心数的两倍,第一处理模块用于根据每条记录的b值求取该b值对应的hash值,并将该hash值模N,根据模N值分配该条记录到对应的数据管道,数值0-到N-1分别唯一对应1个数据管道。
进一步,接收模块用于在“接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;”之前,还用于读取数据库查询语句,判断查询语句符合语意;若不符合语意,则返回;若符合语意,则继续执行。
进一步,第一处理模块、第二处理模块为根据分片节点中表T的大小,对表T数据分批执行;第三处理模块位于分片节点。
区别于现有技术,上述技术方案读取数据的过程采用流式(小批量)读取,批量按需地把数据从各个分片读取到内存,避免一次性大量数据涌入中心节点造成过大的内存消耗甚至内存溢出。
为能达成前述及相关目的,这一个或更多个方面包括在下文中充分描述并在所附权利要求中特别指出的特征。以下描述和附图详细阐述了这一个或更多个方面的某些说明性特征。但是,这些特征仅仅是指示了可采用各种方面的原理的各种方式中的若干种,并且本描述旨在涵盖所有此类方面及其等效方面。
附图说明
以下将结合附图来描述所公开的方面,提供附图是为了说明而非限定所公开的方面,附图中相似的标号标示相似要素,并且在其中:
图1为结合具体数据说明本文所述基于分片关系型数据库的查询方法;
图2为本文所述基于分片关系型数据库的查询方法。
图1中的标号用于指代其指向的表。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。在以下描述中,出于解释目的阐述了众多的具体细节以提供对一个或更多个方面的透彻理解。但是显而易见的是,没有这些具体细节也可实践此类方面。
本发明公开一种基于分片关系型数据库的查询方法,分片关系型数据库为水平分片的分布式数据库包括步骤:
S101、接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;列名称G是列名称A的子集;
S102、在各分片节点分别执行SELECT列名称CFROM表名称T,列名称C是列名称A与列名称B的并集;将上述各分片节点的查询结果中的每条记录进行处理,处理即根据每条记录的b值取其hash值,hash值相同的记录放入相同的数据管道,b值为记录中列名称B所对应的值;
S103、在相同数据管道的记录,分别根据G列的值进行分组,在各分组内计算该分组内不同b值出现的个数count,每个分组计算结果对应一条对应关系(G,COUNT);
S104、将各管道中上述分组计算获得的对应关系(G,COUNT)合并,即根据列名称G,合并g值相同的记录,合并后的记录的COUNT列的值为合并的所有对应关系的COUNT列的值相加;合并的结果即为查询结果。
步骤S101-S103可以是在分片节点中执行的,也可以是将分片节点的数据或经过对应步骤获得的数据通过数据流的方读取到第三节点后(例如中心节点),在第三节点执行的。中心节点指的是数据处理能力强的节点,也可以指主节点(其他分片节点为从节点)。
优选的,步骤S102、S103在分片节点中执行,这样在一定程度上降低了中心节点的负荷,同时采用由于上述分布式计算,提高了技术效率和速度。
为例便于理解步骤S104,以下进一步举例说明:在一些实施例中,共有4各个数据管道,在每个数据管道中,分别根据G列值进行分组,分别计算分组中不同b值出现的个数,例如对于G列值为2的小组统计b值出现的个数,各数据管道分别计算出如下对应关系(2,3),(2,4),(2,1),(2、2),合并g值为2的对应关系即得到(2,3+4+1+2),即(2,10)。通过上述方法合并各数据管道的所的对应关系即获得用户输入的查询语句对应的查询结果,该查询结果为(G,COUNT);
可以理解的是,上述步骤中可以小批量的读取分片节点中的数据,并实时对读取的数据执行SELECT列名称CFROM表名称T,将该小批量数据的查询结果逐条记录进行处理(处理可以在分片节点中,也可以在中心节点),而无须一次性读取或处理大量数据,找出某一结点计算或内存超负荷。
区别于现有技术,上述步骤读取数据的过程采用流式(小批量)读取,批量按需地把数据从各个分片读取到内存,避免一次性大量数据涌入中心节点造成过大的内存消耗甚至内存溢出。
可以理解的是“DISTINCT列名称B”中的B字段可能并非数字类型,有可能是字符串或者时间,甚至是多个字段的组合。
对于数字类型,字符串类型,时间类型,取hash值后会得到数字结果。多于多字段的场景,可以是将各个字段hash后的值累加,作为最后的hash结果。总的来说,hash的目的就是针对所有B字段非数字类型以及B字段是多字段组合的场景,计算出一个数字类型的结果(这里保证两个完全一样B字段值,hash结果会是一样的)。
以一下结合具体数据(见图1和图2)说明本文所述基于分片关系型数据库的查询方法:
Step1.原始数据存储在两个分片111和121,每个分片各有3行记录,每行记录有3列,分别是id,user_id,date。
Step2.现在需要执行的SQL为:select date,count(distinct user_id)fromtable group by date。
Step3.数据查询模块根据分片的数量,使用2个线程分别从两个分片读取数据,读取数据使用的SQL为:select user_id,date from table,读取结果(即步骤S102中的查询结果)分别为112和122。Step2、Step3的查询过程即对应图2中的数据查询;
Step4.数据分配时会遍历每一条记录的distinct_col字段(本例中为user_id字段),根据该字段的hash值取模3(数据管道的数量为3,编号分别为0,1,2),会得到0或者1或者2三个值其中的一个。根据以上结果,选择对应编号的数据管道,将数据放入其中。本例中,hash算法为直接取user_id的值,user_id为1和4的俩记录被分配到index=1的数据管道中。即1%3=1,4%3=1,图中113,123根据取模结果,记录被分配到不同的管道214、管道224和管道234。Step 4即对应图2的数据分配;
Step5.这里有3个线程负责数据计算(和数据管道的数量保持一致),每个计算模块对应一个数据管道。计算过程中对每个数据根据group_col字段(这里是date字段)进行分组,图1中214根据date字段分组得到216,224根据date字段分组得到226,234根据date字段分组得到236(215、225、235指示为上述过程的中间结果)。在根据distinct_col字段(这里是user_id)去重。
Step6.当计算模块消费完自己负责的数据管道中所有数据后,会得到一个date和user_id链表(去重后)的映射关系,对每个user_id链表进行计数,(即图1中合并216、226、236标号对应的表得到如标号300所示的表)得到一个date和user_id数量(去重后)的映射关系。上述Step 5、Step 6的过程即对应图2中的数据计算;
Step7.结果合并过程由主线程完成,将各个数据计算过程的结果汇总后,对于date相同的记录,将count(distinct user_id)的值相加得到最终的结果。上述Step7即对应图2的结果合并。
可以理解的是图2中用简化的方式描述了本发明的数据查询、数据分配和数据计算可以是多线程执行的。
本发明还提供一种实现上述方法的分布式数据库***,
本文还提供一种分布式数据库***,用于实现上述基于分片关系型数据库的查询方法,其包括至少第一分片节点和第二分片节点、接收模块、第一处理模块、第二处理模块、第三处理模块;第一分片节点和第二分片节点分别存储有数据库的水平切片数据。接收模块、第一处理模块、第二处理模块、可以是位于分片节点也可以是位于中心节点。
接收模块连接第一处理模块,第一处理模块连接第二处理模块,第二处理模块连接第三处理模块。
接收模块接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;列名称G是列名称A的子集;第一处理模块用于向第一分片节点和第二分片节点分别发送查询语句SELECT列名称CFROM表名称T,列名称C是列名称A与列名称B的并集,将各分片节点的查询结果中的每条记录进行处理,处理即根据每条记录的b值取其hash值,hash值相同的记录放入相同的数据管道,b值为记录中列名称B所对应的值;
第二处理模块用于在相同数据管道的记录,分别根据G列的值进行分组,在各分组内计算该分组内不同b值出现的个数count,每个分组计算结果为对应的一条对应关系(G,COUNT);
第三处理模块用于将各管道中上述分组计算获得的对应关系(G,COUNT)合并,即根据列名称G,合并g值相同的记录,合并后的记录的COUNT列的值为合并的所有对应关系的COUNT列的值相加;合并的结果即为查询结果。
在一些实施例中,列名称G等于列名称A。
在一些实施例中,数据管道的个数N为机器cpu核心数的两倍,第一处理模块用于根据每条记录的b值求取该b值对应的hash值,并将该hash值模N,根据模N值分配该条记录到对应的数据管道,数值0-到N-1分别唯一对应1个数据管道。
在一些实施例中,接收模块用于在“接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;”之前,还用于读取数据库查询语句,判断查询语句符合语意;若不符合语意,则返回;若符合语意,则继续执行。
在一些实施例中,第一处理模块、第二处理模块为根据分片节点中表T的大小,对表T数据分批执行;第三处理模块位于中心节点。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
上述各实施例是参照根据实施例所述的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。
Claims (10)
1.基于分片关系型数据库的查询方法,其特征在于,包括步骤:
S101、接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;列名称G是列名称A的子集;
S102、在各分片节点分别执行SELECT列名称CFROM表名称T,列名称C是列名称A与列名称B的并集;将上述各分片节点的查询结果中的每条记录进行处理,处理即根据每条记录的b值取其hash值,hash值相同的记录放入相同的数据管道,b值为记录中列名称B所对应的值;
S103、对在相同数据管道的记录,分别根据G列的值进行分组,在各分组内计算该分组内不同b值出现的个数count,每个分组计算结果对应一条对应关系(G,COUNT);
S104、将各管道中上述分组计算获得的对应关系(G,COUNT)合并,即根据列名称G,合并g值相同的记录,合并后的记录的COUNT列的值为合并的所有对应关系的COUNT列的值相加;合并的结果即为查询结果。
2.根据权利要求1所述的基于分片关系型数据库的查询方法,其特征在于列名称G等于列名称A。
3.根据权利要求1所述的基于分片关系型数据库的查询方法,其特征在于,数据管道的个数N为机器cpu核心数的两倍,所述步骤“处理即根据每条记录b值取其hash值,hash值相同的记录放入相同的数据管道”为根据每条记录的b值求取该b值对应的hash值,并将该hash值模N,根据模N的值分配该条记录到对应的数据管道,数值0到N-1分别唯一对应1个数据管道。
4.根据权利要求1所述的基于分片关系型数据库的查询方法,其特征在在于,在步骤“接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;”之前还包括步骤:
读取数据库查询语句,
判断查询语句是否符合语意;
若不符合语意,则返回;
若符合语意,则执行上述接收查询语句的步骤。
5.根据权利要求1所述的基于分片关系型数据库的查询方法,其特征在于,其中上述S101、S102为根据分片节点中的表T的大小分批执行,上述步骤S103在分片节点执行。
6.分布式数据库***,其特征在于,其包括至少第一分片节点和第二分片节点、接收模块、第一处理模块、第二处理模块、第三处理模块;第一分片节点和第二分片节点分别存储有数据库的水平切片数据;其特征在于,
接收模块接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;列名称G是列名称A的子集;第一处理模块用于向第一分片节点和第二分片节点分别发送查询语句SELECT列名称CFROM表名称T,将各分片节点的查询结果中的每条记录进行处理,处理即根据每条记录的b值取其hash值,hash值相同的记录放入相同的数据管道,b值为记录中列名称B所对应的值;
第二处理模块用于在相同数据管道的记录,分别根据G列的值进行分组,在各分组内计算该分组内不同b值出现的个数count,每个分组计算结果为对应的一条对应关系(G,COUNT);
第三处理模块用于将各管道中上述分组计算获得的对应关系(G,COUNT)合并,即根据列名称G,合并g值相同的记录,合并后的记录的COUNT列的值为合并的所有对应关系的COUNT列的值相加;合并的结果即为查询结果。
7.根据权利要求6所述的分布式数据库***,其特征在于,列名称G等于列名称A。
8.根据权利要求6所述的分布式数据库***,其特征在于,数据管道的个数N为机器cpu核心数的两倍,第一处理模块用于根据每条记录的b值求取该b值对应的hash值,并将该hash值模N,根据模N值分配该条记录到对应的数据管道,数值0-到N-1分别唯一对应1个数据管道。
9.根据权利要求6所述的分布式数据库***,其特征在于,接收模块用于在“接收语义如下的查询语句:SELECT列名称A,COUNT(DISTINCT列名称B)FROM表名称TGROUPBY列名称G;”之前,还用于读取数据库查询语句,判断查询语句符合语意;若不符合语意,则返回;若符合语意,则继续执行。
10.根据权利要求6所述的分布式数据库***,其特征在于,第一处理模块、第二处理模块为根据分片节点中表T的大小,对表T数据分批执行;第三处理模块位于分片节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610771058.5A CN106250565B (zh) | 2016-08-30 | 2016-08-30 | 基于分片关系型数据库的查询方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610771058.5A CN106250565B (zh) | 2016-08-30 | 2016-08-30 | 基于分片关系型数据库的查询方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106250565A CN106250565A (zh) | 2016-12-21 |
CN106250565B true CN106250565B (zh) | 2019-05-07 |
Family
ID=58080520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610771058.5A Active CN106250565B (zh) | 2016-08-30 | 2016-08-30 | 基于分片关系型数据库的查询方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106250565B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851483B (zh) * | 2019-11-07 | 2021-03-05 | 京东数字科技控股有限公司 | 用于筛选对象的方法、装置、电子设备以及介质 |
CN110825816B (zh) * | 2020-01-09 | 2020-04-21 | 四川新网银行股份有限公司 | 对分片数据库数据采集的***和方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093493A (zh) * | 2006-06-23 | 2007-12-26 | 国际商业机器公司 | 数据库查询语言转换方法、转换装置、数据库查询*** |
CN102663116A (zh) * | 2012-04-11 | 2012-09-12 | 中国人民大学 | 面向列存储数据仓库的多维olap查询处理方法 |
CN102722531A (zh) * | 2012-05-17 | 2012-10-10 | 北京大学 | 一种云环境中基于分片位图索引的查询方法 |
CN103310023A (zh) * | 2013-07-05 | 2013-09-18 | 深圳中兴网信科技有限公司 | 分布式搜索***和分布式搜索方法 |
CN104756101A (zh) * | 2012-10-31 | 2015-07-01 | 惠普发展公司,有限责任合伙企业 | 执行具有多个集合操作符的查询 |
CN105335403A (zh) * | 2014-07-23 | 2016-02-17 | 华为技术有限公司 | 数据库访问方法及装置、数据库*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8145806B2 (en) * | 2008-09-19 | 2012-03-27 | Oracle International Corporation | Storage-side storage request management |
-
2016
- 2016-08-30 CN CN201610771058.5A patent/CN106250565B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093493A (zh) * | 2006-06-23 | 2007-12-26 | 国际商业机器公司 | 数据库查询语言转换方法、转换装置、数据库查询*** |
CN102663116A (zh) * | 2012-04-11 | 2012-09-12 | 中国人民大学 | 面向列存储数据仓库的多维olap查询处理方法 |
CN102722531A (zh) * | 2012-05-17 | 2012-10-10 | 北京大学 | 一种云环境中基于分片位图索引的查询方法 |
CN104756101A (zh) * | 2012-10-31 | 2015-07-01 | 惠普发展公司,有限责任合伙企业 | 执行具有多个集合操作符的查询 |
CN103310023A (zh) * | 2013-07-05 | 2013-09-18 | 深圳中兴网信科技有限公司 | 分布式搜索***和分布式搜索方法 |
CN105335403A (zh) * | 2014-07-23 | 2016-02-17 | 华为技术有限公司 | 数据库访问方法及装置、数据库*** |
Also Published As
Publication number | Publication date |
---|---|
CN106250565A (zh) | 2016-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103778135B (zh) | 一种实时数据的分布存储和分页查询方法 | |
CN104685498B (zh) | 聚合/分组操作的硬件实现方式:散列表方法 | |
CN104090962B (zh) | 面向海量分布式数据库的嵌套查询方法 | |
US10402427B2 (en) | System and method for analyzing result of clustering massive data | |
CN104952032B (zh) | 图的处理方法、装置以及栅格化表示及存储方法 | |
Prasad et al. | Smart meter data analytics using OpenTSDB and Hadoop | |
CN105320702A (zh) | 一种用户行为数据的分析方法、装置及智能电视 | |
CN109598611A (zh) | 一种交易的处理方法、交易网关、交易服务器及交易*** | |
CN103514229A (zh) | 用于在分布式数据库***中处理数据库数据的方法和装置 | |
CN107408114A (zh) | 基于事务访问模式识别联结关系 | |
Nadungodage et al. | GPU accelerated item-based collaborative filtering for big-data applications | |
CN105117442B (zh) | 一种基于概率的大数据查询方法 | |
Gupta et al. | Faster as well as early measurements from big data predictive analytics model | |
JP5958474B2 (ja) | データ管理装置、データ管理方法、データ管理プログラム | |
CN107368501B (zh) | 数据的处理方法及装置 | |
CN106155630A (zh) | 序列化方法、反序列化方法、序列化装置及反序列化装置 | |
CN103257923B (zh) | 数据中心数据分析类基准测试程序的应用选取方法及*** | |
CN106250565B (zh) | 基于分片关系型数据库的查询方法和*** | |
CN106570173A (zh) | 一种基于Spark的高维稀疏文本数据聚类方法 | |
CN108958973A (zh) | 分布式文件***纠删码数据重构存储节点选择方法及装置 | |
CN110019806A (zh) | 一种文档聚类方法及设备 | |
CN110019205A (zh) | 一种数据存储、还原方法、装置及计算机设备 | |
CN103309885A (zh) | 一种在电子交易平台中识别特征用户的方法及装置和搜索方法及装置 | |
US20150248467A1 (en) | Real-time calculation, storage, and retrieval of information change | |
CN109726219A (zh) | 数据查询的方法及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |