CN103731500B - 基于Bigtable存储系统的数据批量插入方法 - Google Patents
基于Bigtable存储系统的数据批量插入方法 Download PDFInfo
- Publication number
- CN103731500B CN103731500B CN201410010115.9A CN201410010115A CN103731500B CN 103731500 B CN103731500 B CN 103731500B CN 201410010115 A CN201410010115 A CN 201410010115A CN 103731500 B CN103731500 B CN 103731500B
- Authority
- CN
- China
- Prior art keywords
- sublist
- server
- record
- data
- prime
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于Bigtable存储系统的数据批量插入方法,主要解决现有技术在处理批量插入时的数据分布不均和系统吞吐量低、读写操作时延大的问题,其实现步骤是:1)在批量插入之前新增一组暂存服务器,用于暂存待插入的数据;2)分别对暂存服务器和子表服务器中的数据进行统计抽样,获取这两类服务器中数据的统计信息;3)根据得到的两类统计信息,对子表服务器中的子表进行预拆分和移动,使拆分后的子表均匀存储在多台子表服务器上;4)将待插入数据并行插入到分割后的多个子表中。本发明加快了Bigtable存储系统中数据批量插入的速度,可用于存储系统的存储和管理。
Description
技术领域
本发明属于数字信息存储技术领域,特别涉及基于Bigtable存储系统的数据批量插入方法,可用于存储系统的存储和管理。
背景技术
Bigtable存储系统是Google开发的第三项云计算关键技术,用于管理Google中的结构化数据。Bigtable是一个稀疏、分布式、持久化存储的多维有序映射表,表中的行关键字可以是任意字符串,目前最大支持64KB。Bigtable按照行关键字的字典序组织数据,表的行区间可以动态划分,每个行区间称为一个子表。子表是Bigtable中数据分布和负载均衡的基本单位,不同的子表可以有不同的大小,但为了限制移子表的移动成本和恢复成本,每个子表默认的最大尺寸为200MB。
Bigtable的架构如图1所示。数据以子表的形式存储在不同的子表服务器上,每个子表服务器管理一组子表,负责其上子表的读写请求,并在子表过大时进行子表分割。Bigtable中的数据按行区间进行划分,并以子表的形式分布到多个子表服务器,使数据请求得以并行处理。由于每个子表服务器可以包含几百个子表,且每个子表都可以分配到任意子表服务器。系统可以将过载服务器上的子表移动到较为空闲的服务器上,进行细粒度的负载均衡。Bigtable中的主服务器是一个单独的服务器,持有当前的子表分配信息,由主服务器负责系统的负载均衡。
在包括Google在内的许多大规模应用集群中,批量插入都是一种非常常见的操作。比如一个网络日志分析系统,每小时从世界各地的Web服务器中收集数据,然后批量插入数据库进行统计分析。在区间划分的数据存储系统中,必须小心地避免单台服务器过载,尤其是某一段键值区间是热点的时候。在Bigtable中并无专门针对批量插入的研究,Bigtable把批量插入看作一系列常规插入来处理。但由于Bigtable是区间划分的,即每个分区都对应一组关键字,并持有相应关键字的记录。因此,在现有的数据分区中进行批量插入,其分布非常不均。
由于负载集中于少量子表,主服务器和相关的子表服务器可能会过载,而其它子表服务器几乎没有什么负载,这样势必会严重影响相关子表服务器的性能,造成系统的整体吞吐量被拉低。如果在批量插入的同时还有常规的数据操作,与过载服务器相关的操作就会经历较大的时延,批量插入本身也会消耗很长时间。因此,Bigtable需要一种高效的批量插入方法,既能很好的解决常规方法在性能方面的不足,又不会给系统带来太大的开销。
发明内容
本发明目的在于提出一种基于Bigtable存储系统的数据批量插入方法,以解决Bigtable现有方法在处理批量插入时的数据分布不均和服务器过载所造成的系统吞吐量低、读写操作时延大的问题。
为实现上述目的,本发明的技术方案包括如下步骤:
(1)在数据批量插入Bigtable之前新增一组暂存服务器,将待插入的数据在批量插入之前先转移至暂存服务器;
(2)分别对暂存服务器中的数据和Bigtable存储系统中子表服务器内部的数据进行统计抽样,获取这两类服务器中数据的统计信息;
(3)Bigtable利用得到的这两类统计信息,对系统中子表服务器内部的子表进行预拆分;
(4)将拆分后的子表在子表服务器之间进行移动,使得拆分后的子表均匀存储在多台子表服务器上;
(5)将待插入数据并行插入到分割后的多个子表中。
本发明与现有技术相比具有以下优点:
第一,本发明通过引入一组暂存服务器,将输入的数据转移至暂存服务器,可以最大化批量插入的并行度;通过对暂存服务器中的数据进行随机化处理,使得插入负载更加均衡;
第二,本发明通过对子表进行预拆分,从而为数据的批量插入预留了空间,并通过为不同的子表选择不同的拆分点,使得子表在经过批量插入后的大小基本相等,从而简化了负载均衡和数据恢复;
第三,本发明通过给出了批量插入问题的一种全局最优解,在平衡插入成本的同时,兼顾了子表移动引入的移动成本。
附图说明
图1为现有Bigtable存储系统的架构图;
图2为现有Bigtable存储系统的存储格式图;
图3为本发明的实现总流程图;
图4为本发明中对暂存服务器中数据的统计抽样子流程图;
图5为本发明中对子表服务器中数据的统计抽样子流程图;
图6为本发明中对子表服务器内部的子表进行预拆分的子流程图;
图7为采用本发明的批量插入方法和Bigtable存储系统的常规插入方法在数据批量插入时的对比图。
具体实施方式
下面结合附图及具体实例对本发明作进一步的具体描述:
首先对Bigtable进行说明:在Bigtable中,数据以子表的形式存储在不同的子表服务器上,每个子表服务器管理大约200个子表,并负责其管理的子表的读写请求,以及在子表过大时进行子表分割。子表是Bigtable数据分布和负载均衡的基本单位,如图2所示,Bigtable中存储的表项都是未经解析的字节数组,由行关键字、列关键字和时间戳进行标识,并以行关键字的字典序进行组织。
在Bigtable存储系统中,批量插入是一种非常常见的操作,其具有插入数据量大、关键字集中的特点。
鉴于Bigtable存储系统和数据批量插入的特点,本发明设计了一种新的批量插入方案。
参照图3,本发明的实现批量插入的步骤包括如下:
步骤1.在数据批量插入Bigtable之前新增一组暂存服务器,将待插入的数据在批量插入之前先转移至暂存服务器。
步骤2.采用带权抽样法对暂存服务器中的数据进行统计抽样,获取暂存服务器中数据的统计信息。
参照图4,本步骤的具体实现如下:
2a)对暂存服务器中的数据进行随机化处理,使数据均匀分布;
2b)从暂存服务器中获取t1=t/s个样本,其中t为总样本数,s为Bigtable存储系统中暂存服务器和子表服务器的总数;
2c)根据样本信息,计算待插入的实际记录数:
2c1)设暂存服务器中任意记录的关键字x,其累积分布函数F(x)为:
其中,b为子表的键值边界,Ω为暂存服务器中的数据总量;
2c2)设暂存服务器中数据的联合概率密度函数f(x,y)为:
其中,x为属于某个键值范围内的记录在服务器中的比值,y为属于某个键值范围内的记录在抽取的样本中的比值,n为服务器中记录的总量,t为随机抽取的样本数量,表示从n个记录中任意取t个样本的组合排列,表示从nx个记录中任意取ty个样本的组合排列,表示从n(1-x)个记录中任意取t(1-y)个样本的组合排列;
2c3)根据累积分布函数F(x)和概率密度函数f(x,y),得到向子表tj插入的记录数Rj:
其中,t为抽取的样本数,S为暂存服务器的集合,qj为落入子表tj范围的记录占待插入记录总数的实际比值,q′j为qj在误差指数最小时的取值,μj为对qj的估计值,D(qj||μj)表示用μj模拟qj时所需的额外比特数,D(q′j||μj)表示用μj模拟q′j时所需的额外比特数。
步骤3.采用带权抽样法对Bigtable存储系统中子表服务器内部的数据进行统计抽样,获取子表服务器中数据的统计信息。
参照图5,本步骤的具体实现如下:
3a)从子表服务器中获取t′1=t′/s′个样本,其中t′为总样本数,s′为Bigtable存储系统中暂存服务器和子表服务器的总数;
3b)根据样本信息,计算各个子表服务器中原有的记录数:
3b1)设子表服务器中任意记录的关键字x,其累积分布函数F′(x)为:
其中,b′为子表的键值边界,ω为子表服务器中的数据总量;
3b2)设子表服务器中数据的联合概率密度函数f′(x,y)为:
其中,x为属于某个键值范围内的记录在服务器中的比值,y为属于某个键值范围内的记录在抽取的样本中的比值,n′为服务器中记录的总量,t′为随机抽取的样本数量,表示从n′个记录中任意取t′个样本的组合排列,表示从n′x个记录中任意取t′y个样本的组合排列,表示从n′(1-x)个记录中任意取t′(1-y)个样本的组合排列;
3b3)根据累积分布函数F′(x)和概率密度函数f′(x,y),得到子表服务器中子表tj中的记录数R′j:
其中,t′为随机抽取的样本数,S′为子表服务器的集合,q′j为落入子表tj范围的记录占子表服务器中记录总数的实际比值,q″j为q′j在误差指数最小时的取值,μ′j为对q′j的估计值,D(q′j||μ′j)表示用μ′j模拟q′j时所需的额外比特数,D(q″j||μ′j)表示用μ′j模拟q″j时所需的额外比特数。
步骤4.Bigtable存储系统利用步骤2和步骤3得到的两类统计信息,对系统中子表服务器内部的子表进行预拆分。
参照图6,本步骤具体实现如下:
4a)收集子表中现有记录和待插入新记录关键字的样本信息,并检查落入给定子表tj关键字边界内的新记录样本数;
4b)根据得到的新记录样本数,估算出待插入的新记录数rn:
4b1)设新记录的样本总数为T,落入给定子表tj关键字边界内的新记录样本数为R,则子表tj中待插入的样本数占总样本的比例为P=R/T;
4b2)根据子表tj中待插入的样本占比P,以及待插入的记录总数N,得到子表tj的待插入记录数rn为:rn=N×P;
4c)对于一个持有re条记录的给定子表tj,根据其新记录数rn与原记录数re之和的大小,决定是否对子表tj进行预拆分;如果re+rn不大于子表的最大记录数,则保持子表tj不变,否则,对子表tj进行预拆分,得到一个四元组:[ej,nj,hj,dj],其中,ej为子表原有数据的预测值;nj表示待插入数据的预测值;hj为子表tj所在的子表服务器;dj是系统为子表tj分配的目的子表服务器。
由于在数据批量插入执行之前,子表tj会从hj移动到dj上,随着移动操作的执行,dj会不断更新,所以任意时刻四元组[ej,nj,hj,dj]都能够表示子表tj的拆分和移动。
步骤5.将拆分后的子表在子表服务器之间进行移动,使得拆分后的子表均匀存储在多台子表服务器上。
4a)计算每台服务器mi中记录的移动成本oi和插入成本si,其中oi是移动过程中移出或移入mi的记录数,si是插入过程中插入服务器mi的记录数:
4a1)对于每台服务器mi,定义两个子表集:子表集Ai用于表示mi中移动成本的主要来源,子表集Bi用于表示mi中插入成本的主要来源;
4a2)根据任意子表ti拆分完成后都会表示为一个四元组[ei,ni,hi,di]的特性,将子表集Ai和Bi分别表示为:
Ai={ti|hi≠di},
Bi={ti|di=mi},
其中,ti表示服务器mi中的任意子表,ei为子表ti中原有的数据的估计值,ni表示待插入数据的估计值,hi为子表ti原来所在的服务器,di是系统为子表ti分配的目的服务器;
4a3)计算服务器mi的移动成本oi和插入成本si:
4b)计算Bigtable存储系统中移动成本的最大值omax和插入成本的最大值smax:
omax=max{oi|mi∈M},
smax=max{si|mi∈M},
其中,oi为服务器mi的移动成本,si是服务器mi的插入成本,M是Bigtable存储系统中所有服务器的集合;
4c)最小化Bigtable存储系统的移动成本和插入成本,即采用禁忌搜索算法寻找omax+smax的全局最优解。
寻求omax+smax的全局最优解是组合数学中典型的组合优化问题,根据组合数学的经典理论模型,可以将寻求omax+smax的全局最优解抽象为2BP|O|G型二维装箱问题,下面给出该问题的抽象模型:
在Bigtable存储系统中,每台服务器mj代表一个装箱,在装箱中任意子表tj由相应四元组[ej,nj,hj,dj]定义的向量(xj,yj)来表示,其中xj表示新插入的数据,yj表示需要移动的数据。由于在四元组[ej,nj,hj,dj]中,nj表示待插入数据的预测值,xj可以简单地与nj对应;如果hj=dj,子表不会移动,此时yj=0;否则,yj=ej,且hj上还应附加一个向量(0,ej),用于表示从hj上卸载tj。
步骤6.将待插入数据并行插入到分割后的多个子表中。
数据的并行插入由主服务器触发,主服务将子表的分配信息发送至每台暂存服务器,暂存服务器根据子表分配信息将其上的数据插入到对应的子表服务器中。
本发明效果可以通过以下仿真进一步说明:
1.仿真条件
本发明的仿真是在主频2.5GHz intel(R)Core(TM)i5CPU的硬件环境以及MATLABR2009b,Window XP Professional的软件环境下进行的。
2.仿真内容与结果分析
采用本发明的批量插入方法和Bigtable存储系统的随机OAT插入方法与有序OAT插入方法进行数据批量插入,结果如图7所示。
从图7可见,三种方法的时间消耗都随着插入量的增加而线性增长,但本发明的增速明显低于其它方法,即本发明在批量插入时的吞吐量高于其它方法。这是由于本发明会对子表进行预拆分和移动,在子表的数据量较少时进行负载均衡,因而随机OAT的吞吐量会低于本发明方法;而有序OAT中的记录只会命中少量的子表,因而也只能命中少量的子表服务器,所以有序OAT的吞吐量与单一子表服务器的情况类似。
仿真结果表明:本发明由于采用了暂存服务器来暂存批量插入的数据,提高了数据插入的并行度,并通过子表的预拆分和移动为数据的批量插入预留了空间,加快了数据批量插入的速度。
Claims (5)
1.一种基于Bigtable存储系统的数据批量插入方法,包括如下步骤:
(1)在数据批量插入Bigtable之前新增一组暂存服务器,将待插入的数据在批量插入之前先转移至暂存服务器;
(2)采用带权抽样法分别对暂存服务器中的数据和Bigtable存储系统中子表服务器内部的数据进行统计抽样,获取这两类服务器中数据的统计信息;
(3)Bigtable利用得到的这两类统计信息,对系统中子表服务器内部的子表进行预拆分;
(4)将拆分后的子表在子表服务器之间进行移动,使得拆分后的子表均匀存储在多台子表服务器上;
(5)将待插入数据并行插入到分割后的多个子表中。
2.根据权利要求1所述的方法,其中所述步骤(2)中对暂存服务器中的数据进行统计抽样,是采用带权抽样法进行,其步骤如下:
2a)对暂存服务器中的数据进行随机化处理,使数据均匀分布;
2b)从暂存服务器中获取t1=t/s个样本,其中t为总样本数,s为Bigtable存储系统中暂存服务器和子表服务器的总数;
2c)根据样本信息,计算待插入的实际记录数:
2c1)设暂存服务器中任意记录的关键字x,其累积分布函数F(x)为:
其中,b为子表的键值边界,Ω为暂存服务器中的数据总量;
2c2)设暂存服务器中数据的联合概率密度函数f(x,y)为:
其中,x为属于某个键值范围内的记录在服务器中的比值,y为属于某个键值范围内的记录在抽取的样本中的比值,n为服务器中记录的总量,t为随机抽取的样本数量,表示从n个记录中任意取t个样本的组合排列,表示从nx个记录中任意取ty个样本的组合排列,表示从n(1-x)个记录中任意取t(1-y)个样本的组合排列;
2c3)根据累积分布函数F(x)和概率密度函数f(x,y),得到向子表tj插入的记录数Rj:
其中,t为抽取的样本数,S为暂存服务器的集合,qj为落入子表tj范围的记录占待插入记录总数的实际比值,q′j为qj在误差指数最小时的取值,μj为对qj的估计值,D(qj||μj)表示用μj模拟qj时所需的额外比特数,D(q′j||μj)表示用μj模拟q′j时所需的额外比特数。
3.根据权利要求1所述的方法,其中所述步骤(2)中采用带权抽样法对Bigtable存储系统中子表服务器内部的数据进行统计抽样,其步骤如下:
2.1)从子表服务器中获取t′1=t′/s′个样本,其中t′为总样本数,s′为Bigtable存储系统中暂存服务器和子表服务器的总数;
2.2)根据样本信息,计算各个子表服务器中原有的记录数:
2.2.1)设子表服务器中任意记录的关键字x,其累积分布函数F′(x)为:
其中,b′为子表的键值边界,ω为子表服务器中的数据总量;
2.2.2)设子表服务器中数据的联合概率密度函数f′(x,y)为:
其中,x为属于某个键值范围内的记录在服务器中的比值,y为属于某个键值范围内的记录在抽取的样本中的比值,n′为服务器中记录的总量,t′为随机抽取的样本数量,表示从n′个记录中任意取t′个样本的组合排列,表示从n′x个记录中任意取t′y个样本的组合排列,表示从n′(1-x)个记录中任意取t′(1-y)个样本的组合排列;
2.2.3)根据累积分布函数F′(x)和概率密度函数f′(x,y),得到子表服务器中子表tj中的记录数R′j:
其中,t′为随机抽取的样本数,S′为子表服务器的集合,q′j为落入子表tj范围的记录占子表服务器中记录总数的实际比值,q″j为q′j在误差指数最小时的取值,μ′j为对q′j的估计值,D(q′j||μ′j)表示用μ′j模拟q′j时所需的额外比特数,D(q″j||μ′j)表示用μ′j模拟q″j时所需的额外比特数。
4.根据权利要求1所述的方法,其中所述步骤(3)中Bigtable利用得到的两类统计信息,对系统中子表服务器内部的子表进行预拆分,按如下步骤进行:
3a)收集子表中现有记录和待插入新纪录关键字的样本信息,并检查落入给定子表tj关键字边界内的新记录样本数;
3b)根据得到的新记录样本数,估算出待插入的新记录数rn:
3c)对于一个持有re条记录的给定子表tj,根据其新记录数rn与原记录数re之和的大小,决定是否对子表tj进行预拆分;如果re+rn不大于子表的最大记录数,则保持子表tj不变,否则,对子表tj进行预拆分,得到一个四元组:[ej,nj,hj,dj],其中,ej为子表原有数据的预测值;nj表示待插入数据的预测值;hj为子表tj所在的子表服务器;dj是系统为子表tj分配的目的子表服务器。
5.根据权利要求1所述的方法,其中所述步骤(4)中将拆分后的子表在子表服务器之间进行移动,使得拆分后的子表均匀存储在多台子表服务器上,按如下步骤执行:
4a)计算每台服务器mi中记录的移动成本oi和插入成本si,其中oi是移动过程中移出或移入mi的记录数,si是插入过程中插入服务器mi的记录数:
4a1)对于每台服务器mi,定义两个子表集:子表集Ai用于表示mi中移动成本的主要来源,子表集Bi用于表示mi中插入成本的主要来源;
4a2)根据任意子表ti拆分完成后都会表示为一个四元组[ei,ni,hi,di]的特性,将子表集Ai和Bi分别表示为:
Ai={ti|hi≠di},
Bi={ti|di=mi},
其中,ti表示服务器mi中的任意子表,ei为子表ti中原有的数据的估计值,ni表示待插入数据的估计值,hi为子表ti原来所在的服务器,di是系统为子表ti分配的目的服务器;
4a3)计算服务器mi的移动成本oi和插入成本si:
4b)计算Bigtable存储系统中移动成本的最大值omax和插入成本的最大值smax:
omax=max{oi|mi∈M},
smax=max{si|mi∈M},
其中,oi为服务器mi的移动成本,si是服务器mi的插入成本,M是Bigtable存储系统中所有服务器的集合;
4c)最小化Bigtable存储系统的移动成本和插入成本,即采用禁忌搜索算法寻找omax+smax的全局最优解。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410010115.9A CN103731500B (zh) | 2014-01-09 | 2014-01-09 | 基于Bigtable存储系统的数据批量插入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410010115.9A CN103731500B (zh) | 2014-01-09 | 2014-01-09 | 基于Bigtable存储系统的数据批量插入方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103731500A CN103731500A (zh) | 2014-04-16 |
CN103731500B true CN103731500B (zh) | 2017-02-08 |
Family
ID=50455422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410010115.9A Active CN103731500B (zh) | 2014-01-09 | 2014-01-09 | 基于Bigtable存储系统的数据批量插入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103731500B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106649451A (zh) * | 2016-09-22 | 2017-05-10 | 北京奇虎科技有限公司 | 数据更新方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103353901A (zh) * | 2013-08-01 | 2013-10-16 | 百度在线网络技术(北京)有限公司 | 基于Hadoop分布式文件系统的表数据的有序管理方法以及系统 |
CN103365897A (zh) * | 2012-04-01 | 2013-10-23 | 华东师范大学 | 一种支持Bigtable数据模型的片段缓存方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8990177B2 (en) * | 2011-10-27 | 2015-03-24 | Yahoo! Inc. | Lock-free transactional support for large-scale storage systems |
-
2014
- 2014-01-09 CN CN201410010115.9A patent/CN103731500B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365897A (zh) * | 2012-04-01 | 2013-10-23 | 华东师范大学 | 一种支持Bigtable数据模型的片段缓存方法 |
CN103353901A (zh) * | 2013-08-01 | 2013-10-16 | 百度在线网络技术(北京)有限公司 | 基于Hadoop分布式文件系统的表数据的有序管理方法以及系统 |
Non-Patent Citations (2)
Title |
---|
Bigtable系统的负载平衡技术研究;王映东;《计算机安全》;20090215;全文 * |
分布式海量数据管理系统Bigtable数据服务器设计;张晓清;《网络安全技术与应用》;20090315;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103731500A (zh) | 2014-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200349139A1 (en) | Stream selection for multi-stream storage devices | |
US20200334294A1 (en) | Merge tree modifications for maintenance operations | |
US20200334295A1 (en) | Merge tree garbage metrics | |
US10922316B2 (en) | Using computing resources to perform database queries according to a dynamically determined query size | |
US10593080B2 (en) | Graph generating method and apparatus | |
JP2007095069A (ja) | 分散カーネル・サポート・ベクトル・マシン | |
CN112395293B (zh) | 分库分表方法、分库分表装置、分库分表设备及存储介质 | |
US9251155B1 (en) | Maintaining sort order of data in databases | |
US20130227244A1 (en) | Workload-aware distributed data processing apparatus and method for processing large data based on hardware acceleration | |
WO2014067449A1 (en) | System and method for flexible distributed massively parallel processing (mpp) database | |
CN106778079A (zh) | 一种基于MapReduce的DNA序列k‑mer频次统计方法 | |
CN104111936A (zh) | 数据查询方法和系统 | |
CN108416054A (zh) | 基于文件访问热度的动态hdfs副本个数计算方法 | |
CN108052535B (zh) | 基于多处理器平台的视觉特征并行快速匹配方法和系统 | |
KR20180120570A (ko) | 그래프 생성 방법 및 장치 | |
CN109165201B (zh) | 日志的归并方法及终端设备 | |
JP5790755B2 (ja) | データベース管理装置及びデータベース管理方法 | |
CN103119606A (zh) | 一种大规模图像数据的聚类方法及装置 | |
US20150169657A1 (en) | K-ary tree to binary tree conversion through complete height balanced technique | |
CN103731500B (zh) | 基于Bigtable存储系统的数据批量插入方法 | |
CN111723089A (zh) | 一种基于列式存储格式处理数据的方法和装置 | |
CN105468603B (zh) | 数据选择方法及装置 | |
WO2015143708A1 (zh) | 后缀数组的构造方法及装置 | |
US20180068005A1 (en) | Distributed computation of percentile statistics for multidimensional data sets | |
Guo et al. | Handling data skew at reduce stage in Spark by ReducePartition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |