CN106406985B - 分布式计算框架和分布式计算方法 - Google Patents
分布式计算框架和分布式计算方法 Download PDFInfo
- Publication number
- CN106406985B CN106406985B CN201610836654.7A CN201610836654A CN106406985B CN 106406985 B CN106406985 B CN 106406985B CN 201610836654 A CN201610836654 A CN 201610836654A CN 106406985 B CN106406985 B CN 106406985B
- Authority
- CN
- China
- Prior art keywords
- key
- field
- operator
- distributed data
- value pair
- 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
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24537—Query rewriting; Transformation of operators
-
- 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/465—Distributed object oriented systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- 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/242—Query formulation
- G06F16/243—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了分布式计算框架和分布式计算方法。该分布式计算框架的一具体实施方式包括:解析单元,用于解析分布式计算任务的表达式,确定算子、算子对应的字段;算子单元,用于提供算子,算子的输入参数包括:字段、字段型分布式数据集。实现了任意算子接收和返回的参数的类型均可以为字段型分布式数据集,任意算子均可对字段型分布式数据集中的对应于字段的数据进行操作。从而,任意算子均需实现一次,实现算子的复用。将分布式计算任务以较为简单的表达式显示地表达出来,简化了用户利用的分布式计算框架编写分布式计算程序的复杂度,进一步地,可以通过表达式确定分布式计算中涉及的算子,从而可以对分布式计算过程进行优化。
Description
技术领域
本申请涉及计算机领域,具体涉及分布式领域,尤其涉及分布式计算框架和分布式计算方法。
背景技术
在分布式计算程序的开发中,用户可以利用分布式计算框架提供的接口,例如分布式计算框架Hive的SQL-like接口、分布式计算框架Spark的DataFrame接口编写分布式计算程序。
然而,目前分布式框架提供的接口,一方面,无法实现算子的复用。以DataFrame接口为例,需要提供max/min/count等UDF,并且UDF都是处理单机数据集的,无法复用既有sum/count等操作。字段上可进行的操作极其有限,用户已实现的算子需要在某字段上使用时,无法复用算子。另一方面,不便于描述一些分布式计算中常见的分布式计算任务。以SQL-like接口为例,SQL-like接口缺少嵌套数据集的概念,当处理诸如将数据按某个字段分组,在每个分组上取某个字段最大的n条记录的分布式计算任务时,若采用表达式selectfield_1,field_2 from table_1 group by field1 order by field_2 desc limit 10,实际上是在全局取出10条记录,而非每个分组上取出10条记录。若采用表达式selectfield_1,field_2 from table_1 group by field1 limit 10 order by field_2 desc,则该表达式不符合SQL语法,导致无法对分布式计算任务进行描述。
发明内容
本申请提供了分布式计算框架和分布式计算方法,用于解决上述背景技术部分存在的技术问题。
第一方面,本申请提供了分布式计算框架,该分布式计算框架包括:解析单元,用于解析分布式计算任务的表达式,确定算子、算子对应的字段,其中,字段指示算子作用于的分布式数据集中的数据的属性;算子单元,用于提供算子,算子的输入参数包括:字段、字段型分布式数据集,其中,字段型分布式数据集包含至少一个元素,元素包含多个键值对,键值对的键为字段,值为分布式数据集中对应于字段的数据。
第二方面,本申请提供了分布式计算方法,该方法包括:解析分布式计算任务的表达式,确定算子、算子对应的字段,其中,字段指示算子作用于的分布式数据集中的数据的属性;生成算子的输入参数,算子的输入参数包括:字段、字段型分布式数据集,其中,字段型分布式数据集包含至少一个元素,元素包含多个键值对,键值对的键为字段,值为分布式数据集中对应于字段的数据;算子基于输入参数进行分布式计算。
本申请提供的分布式计算框架和分布式计算方法,通过解析单元,用于解析分布式计算任务的表达式,确定算子、算子对应的字段;算子单元,用于提供算子,算子的输入参数包括:字段、字段型分布式数据集。实现了任意算子接收和返回的参数的类型均可以为字段型分布式数据集,任意算子均可对字段型分布式数据集中的对应于字段的数据进行操作。从而,任意算子均需实现一次,实现算子的复用。将分布式计算任务以较为简单的表达式显示地表达出来,简化了用户利用的分布式计算框架编写分布式计算程序的复杂度,进一步地,可以通过表达式确定分布式计算中涉及的算子,从而可以对分布式计算过程进行优化。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出了根据本申请的分布式计算框架的一个实施例的结构示意图;
图2示出了根据本申请的分布式计算方法的一个实施例的流程图;
图3是适于用来实现本申请实施例的分布式计算框架的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
请参考图1,其示出了根据本申请的分布式计算框架的一个实施例的结构示意图。分布式计算框架100包括:解析单元101,算子单元102。解析单元101用于解析分布式计算任务的表达式,确定算子、算子对应的字段,其中,字段指示算子作用于的分布式数据集中的数据的属性;算子单元102用于提供算子,算子的输入参数包括:字段、字段型分布式数据集,字段型分布式数据集包含至少一个元素,包含多个键值对,键值对的键为字段,值为分布式数据集中对应于字段的数据。
在本实施例中,分布式计算任务可以利用表达式进行表示。分布式计算任务的表达式中可以包含各个算子对应的算子关键字和指示算子作用于的分布式数据集中的数据的属性的字段对应的字段关键字。解析单元可以解析表达式中的算子关键字和字段关键字,确定算子和算子对应的字段。
以分布式计算任务所需的数据为网站的点击率数据为例,网站的点击率数据包含网站数据和点击率数据两部分。算子可以作用于网站数据和点击率数据。分布式计算任务的表达式可以包含算子关键字、字段关键字。解析单元可以通过解析分布式计算任务的表达式中的算子关键字和字段关键字,确定算子和算子对应的字段即网站字段、点击率字段。
在本实施例中,分布式计算框架可以提供字段型分布式数据集SchemaPCollection。数据结构PCollection可以表示分布式数据集。SchemaPCollection数据结构可以表示结构化、带有字段的PCollection。SchemaPCollection数据结构可以相当于每个元素为一个字典的PCollection。算子单元提供的各个算子的输入参数可以包含SchemaPCollection和字段,返回值的类型也可以为SchemaPCollection。
在本实施例的一些可选的实现方式中,算子单元包括:字段型分布式数据集生成算子,用于根据字段,将分布式计算任务所需的数据对应的分布式数据集转换为字段型分布式数据集,字段型分布式数据集中的元素包含多个键值对,其中,每一个键值对的键为一个字段,值为分布式数据集中对应于字段的数据。
以分布式计算任务所需的数据为网站的点击率数据为例,每一条数据包含多个网站和点击率两部分。分布式计算任务所需的数据可以为PCollection。字段型分布式数据集生成算子可以接收字段参数,字段参数包含网站字段、点击率字段,生成分布式计算任务所需的数据对应的SchemaPCollection。分布式计算任务所需的数据对应的SchemaPCollection中的每一个元素可以为一个字典,该字典由多个键值对,键可以为网站集合、点击率。键网站集合对应的值为多个网站,键点击率对应的值为点击率数据。
在本实施例的一些可选的实现方式中,算子单元包括:拼接算子,用于对字段型分布式数据集中的每一个元素中包含有不同键的键值对进行组合,得到每一个元素为包含键不同的键值对的字段型分布式数据集。
在本实施例的一些可选的实现方式中,算子单元包括:分组算子,用于根据字段型分布式数据集中的元素中分组字段指示的键对应的值对字段型分布式数据集中的元素进行分组,得到多个分组后的字段型分布式数据集,其中,每一个分组字段指示的键对应的值对应一个分组后的字段型分布式数据集,分组后的字段型分布式数据集包括至少一个包含有分组字段指示的键对应的值的元素。
在本实施例的一些可选的实现方式中,算子单元包括:遍历算子,用于根据遍历字段,对字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作。
在本实施例的一些可选的实现方式中,聚合算子,用于聚合对字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作而得到的结果。
在本实施例中,算子单元可以包含拼接算子select算子和聚合算子agg算子。分布式计算框架可以向用户提供select算子和agg算子对应的select接口和agg接口。可以在select接口和agg接口的基础上,封装出辅助接口,例如join接口、distinct接口、sort_by接口。
在本实施例中,通过select接口和agg接口可以对SchemaPCollection进行处理。从而,可以复用在分布式计算框架中既有的作用于PCollection上的各种接口,select接口和agg接口可以与任意既有的作用于PCollection上的各种接口进行组合,进而组成可以完成各种分布式计算任务的操作,实现完备的功能。
下面结合代码来说明本申请中的分布式计算框架提供的算子的作用:
分布式计算任务所需的数据为以下网站的点击率数据:('alibaba.com,baidu.com,tencent.com',1),('baidu.com,tencent.com',2),('alibaba.com,tencent.com',3),('alibaba.com,baidu.com',2),('alibaba.com,jd.com',1)。分布式计算任务为按网站进行分组,计算每个网站的点击率的总和、点击率的最大值、点击率的平均值。
可以用于执行上述分布式计算任务的部分代码如下:
在本实施例中,每一个行代码可以相当于一个表达式,用户可以通过表达式的形式书写分布式计算任务的代码。分布式计算框架可以提供一个apply语法糖,apply语法糖的语义可以为:
.apply(f,*args)等价于f(pcollection,*args)
分布式计算任务所需的数据('alibaba.com,baidu.com,tencent.com',1),('baidu.com,tencent.com',2),('alibaba.com,tencent.com',3),('alibaba.com,baidu.com',2),('alibaba.com,jd.com',1)为一个分布式数据集PCollection。
对于上述代码中的.apply(schema.from_tuple,['websites','clicknum']),解析单元可以根据算子关键字from_tuple,确定字段型分布式数据集生成算子。通过字段关键字websites、clicknum,确定字段websites、clicknum。字段型分布式数据集生成算子可以根据字段websites和字段clicknum,将分布式计算任务所需的数据对应的PCollection按照字段websites、clicknum转换为字段型分布式数据集SchemaPCollection。SchemaPCollection中包含多个元素,每一个元素包含多个键值对,其中,每一个键值对的键为一个字段,值为PCollection对应于字段的数据。转换后的SchemaPCollection包含5个元素,每一个元素可以为字典。字典中包含由键websites和websites对应的值组成的键值对、由键clicknum和clicknum对应的值组成的键值对。
第一个元素中,包含键值对websites-alibaba.com,baidu.com,tencent.com和键值对clicknum-1。
第二个元素中,包含键值对websites-baidu.com,tencent.com和键值对clicknum-2。
第三个元素中,包含键值对websites-alibaba.com,tencent.com和键值对clicknum-3。
第四个元素中,包含键值对websites-alibaba.com,baidu.com和键值对clicknum-2。
第五个元素中,包含键值对websites-alibaba.com,jd.com和键值对clicknum-1。
对于上述代码中的.apply(schema.select,lambda cols:{'website':cols['websites'].flat_map(lambda line:line.split(',')),'clicknum':cols['clicknum']}),解析单元可以根据算子关键字select,确定拼接算子。根据字段关键字确定字段website、clicknum。
可以针对SchemaPCollection中的每一个元素中的键websites,调用flat_map算子将键websites对应的值按照逗号进行拆分,得到由键website和键website对应的值组成的键值对。
在对键websites对应的值按照逗号进行拆分之后,SchemaPCollection中的元素包含由键website和键website对应的值组成的键值对、由键clicknum和键clicknum对应的值组成的键值对。
第一个元素为键值对website-alibaba.com,键值对website-baidu.com,键值对website-tencent.com,键值对clicknum-1。
第二个元素为键值对website-baidu.com,键值对website-tencent.com,键值对clicknum-2。
第三个元素为键值对website-alibaba.com,键值对website-tencent.com,键值对clicknum-3。
第四个元素为键值对website-alibaba.com,键值对website-baidu.com,键值对clicknum-2。
第五个元素为键值对website-alibaba.com,键值对website-jd.com,键值对clicknum-1。
在本实施例中,拼接算子可以对字段型分布式数据集中的每一个元素中包含有不同键的键值对进行组合,得到每一个元素为包含键不同的键值对的字段型分布式数据集。
拼接算子可以对每一个元素中的键website对应的键值对和键clicknum对应的键值对进行组合,得到每一个元素为包含一个website对应的键值对和一个键clicknum对应的键值对的SchemaPCollection。
在对每一个元素中的键website对应的键值对和键clicknum对应的键值对进行组合之后,SchemaPCollection中,第一个元素为键值对website-alibaba.com和键值对clicknum-1。
第二个元素为键值对website-baidu.com和键值对clicknum-1。
第三个元素为键值对website-tencent.com和键值对clicknum-1。
第四个元素为键值对website-baidu.com和键值对clicknum-2。
第五个元素为键值对website-tencent.com和键值对clicknum-2。
第六个元素为键值对website-alibaba.com和键值对clicknum-3。
第七个元素为键值对website-tencent.com和键值对clicknum-3。
第八个元素为键值对website-alibaba.com和键值对clicknum-2。
第九个元素为键值对website-baidu.com和键值对clicknum-2。
第十个元素为键值对website-alibaba.com和键值对clicknum-1。
第十一个元素为键值对website-jd.com和键值对clicknum-1。
对于上述代码中的.apply(schema.group_by,['website']),解析单元可以根据分组算子关键字group_by,确定分组算子。根据字段关键字website确定字段website。
在本实施例中,分组算子可以根据分组字段website指示的键website对应的值对SchemaPCollection中的元素进行分组,得到多个分组后的SchemaPCollection,每一个分组字段指示的键website对应的值对应一个分组后的SchemaPCollection,分组后的SchemaPCollection包括至少一个包含有分组字段指示的键website对应的值的元素。
分组算子可以聚合键website对应的值相同的元素,得到包含多个键website对应的值相同的键值对的分组后的SchemaPCollection。
第一个分组后的SchemaPCollection中,包含键值对website-baidu.com和键值对clicknum-1、键值对website-baidu.com和键值对clicknum-2、键值对website-baidu.com和键值对clicknum-2。
第二个分组后的SchemaPCollection中,包含键值对website-tencent.com和键值对clicknum-1、键值对website-tencent.com和键值对clicknum-2、键值对website-tencent.com和键值对clicknum-3。
第三个分组后的SchemaPCollection中,包含键值对website-alibaba.com和键值对clicknum-1、键值对website-alibaba.com和键值对clicknum-3、键值对website-alibaba.com和键值对clicknum-2、键值对website-alibaba.com和键值对clicknum-1。
第四个分组后的SchemaPCollection中,包含键值对website-jd.com和键值对clicknum-1。
对于上述代码中的.apply_values(schema.agg,lambda cols:{'max_click_num':cols['clicknum'].max(),'sum_click_num':cols['clicknum'].flat_map(lambdax:x['x']),'avg_click_num':cols['clicknum'].sum()/cols['clicknum'].count()}),解析单元可以根据遍历算子关键字apply_values,确定遍历算子。根据字段关键字clicknum,确定字段clicknum。遍历算子可以根据遍历字段clicknum,分别对每一个分组后的SchemaPCollection中的所有元素中的键clicknum对应的值执行max、sum、count操作。从而,可以分别计算出baidu.com、tencent.com、alibaba.com、jd.com的点击率最大值、点击率总和、点击率平均值。
解析单元可以根据聚合算子关键字agg,确定聚合算子。聚合算子可以聚合对每一个分组之后的字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作而得到的结果。聚合算子可以聚合对每一个分组后的SchemaPCollection中的所有元素中的键clicknum对应的值执行max、sum、count操作得到的baidu.com、tencent.com、alibaba.com、jd.com的点击率最大值、点击率总和、点击率平均值。
在本申请中,任意算子接收和返回的参数的类型均可以为字段型分布式数据集,任意算子均可对字段型分布式数据集中的对应于字段的数据进行操作。从而,任意算子均需实现一次,实现算子的复用。将分布式计算任务以较为简单的表达式显示地表达出来,简化了用户利用的分布式计算框架编写分布式计算程序的复杂度,进一步地,可以通过表达式确定分布式计算中涉及的算子,从而可以对分布式计算过程进行优化。
请参考图2,其示出了根据本申请的分布式计算方法的一个实施例的流程200。该方法包括以下步骤:
步骤201:解析分布式计算任务的表达式,确定算子、算子对应的字段。
在本实施例中,字段指示算子作用于的分布式数据集中的数据的属性。分布式计算任务可以利用表达式进行表示。以分布式计算任务所需的数据为网站的点击率数据为例,网站的点击率数据包含网站数据和点击率数据两部分。算子可以作用于网站数据和点击率数据。分布式计算任务的表达式可以包含算子关键字、字段关键字。解析单元可以通过解析分布式计算任务的表达式中的算子关键字和字段关键字,确定算子和算子对应的字段即网站字段、点击率字段。
步骤202:生成算子的输入参数。
在本实施例中,算子的输入参数包括:字段、字段型分布式数据集,字段型分布式数据集包含至少一个元素,元素包含多个键值对,键值对的键为字段,值为分布式数据集中对应于字段的数据。
在本实施例中,分布式计算框架可以提供字段型分布式数据集SchemaPCollection。数据结构PCollection可以表示分布式数据集。SchemaPCollection数据结构可以表示结构化、带有字段的PCollection。SchemaPCollection数据结构可以相当于每个元素为一个字典的PCollection。各个算子的输入参数可以包含SchemaPCollection和字段,返回值的类型也可以为SchemaPCollection。
在本实施例的一些可选的实现方式中,还包括:根据字段,将分布式计算任务所需的数据对应的分布式数据集转换为字段型分布式数据集,字段型分布式数据集中的元素包含多个键值对,其中,每一个键值对的键为一个字段,值为分布式数据集中对应于字段的数据。
以分布式计算任务所需的数据为网站的点击率数据为例,每一条数据包含多个网站和点击率两部分。分布式计算任务所需的数据可以为PCollection。可以根据网站字段、点击率字段,生成分布式计算任务所需的数据对应的SchemaPCollection。分布式计算任务所需的数据对应的SchemaPCollection中的每一个元素可以为一个字典,该字典由多个键值对,键可以为网站集合、点击率。键网站集合对应的值为多个网站,键点击率对应的值为点击率数据。
例如,分布式计算任务所需的数据为以下网站的点击率数据:('alibaba.com,baidu.com,tencent.com',1),('baidu.com,tencent.com',2),('alibaba.com,tencent.com',3),('alibaba.com,baidu.com',2),('alibaba.com,jd.com',1)。分布式计算任务所需的数据为一个分布式数据集PCollection。
在本实施例中,可以根据字段websites和字段clicknum,将分布式计算任务所需的数据对应的PCollection按照字段websites、clicknum转换为字段型分布式数据集SchemaPCollection。SchemaPCollection中包含多个元素,每一个元素包含多个键值对,其中,每一个键值对的键为一个字段,值为PCollection对应于字段的数据。
SchemaPCollection包含5个元素,每一个元素可以为字典。字典中包含由键websites和websites对应的值组成的键值对、由键clicknum和clicknum对应的值组成的键值对。
第一个元素中,包含键值对websites-alibaba.com,baidu.com,tencent.com和键值对clicknum-1。
第二个元素中,包含键值对websites-baidu.com,tencent.com和键值对clicknum-2。
第三个元素中,包含键值对websites-alibaba.com,tencent.com和键值对clicknum-3。
第四个元素中,包含键值对websites-alibaba.com,baidu.com和键值对clicknum-2。
第五个元素中,包含键值对websites-alibaba.com,jd.com和键值对clicknum-1。
步骤203:算子基于输入参数进行分布式计算。
在本实施例中,在通过步骤202生成算子的输入参数之后,算子可以根据输入参数SchemaPCollection和字段,进行分布式计算。
在本实施例中,可以提供一个apply语法糖,apply语法糖的语义可以为:
.apply(f,*args)等价于f(pcollection,*args)
在本实施例的一些可选的实现方式中,还包括:对字段型分布式数据集中的每一个元素中包含有不同键的键值对进行组合,得到每一个元素为包含键不同的键值对的字段型分布式数据集。
在本实施例中,可以对字段型分布式数据集中的每一个元素中包含有不同键的键值对进行组合,得到每一个元素为包含键不同的键值对的字段型分布式数据集。
以分布式计算任务所需的数据为网站的点击率数据为例,每一条数据包含多个网站和点击率两部分。分布式计算任务所需的数据可以为PCollection。可以根据网站字段、点击率字段,生成分布式计算任务所需的数据对应的SchemaPCollection。分布式计算任务所需的数据对应的SchemaPCollection中的每一个元素可以为一个字典,该字典由多个键值对,键可以为网站集合、点击率。键网站集合对应的值为多个网站,键点击率对应的值为点击率数据。
例如,SchemaPCollection中的元素包含由键website和键website对应的值组成的键值对、由键clicknum和键clicknum对应的值组成的键值对。
第一个元素为键值对website-alibaba.com,键值对website-baidu.com,键值对website-tencent.com,键值对clicknum-1。
第二个元素为键值对website-baidu.com,键值对website-tencent.com,键值对clicknum-2。
第三个元素为键值对website-alibaba.com,键值对website-tencent.com,键值对clicknum-3。
第四个元素为键值对website-alibaba.com,键值对website-baidu.com,键值对clicknum-2。
第五个元素为键值对website-alibaba.com,键值对website-jd.com,键值对clicknum-1。
可以对每一个元素中的键website对应的键值对和键clicknum对应的键值对进行组合,得到每一个元素为包含一个website对应的键值对和一个键clicknum对应的键值对的SchemaPCollection。
在对每一个元素中的键website对应的键值对和键clicknum对应的键值对进行组合之后,SchemaPCollection中,第一个元素为键值对website-alibaba.com和键值对clicknum-1。
第二个元素为键值对website-baidu.com和键值对clicknum-1。
第三个元素为键值对website-tencent.com和键值对clicknum-1。
第四个元素为键值对website-baidu.com和键值对clicknum-2。
第五个元素为键值对website-tencent.com和键值对clicknum-2。
第六个元素为键值对website-alibaba.com和键值对clicknum-3。
第七个元素为键值对website-tencent.com和键值对clicknum-3。
第八个元素为键值对website-alibaba.com和键值对clicknum-2。
第九个元素为键值对website-baidu.com和键值对clicknum-2。
第十个元素为键值对website-alibaba.com和键值对clicknum-1。
第十一个元素为键值对website-jd.com和键值对clicknum-1。
在本实施例的一些可选的实现方式中,还包括:根据字段型分布式数据集中的元素中分组字段指示的键对应的值对字段型分布式数据集中的元素进行分组,得到多个分组后的字段型分布式数据集,其中,每一个分组字段指示的键对应的值对应一个分组后的字段型分布式数据集,分组后的字段型分布式数据集包括至少一个包含有分组字段指示的键对应的值的元素。
例如,在SchemaPCollection中,第一个元素为键值对website-alibaba.com和键值对clicknum-1。
第二个元素为键值对website-baidu.com和键值对clicknum-1。
第三个元素为键值对website-tencent.com和键值对clicknum-1。
第四个元素为键值对website-baidu.com和键值对clicknum-2。
第五个元素为键值对website-tencent.com和键值对clicknum-2。
第六个元素为键值对website-alibaba.com和键值对clicknum-3。
第七个元素为键值对website-tencent.com和键值对clicknum-3。
第八个元素为键值对website-alibaba.com和键值对clicknum-2。
第九个元素为键值对website-baidu.com和键值对clicknum-2。
第十个元素为键值对website-alibaba.com和键值对clicknum-1。
第十一个元素为键值对website-jd.com和键值对clicknum-1。
可以根据分组字段website,按照元素中website指示的键website对应的值对SchemaPCollection中的元素进行分组,得到多个分组后的SchemaPCollection,每一个分组字段指示的键website对应的值对应一个分组后的SchemaPCollection,分组后的SchemaPCollection包括至少一个包含有分组字段指示的键website对应的值的元素。
可以聚合SchemaPCollection中键website对应的值相同的元素,得到包含多个键website对应的值相同的键值对的分组后的SchemaPCollection。
第一个分组后的SchemaPCollection中,包含键值对website-baidu.com和键值对clicknum-1、键值对website-baidu.com和键值对clicknum-2、键值对website-baidu.com和键值对clicknum-2。
第二个分组后的SchemaPCollection中,包含键值对website-tencent.com和键值对clicknum-1、键值对website-tencent.com和键值对clicknum-2、键值对website-tencent.com和键值对clicknum-3。
第三个分组后的SchemaPCollection中,包含键值对website-alibaba.com和键值对clicknum-1、键值对website-alibaba.com和键值对clicknum-3、键值对website-alibaba.com和键值对clicknum-2、键值对website-alibaba.com和键值对clicknum-1。
第四个分组后的SchemaPCollection中,包含键值对website-jd.com和键值对clicknum-1。
在本实施例的一些可选的实现方式中,还包括:根据遍历字段,对字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作。
以根据分组字段website,按照元素中website指示的键website对应的值对SchemaPCollection中的元素进行分组,得到多个分组后的SchemaPCollection为例,第一个分组后的SchemaPCollection中,包含键值对website-baidu.com和键值对clicknum-1、键值对website-baidu.com和键值对clicknum-2、键值对website-baidu.com和键值对clicknum-2。
第二个分组后的SchemaPCollection中,包含键值对website-tencent.com和键值对clicknum-1、键值对website-tencent.com和键值对clicknum-2、键值对website-tencent.com和键值对clicknum-3。
第三个分组后的SchemaPCollection中,包含键值对website-alibaba.com和键值对clicknum-1、键值对website-alibaba.com和键值对clicknum-3、键值对website-alibaba.com和键值对clicknum-2、键值对website-alibaba.com和键值对clicknum-1。
第四个分组后的SchemaPCollection中,包含键值对website-jd.com和键值对clicknum-1。
可以根据遍历字段clicknum,分别对每一个分组后的SchemaPCollection中的所有元素中的键clicknum对应的值执行max、sum、count操作。从而,可以分别计算出baidu.com、tencent.com、alibaba.com、jd.com的点击率最大值、点击率总和、点击率平均值。
在本实施例的一些可选的实现方式中,还包括:聚合对字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作而得到的结果。
以分组后的SchemaPCollection为例,可以聚合对每一个分组后的SchemaPCollection中的所有元素中的键clicknum对应的值执行max、sum、count操作得到的baidu.com、tencent.com、alibaba.com、jd.com的点击率最大值、点击率总和、点击率平均值。输出结果可以采用以下形式进行表示:
[{'sum_click_num':7,'website':'alibaba.com','avg_click_num':1,'max_click_num':3},
{'sum_click_num':6,'website':'tencent.com','avg_click_num':2,'max_click_num':3},
{'sum_click_num':5,'website':'baidu.com','avg_click_num':1,'max_click_num':2},
{'sum_click_num':1,'website':'jd.com','avg_click_num':1,'max_click_num':1}]。
在本申请中,任意算子接收和返回的参数的类型均可以为字段型分布式数据集,任意算子均可对字段型分布式数据集中的对应于字段的数据进行操作。从而,任意算子均需实现一次,实现算子的复用。将分布式计算任务以较为简单的表达式显示地表达出来,简化了用户利用的分布式计算框架编写分布式计算程序的复杂度,进一步地,可以通过表达式确定分布式计算中涉及的算子,从而可以对分布式计算过程进行优化。
下面参考图3,其示出了适于用来实现本申请实施例的分布式计算框架的计算机系统300的结构示意图。
如图3所示,计算机系统300包括中央处理单元(CPU)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储部分308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM 303中,还存储有系统300操作所需的各种程序和数据。CPU 301、ROM 302以及RAM 303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
以下部件连接至I/O接口305:包括键盘、鼠标等的输入部分306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至I/O接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:解析分布式计算任务的表达式,确定算子、所述算子对应的字段,其中,所述字段指示算子作用于的分布式数据集中的数据的属性;生成所述算子的输入参数,算子的输入参数包括:字段、字段型分布式数据集,其中,所述字段型分布式数据集包含至少一个元素,所述元素包含多个键值对,键值对的键为字段,值为分布式数据集中对应于所述字段的数据;所述算子基于所述输入参数进行分布式计算。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种分布式计算框架,其特征在于,所述分布式计算框架包括:
解析单元,用于解析分布式计算任务的表达式,确定算子、所述算子对应的字段,其中,所述字段指示算子作用于的分布式数据集中的数据的属性;
算子单元,用于提供算子,所述算子的输入参数包括:字段、字段型分布式数据集,其中,所述字段型分布式数据集包含至少一个元素,所述元素包含多个键值对,键值对的键为字段,值为分布式数据集中对应于所述字段的数据;
所述算子单元包括:字段型分布式数据集生成算子,用于根据字段,将分布式计算任务所需的数据对应的分布式数据集转换为字段型分布式数据集;
所述算子单元包括:拼接算子,用于对字段型分布式数据集中的每一个元素中包含有不同键的键值对进行组合,得到每一个元素为包含键不同的键值对的字段型分布式数据集。
2.根据权利要求1所述的分布式计算框架,其特征在于,所述字段型分布式数据集中的元素包含多个键值对,其中,每一个键值对的键为一个字段,值为分布式数据集中对应于所述字段的数据。
3.根据权利要求2所述的分布式计算框架,其特征在于,所述算子单元包括:
分组算子,用于根据字段型分布式数据集中的元素中分组字段指示的键对应的值对字段型分布式数据集中的元素进行分组,得到多个分组后的字段型分布式数据集,其中,每一个分组字段指示的键对应的值对应一个分组后的字段型分布式数据集,分组后的字段型分布式数据集包括至少一个包含有分组字段指示的键对应的值的元素。
4.根据权利要求3所述的分布式计算框架,其特征在于,所述算子单元包括:
遍历算子,用于根据遍历字段,对字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作。
5.根据权利要求4所述的分布式计算框架,其特征在于,所述算子单元包括:
聚合算子,用于聚合对字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作而得到的结果。
6.一种分布式计算方法,其特征在于,所述方法包括:
解析分布式计算任务的表达式,确定算子、所述算子对应的字段,其中,所述字段指示算子作用于的分布式数据集中的数据的属性;
生成所述算子的输入参数,算子的输入参数包括:字段、字段型分布式数据集,其中,所述字段型分布式数据集包含至少一个元素,所述元素包含多个键值对,键值对的键为字段,值为分布式数据集中对应于所述字段的数据;
所述算子基于所述输入参数进行分布式计算;
所述生成所述算子的输入参数包括:根据字段,将分布式计算任务所需的数据对应的分布式数据集转换为字段型分布式数据集;
对字段型分布式数据集中的每一个元素中包含有不同键的键值对进行组合,得到每一个元素为包含键不同的键值对的字段型分布式数据集。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述字段型分布式数据集中的元素包含多个键值对,其中,每一个键值对的键为一个字段,值为分布式数据集中对应于所述字段的数据。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
根据字段型分布式数据集中的元素中分组字段指示的键对应的值对字段型分布式数据集中的元素进行分组,得到多个分组后的字段型分布式数据集,其中,每一个分组字段指示的键对应的值对应一个分组后的字段型分布式数据集,分组后的字段型分布式数据集包括至少一个包含有分组字段指示的键对应的值的元素。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
根据遍历字段,对字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
聚合字段型分布式数据集中的所有元素中遍历字段指示的键对应的值执行操作而得到的结果。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610836654.7A CN106406985B (zh) | 2016-09-21 | 2016-09-21 | 分布式计算框架和分布式计算方法 |
KR1020197002252A KR102172138B1 (ko) | 2016-09-21 | 2016-10-14 | 분산 컴퓨팅 프레임워크 및 분산 컴퓨팅 방법 |
EP16916628.7A EP3480693A4 (en) | 2016-09-21 | 2016-10-14 | DISTRIBUTED COMPUTER APPLICATION FRAMEWORK AND DISTRIBUTED PROCESSING METHOD |
PCT/CN2016/102122 WO2018053889A1 (zh) | 2016-09-21 | 2016-10-14 | 分布式计算框架和分布式计算方法 |
JP2019505244A JP6781820B2 (ja) | 2016-09-21 | 2016-10-14 | 分散コンピューティングフレームワーク及び分散コンピューティング方法(distributed computing framework and distributed computing method) |
US16/352,576 US11132363B2 (en) | 2016-09-21 | 2019-03-13 | Distributed computing framework and distributed computing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610836654.7A CN106406985B (zh) | 2016-09-21 | 2016-09-21 | 分布式计算框架和分布式计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106406985A CN106406985A (zh) | 2017-02-15 |
CN106406985B true CN106406985B (zh) | 2019-10-11 |
Family
ID=57997066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610836654.7A Active CN106406985B (zh) | 2016-09-21 | 2016-09-21 | 分布式计算框架和分布式计算方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11132363B2 (zh) |
EP (1) | EP3480693A4 (zh) |
JP (1) | JP6781820B2 (zh) |
KR (1) | KR102172138B1 (zh) |
CN (1) | CN106406985B (zh) |
WO (1) | WO2018053889A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445645B (zh) | 2016-09-06 | 2019-11-26 | 北京百度网讯科技有限公司 | 用于执行分布式计算任务的方法和装置 |
CN109726822B (zh) * | 2018-12-14 | 2020-10-09 | 中科寒武纪科技股份有限公司 | 运算方法、装置及相关产品 |
CN112783924B (zh) * | 2019-11-07 | 2024-07-16 | 北京沃东天骏信息技术有限公司 | 一种脏数据识别方法、装置和系统 |
CN115906983B (zh) * | 2022-11-23 | 2024-01-02 | 北京百度网讯科技有限公司 | 分布式模型训练方法、装置、设备、存储介质及程序产品 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102915229A (zh) * | 2011-08-02 | 2013-02-06 | 腾讯科技(深圳)有限公司 | 一种分布式计算方法及系统 |
CN103399887A (zh) * | 2013-07-19 | 2013-11-20 | 蓝盾信息安全技术股份有限公司 | 一种海量日志的查询与统计分析系统 |
CN103425779A (zh) * | 2013-08-19 | 2013-12-04 | 曙光信息产业股份有限公司 | 数据的处理方法和装置 |
CN103502940A (zh) * | 2011-12-21 | 2014-01-08 | 华为技术有限公司 | 一种分布式系统中处理事务的方法、相关设备及系统 |
CN103593721A (zh) * | 2012-08-13 | 2014-02-19 | 中国商用飞机有限责任公司 | 基于复杂事件处理的业务流程监控方法 |
CN104239532A (zh) * | 2014-09-19 | 2014-12-24 | 浪潮(北京)电子信息产业有限公司 | Hive中自制用户提取信息工具的方法和装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7418715B2 (en) * | 2005-04-08 | 2008-08-26 | Microsoft Corporation | System and method for producing and communicating requested data among networked application programs |
WO2013082507A1 (en) * | 2011-11-30 | 2013-06-06 | Decarta | Systems and methods for performing geo-search and retrieval of electronic point-of-interest records using a big index |
CN102799622B (zh) * | 2012-06-19 | 2015-07-15 | 北京大学 | 基于MapReduce扩展框架的分布式SQL查询方法 |
US9910894B2 (en) * | 2012-07-16 | 2018-03-06 | Microsoft Technology Licensing, Llc | Data scope origination within aggregation operations |
US9229979B2 (en) * | 2012-12-11 | 2016-01-05 | Microsoft Technology Licensing, Llc | Optimizing parallel queries using interesting distributions |
US9268834B2 (en) * | 2012-12-13 | 2016-02-23 | Microsoft Technology Licensing, Llc | Distributed SQL query processing using key-value storage system |
CN103902592B (zh) * | 2012-12-27 | 2018-02-27 | 深圳市腾讯计算机系统有限公司 | 基于MapReduce实现分析函数的方法及系统 |
US9342557B2 (en) * | 2013-03-13 | 2016-05-17 | Cloudera, Inc. | Low latency query engine for Apache Hadoop |
CN103399927B (zh) * | 2013-08-05 | 2016-11-02 | 百度在线网络技术(北京)有限公司 | 分布式计算方法和装置 |
US9477731B2 (en) * | 2013-10-01 | 2016-10-25 | Cloudera, Inc. | Background format optimization for enhanced SQL-like queries in Hadoop |
CN105786808B (zh) * | 2014-12-15 | 2019-06-18 | 阿里巴巴集团控股有限公司 | 一种用于分布式执行关系型计算指令的方法与设备 |
US20160371355A1 (en) * | 2015-06-19 | 2016-12-22 | Nuodb, Inc. | Techniques for resource description framework modeling within distributed database systems |
US10108547B2 (en) * | 2016-01-06 | 2018-10-23 | Netapp, Inc. | High performance and memory efficient metadata caching |
-
2016
- 2016-09-21 CN CN201610836654.7A patent/CN106406985B/zh active Active
- 2016-10-14 EP EP16916628.7A patent/EP3480693A4/en not_active Ceased
- 2016-10-14 KR KR1020197002252A patent/KR102172138B1/ko active IP Right Grant
- 2016-10-14 JP JP2019505244A patent/JP6781820B2/ja active Active
- 2016-10-14 WO PCT/CN2016/102122 patent/WO2018053889A1/zh unknown
-
2019
- 2019-03-13 US US16/352,576 patent/US11132363B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102915229A (zh) * | 2011-08-02 | 2013-02-06 | 腾讯科技(深圳)有限公司 | 一种分布式计算方法及系统 |
CN103502940A (zh) * | 2011-12-21 | 2014-01-08 | 华为技术有限公司 | 一种分布式系统中处理事务的方法、相关设备及系统 |
CN103593721A (zh) * | 2012-08-13 | 2014-02-19 | 中国商用飞机有限责任公司 | 基于复杂事件处理的业务流程监控方法 |
CN103399887A (zh) * | 2013-07-19 | 2013-11-20 | 蓝盾信息安全技术股份有限公司 | 一种海量日志的查询与统计分析系统 |
CN103425779A (zh) * | 2013-08-19 | 2013-12-04 | 曙光信息产业股份有限公司 | 数据的处理方法和装置 |
CN104239532A (zh) * | 2014-09-19 | 2014-12-24 | 浪潮(北京)电子信息产业有限公司 | Hive中自制用户提取信息工具的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
JP6781820B2 (ja) | 2020-11-04 |
WO2018053889A1 (zh) | 2018-03-29 |
US11132363B2 (en) | 2021-09-28 |
US20190213188A1 (en) | 2019-07-11 |
JP2019527441A (ja) | 2019-09-26 |
KR102172138B1 (ko) | 2020-10-30 |
CN106406985A (zh) | 2017-02-15 |
KR20190020801A (ko) | 2019-03-04 |
EP3480693A4 (en) | 2019-07-10 |
EP3480693A1 (en) | 2019-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10521404B2 (en) | Data transformations with metadata | |
US11080345B2 (en) | Search functionality of worker nodes in a data fabric service system | |
US9946780B2 (en) | Interpreting relational database statements using a virtual multidimensional data model | |
US8725707B2 (en) | Data continuous SQL process | |
CN106406985B (zh) | 分布式计算框架和分布式计算方法 | |
US9311356B2 (en) | Database calculation engine | |
Medvedev et al. | A new web-based solution for modelling data mining processes | |
US9992269B1 (en) | Distributed complex event processing | |
WO2017105605A1 (en) | Data model design collaboration using semantically correct collaborative objects | |
US10929361B2 (en) | Rule-based data source selection | |
CN106445645B (zh) | 用于执行分布式计算任务的方法和装置 | |
CN104809246B (zh) | 充电数据的处理方法及装置 | |
CN117591025B (zh) | 多源异构数据处理系统 | |
Mandal et al. | Architecture of efficient word processing using Hadoop MapReduce for big data applications | |
Vrbić | Data mining and cloud computing | |
CN107665241A (zh) | 一种实时数据多维度去重方法和装置 | |
CN110580144A (zh) | 一种通过给页面控件添加查询运算符实现的通用查询方法 | |
Kumar | Mastering pandas: A complete guide to pandas, from installation to advanced data analysis techniques | |
CN113312517A (zh) | 基金知识图谱获取方法、装置和电子设备 | |
US20230315789A1 (en) | Configuration-driven query composition for graph data structures for an extensibility platform | |
Shelton | Survey of Big Data Map Reduces Techniques | |
Singh | Big Data: An Overview | |
Humayoun et al. | SamS-Vis: A Tool to Visualize Summary View Using Sampled Data | |
Yeramwar | Pre-processing Techniques for Optimizing Association Rule Mining Algorithms | |
US20200004848A1 (en) | Semantic layer generation |
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 |