CN113742346A - 资产大数据平台架构优化方法 - Google Patents
资产大数据平台架构优化方法 Download PDFInfo
- Publication number
- CN113742346A CN113742346A CN202111038204.0A CN202111038204A CN113742346A CN 113742346 A CN113742346 A CN 113742346A CN 202111038204 A CN202111038204 A CN 202111038204A CN 113742346 A CN113742346 A CN 113742346A
- Authority
- CN
- China
- Prior art keywords
- data
- query
- database
- asset
- warehouse server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000005457 optimization Methods 0.000 title claims abstract description 15
- 238000005192 partition Methods 0.000 claims abstract description 97
- 238000006243 chemical reaction Methods 0.000 claims abstract description 9
- 238000007418 data mining Methods 0.000 claims abstract description 8
- 238000000638 solvent extraction Methods 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 21
- 238000012546 transfer Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 description 16
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
-
- 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/2465—Query processing support for facilitating data mining operations in structured databases
-
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种资产大数据平台架构优化方法,该方法包括:从客户端应用获取对资产数据仓库服务器的数据库表数据的查询;获取表示资产数据仓库服务器的数据库表的属性的表数据;根据用户偏好或表的多个属性来确定分区策略;由分区策略生成表分区,将用户查询分成多个查询子集;将多个查询子集输出到数据库驱动模块;接收对资产数据仓库服务器的数据库表执行多个查询子集得到的结果数据;将结果转换为数据挖掘工具格式;选择性地执行数据转换操作,以由资产数据仓库服务器的多个组件直接使用。本发明提出了一种资产大数据平台架构优化方法,降低了大数据平台的查询延迟,并保证了读数据一致性。
Description
技术领域
本发明涉及大数据,特别涉及一种资产大数据平台架构优化方法。
背景技术
开源分布式处理框架可用于大数据的分布式存储和处理。以Hadoop为例,通过分布式方式处理大量金融和资产数据,进而从大量结构化和非结构化数据中实现高效的资产数据处理。数据仓库引擎通过结构化查询语言为存储在分布式文件系统的大型数据集提供简单的数据汇总和临时交互式查询。然而,即使对于相对较小的数据集,数据仓库引擎查询的延迟通常也非常高,主要是因为开源分布式处理框架的批处理会导致作业提交和调度的大量开销。此外,分布式查询是在不同的时间点执行的。因此,每个查询的结果在组合时可能违反数据库检索协议规则中的读一致性。
发明内容
为解决上述现有技术所存在的问题,本发明提出了一种资产大数据平台架构优化方法,包括:
从客户端应用获取对资产数据仓库服务器的数据库表中的数据的查询,所述查询包括用户查询数据和用户偏好数据;
获取表示资产数据仓库服务器的数据库表的多个属性的表数据;
根据用户偏好或数据库表的多个属性来确定分区策略;
由所确定的分区策略生成表分区,用于将用户查询分成多个查询子集;
将所述多个查询子集输出到数据库驱动模块,所述数据库驱动模块包括数据转换逻辑组件和快照API;
接收由关联的映射器对资产数据仓库服务器的数据库表执行多个查询子集得到的结果数据;
将所述结果数据从资产数据仓库服务器的数据库表的格式转换为数据挖掘工具格式,以供资产数据仓库服务器的多个组件直接使用;以及
通过所述数据库驱动组件的快照API使用数据库驱动组件的数据转换逻辑组件来选择性地执行数据转换操作,以将结果数据从资产数据仓库服务器的数据库表格式转换为数据挖掘工具格式,以由资产数据仓库服务器的多个组件直接使用,从而在多个数据库和资产数据仓库服务器之间提供数据传输。
优选地,其中所述确定分区策略,进一步包括:
根据用户偏好和所述表的多个属性,从分区策略类型的集合中选择分区策略;
仅根据表的多个属性来确定分区策略;或者
仅根据用户偏好来确定分区策略。
优选地,其中获取表示资产数据仓库服务器的数据库表的多个属性的表数据,进一步包括:获取表示资产数据仓库服务器的数据库表的多个属性的元数据。
优选地,其中,所述获取表示资产数据仓库服务器的数据库表的多个属性的表数据包括:
获取表示所选数据仓库引擎层中的外部表的多个属性的表数据;
所述输出多个查询子集包括:
将多个查询子集输出到相关联的多个映射器,以由多个映射器作为并行数据处理框架的任务来执行。
优选地,选择性地将结果数据从资产数据仓库服务器的数据库表格式转换为数据挖掘工具格式,进一步包括,选择性地将结果数据从所述资产数据仓库服务器的数据库表格式转换为可写数据格式。
本发明相比现有技术,具有以下优点:
本发明提出了一种资产大数据平台架构优化方法,降低了大数据平台的查询延迟,并保证了读数据一致性。
附图说明
图1是根据本发明实施例的资产大数据平台架构优化方法的流程图。
具体实施方式
下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
本发明的一方面提供了一种资产大数据平台架构优化方法。图1是根据本发明实施例的资产大数据平台架构优化方法流程图。
本发明的数据平台架构优化方法在大大小并行分布式数据库环境中分区生成数据库,所述环境包括多个数据库和资产数据仓库服务器,所述资产数据仓库服务器提供多个数据库的数据汇总和查询。在水平扩展的同时提供容错存储的分布式文件系统,并行处理框架可以将处理作业分解成任务,并将任务分布在数据处理集群或大大小并行分布式环境中。将数据处理作业分为以下类型的任务:过滤和转换输入数据以产生键值对的映射任务;以及汇总映射结果以产生最终输出的规约任务。为了在数据处理框架中更好地定义数据处理作业,资产数据仓库服务器的API使用查询语言来查询和管理大型数据集,其中数据集可以驻留在分布式文件系统或任何其他等效的不同系统中。当要查询的数据存储在数据库表的关系表中时,本发明基于表的属性和用户偏好动态生成输入划分,将查询分成多个查询子集,以供大大小并行分布式环境使用。并行分布式数据库环境包括多个数据库和提供多个数据库的数据汇总和查询的资产数据仓库服务器。
本发明的分布式数据库环境包括数据库表存取引擎,其中该数据库表存取引擎在接收到对表中数据的查询时,基于表的属性和用户偏好来选择分区策略,以生成表分区,并根据表分区将查询分成多个查询子集。然后,对资产数据仓库服务器中创建的外部表执行每个查询子集,以从表中检索数据进行处理。此外,数据库表存取引擎包括输入格式组件,用于生成查询子集或调用分区策略来生成查询子集。外部表可以包含用户定义的分区策略类型作为属性。外部表的元数据存储在资产数据仓库服务器中,并用于访问数据库表中的数据。
当创建某个数据库表的分区时,该数据库表被逻辑划分,使得数据库表的每个分区可以通过外部工具访问,外部工具是用于访问大数据的任何等效的工具,大数据可以被组织并存储在分布式文件系统中,使得能够通过SQL的接口对存储在分布式文件系统的大数据集进行数据汇总和交互式查询。可以基于各种分区策略类型来划分数据库表,分区策略类型用于指示用户对数据库表应该如何划分的偏好。分区策略类型可以包括基于分区、大小、行约束和行ID范围来划分数据库表。在划分数据库表时,数据库表存取引擎还考虑表的属性,并且可以根据这些属性动态划分数据库表。
数据库表存取引擎基于多个因素使用启发式方法来划分表,因素包括用户提示、表的大小、表是否被拆分。例如,如果数据库表较小,数据库表访问者可以将整个表作为一个单独的分区,并将该分区提供给一个mapreduce作业进行处理。
数据库访问环境可以从客户端应用接收对数据库中的表中的数据的查询,例如SQL查询。将从表请求的数据传递到数据处理集群,用于通过分布在集群中的mapreduce作业进行处理。
资产数据仓库服务器是数据处理集群上的抽象层,并且能够使用SQL查询来访问数据库,同时将事务模型保持在事务中。资产数据仓库服务器包括元数据存储,元数据存储包括表示数据库表的多个属性的表数据,其中根据多个用户偏好或数据库表的多个属性来确定分区策略。用户执行查询命令,以通过执行由所确定的分区策略产生的查询子集来与数据库交互。
使用数据库表存取引擎在资产数据仓库服务器中选择性地创建外部表,其中存储在元数据存储中的外部表的定义可以用于访问数据库表中的数据。如果外部表被丢弃,数据库表的数据也不会被删除。当创建外部表时,数据库表存取引擎将其自身与外部表相关联。通过对外部表执行查询,从而从数据库表中检索数据。资产数据仓库服务器经由数据源抽象组件来访问数据库。数据源抽象组件向用户呈现来自各类型的数据源的数据的关系视图,用户不需要关心数据存储的物理位置或格式。
所述数据库表存取引擎使用数据定义语言来同时管理元数据存储和数据库元数据中的定义。外部表的元数据存储在资产数据仓库服务器中的元数据存储中。当对外部表执行选择查询时,表的元数据用于连接到数据库,以基于所选标准从数据库表中提取数据,并将数据呈现在资产数据仓库服务器中。
每个查询子集的信息可以被嵌入到单独的输入划分对象中。每个输入划分对象可以产生单独的记录读取器,其对外部表执行查询子集以从数据库表中检索记录。每个记录读取器可以进一步产生单独的映射器,以及相应的串行化器和去串行化器,以在其被单独执行时处理由每个查询子集检索的记录。每个映射器可以是数据处理集群中的映射规约作业的一部分。
为在提供多个数据库的数据汇总和查询的资产数据仓库服务器的大大小并行分布式数据库环境中的动态数据库分区生成,数据库表存取引擎从相关联的客户端应用获取对资产数据仓库服务器的数据库表中的数据的查询。所述查询包括代表用户查询的查询数据和代表用户偏好的用户偏好数据。
数据库表存取引擎首先获取表示数据库表的多个属性的表数据,并且数据库表存取引擎根据用户偏好或数据库表的多个属性来确定分区策略。接下来,数据库表存取引擎通过所选择的分区策略生成表分区,将用户查询分成多个查询子集。数据库表存取引擎将多个查询子集输出到相关联的多个映射器,以由每个查询子集的相关联的多个映射器针对数据库表执行。
在本发明进一步实施例中,考虑所有查询并不是自动执行的,而是在不同的时间点执行的。因此,每个查询的结果在组合时可能违反读一致性规则。因此,上述动态数据库分区生成方法进一步使用并行数据处理集群中的有效划分来提供任务之间的一致读取。数据库表存取引擎在生成将用户查询子集为多个查询子集的表的分区之前,在数据库中记录当前统一变更编号,所述统一变更编号表示由数据库使用的逻辑内部时间戳。将统一变更编号存储为每个生成的查询子集的一部分,并在使用不同任务执行查询子集期间,使用来自每个查询子集的统一变更编号来实现任务之间的一致读取。
统一变更编号对数据库内发生的事务进行排序,以满足事务的原子性、一致性、隔离性和持久性。统一变更编号以单调递增的顺序出现。如果事务A比事务B具有更低的统一变更编号,则其相对于数据库发生在更早的时间。可以使用统一变更编号来排除在创建统一变更编号后添加的记录。
在将存储的统一变更编号设置在用于执行的查询语句中之前检查其有效性。数据库表存取引擎检查生成的分区是否包括统一变更编号,或者存储的统一变更编号是否是有效的格式,或者包括统一变更编号的对象是否被正确初始化。如果有效性检查在多个查询子集查询子集中失败,则指示错误并重新执行每个查询子集。因此在优选的实施例中,数据库表存取引擎将多个查询子集输出到相关联的多个映射器,以由每个查询子集的相关联的多个映射器针对数据库表执行。发送到相关联的多个映射器的每个查询子集都包括表示当前统一变更编号的数据。
数据库表存取引擎在控制区块中启动控制功能,以使用分区策略选择逻辑来确定分区策略类型。当在控制区块确定表中的数据被拆分时,分区策略选择逻辑在控制区块选择基于分区的分区协议,用于生成基于分区的分区策略。然而,当在控制区块确定表中的数据未被拆分时,数据库表存取引擎在控制区块启动控制功能以确定表中的数据是否具有固定大小,并确定表中的记录数量。当在控制区块、确定表中的数据未被划分并且不是固定大小时,分区策略选择逻辑在控制区块选择基于约束的分区协议,用于生成基于约束的分区策略。当在控制区块确定表中的数据未被拆分并且具有固定大小时,数据库表存取引擎在控制区块从元数据存储确定表中的数据是否具有未知的数据库的块大小,或者在控制区块确定表中的数据是否具有已知的大小。当在控制区块确定表中的数据具有未知的数据库的块大小时,分区策略选择逻辑在控制区块选择基于大小的分区协议,用于生成基于大小的分区策略。
其中,在从资产数据仓库服务器获取表示该表的多个属性的表数据时,该表数据包括表示该表的分区方案的分区数据,该分区方案具有分区拓扑或者具有未分区拓扑,分区拓扑中,该表在逻辑上被划分为多个分区,在未分区拓扑中,该表在逻辑上未被划分。该方法进一步包括,根据指示基于分区的分区策略的用户偏好的查询数据或指示具有分区拓扑的表的分区方案的分区数据来选择基于分区的分区策略,并且由所选择的基于分区的分区策略为表的每个分区生成多个表分区,多个表分区将用户查询分成多个查询子集。然后,将多个查询子集输出到多个关联映射器,以由每个查询任务的多个关联映射器针对该表执行。
每个分区可以自定义名称和存储特性。分区增强了应用的可管理性和可用性,并有助于降低存储大数据的总成本。从应用的角度来看,分区表与非分区表是相同的;使用SQL查询访问分区表时,不需要进行任何修改。
当接收到用于选择表中的行的查询时,数据库表存取引擎选择适当的分区策略,执行转换以导出与该查询相关的有效分区的列表,计算每个有效分区包括的字节数和数据。数据库表存取引擎基于在大大小并行分布式环境即数据处理集群中定义的最大分区大小来组合或划分有效分区列表中的分区或子分区。如果一个分区的大小超过了最大分区大小,则可以将该分区划分为多个分区;如果多个分区的总大小小于预定义的最大大小,则可以将多个分区合并到一个分区中。
在将用户查询分成多个查询子集之后,本发明的方法将多个查询子集输出到多个关联映射器,以由每个查询任务的多个关联映射器针对该表执行。该方法还包括根据大小数据确定数据库表的多个范围,以及根据指示用户对基于大小的分区策略的偏好的多个查询数据或者指示数据库表的大小具有预定选择大小的数据库表数据来选择基于大小的分区策略。由所选择的基于大小的分区策略为该表的每个范围生成单个基于大小的分区查询,并且将该表的每个范围的单个基于大小的分区查询输出到多个关联映射器,以供该表的每个范围的单个基于大小的分区查询的多个关联映射器执行。
当在控制区块确定表中的数据未被拆分时,数据库表存取引擎在控制区块启动控制功能以确定表中的数据是否具有固定大小,并确定表中的记录数量。当在控制区块确定表中的数据未被划分并且不是固定大小时,分区策略选择逻辑在控制区块选择基于约束的分区协议,用于生成基于约束的分区策略。然而,当在控制区块确定表中的数据未被拆分并且具有固定大小时,数据库表存取引擎在控制区块中,从元数据存储确定表中的数据是否具有未知的数据库的块大小,或者在控制区块中,确定表中的数据是否具有已知的大小。当在控制区块确定表中的数据具有未知的数据库的块大小时,分区策略选择逻辑在控制区块选择基于大小的分区协议,用于生成基于大小的分区策略。由于存储器限制,映射器只能处理一定数量的表记录。向映射器中输入太多记录会导致映射器挂起。因此在控制区块使用基于大小的分区策略来控制每个输入划分的大小可以防止映射器挂起。
数据库表存取引擎进一步挖掘数据库表的数据字典,并为表的每个块创建行范围。每个行范围的行的总和是用户定义的大小或默认大小,但是对于最后一个块,其可以小于用户定义的大小或默认大小。数据库表存取引擎使用数据库表所占用的总块数、每个块的大小以及表中的总行数来计算行范围。数据库表存取引擎使用行范围将查询分成多个查询子集,其中每个查询子集然后被嵌入到输入划分对象中,并被提供给记录读取器以针对外部表执行。
根据另一实施例,表数据包括文件、数据块和根据用户对表中数据块的查询的表的行ID。因此方法还包括,根据用户查询为表中的数据块创建多个块范围,并为每个块范围创建行ID范围数据,行ID范围数据代表作为表的一行的唯一标识符的表的伪列。接下来,根据指示选择表中所有列的用户查询的查询数据或指示基于行ID的分区策略的用户偏好数据来选择基于行ID的分区策略,以及由所选择的基于行ID的分区策略生成将用户查询子集为多个行ID查询子集的表分区,其中每个行ID查询子集与根据行ID范围数据的块范围相关联。该方法还包括将多个行ID查询子集输出到多个关联映射器,以由多个行ID查询子集的多个关联映射器对该表执行。
当在控制区块确定表中的数据具有已知的数据库的块大小时,分区策略选择逻辑在控制区块选择基于行ID的分区协议,用于生成基于行ID的分区策略。数据库表中的每条记录都可以与一个行ID相关联,行ID是唯一标识表中一行的伪列。当表被重组、导出或导入时,每个行ID可以改变。在分区表中,当对应于行ID的行从一个分区迁移到另一个分区时,行ID也可以改变。行ID不需要物理存储在数据库中。
当用户或应用发出选择数据库表中所有行的查询时,数据库表访问者基于数据库表的属性和从资产数据仓库服务器获取的用户提示,选择基于行ID的分区策略。数据库表存取引擎然后可以获取该表的文件、数据块和行ID,并且从所选择的块创建多个块范围,其中每个块范围具有固定大小的块数量。数据库表存取引擎使用文件和行ID为每个块范围创建行ID,使得每个块范围有一个行ID范围。
数据库表存取引擎基于在每个块范围上创建的行ID范围将查询分成多个更小查询子集,其中每个查询子集然后被嵌入到输入划分对象中,并被提供给记录读取器,用于对外部表执行。
该方法还包括将多个查询子集输出到包括数据转换逻辑组件和快照API的数据库驱动组件,并接收由相关映射器对该表执行多个查询而得到的结果数据。当从数据库表返回结果集时,数据库驱动组件可以执行检查,以确定是否支持快速转换能力,如果支持,则通过数据库驱动组件的快照API,将结果数据从表的格式选择性地转换成可由相关资产数据仓库服务器的多个组件直接使用的数据挖掘工具格式。
如上所述,数据库表存取引擎用于通过资产数据仓库服务器从关系数据库中检索数据,并将数据传输到资产数据仓库服务器进行数据挖掘。当数据通过外部表从数据库表返回时,数据库驱动组件可以动态检查数据库驱动组件的快速转换能力并缓存当前状态。
当在资产数据仓库服务器中执行查询时,数据被选择,并且查询谓词被应用于资产数据仓库服务器以过滤查询不覆盖的行。如上所述执行的查询可能性能不佳,因为整个表被传输到资产数据仓库服务器对行进行修整。在SQL语句查询中,特别是过滤数据的部分,被称为谓词。通过将一些查询谓词降低到尽可能低的级别,可以通过避免在查询只检索某几行时将表中的所有行转移到资产数据仓库服务器来提高查询性能。
为实现数据库并行查询。将摘要因子代入查询优化计算中,获取摘要特征。利用摘要特征的均匀遍历和差分特性进行运算,使算法具有高效的搜索能力。
具体的内容如下详述:
以采集的数据库查询时间区间为基础,得到数据仓库的查询数量,表达为:
将摘要因子代入查询优化计算中,得到摘要特征,定义查询时间区间估计值的标准差μ,具体的表达公式如下
最终确定数据库摘要特征的表达式为μn+1=νxn(1-μn)
其中,n=1,2,3,....μ并且n∈[0,1],ν∈[0,4]。
利用摘要特征算法进行云计算环境下的数据库并行查询中摘要特征的提取,算法的具体过程为:
遍历每个数据仓库,编号表示0,1,2,…,N0,整个平台的数据仓库总数为N0=Λi-λi
其中,λi表示数据仓库i的查询数,Λ0是整个集群平台的查询总数,每个数据仓库保存一个Λi。
本发明的优化查询处理方法,使得谓词从数据库中的资产数据仓库服务器下推到表级。可以通过使用外部表的标准属性来实现表级的谓词下推,其中外部表是用查询和定义为表属性的用于下推的查询谓词创建的。当接收到用于选择表中的行的查询时,数据库表存取引擎操作来选择适当的分区策略,制定查询以在表级执行查询谓词。
所述外部表使用查询谓词创建,用于下推到外部表的属性的表级,其中外部表由数据库表存取引擎管理,并且可以用于访问数据库表。当接收到选择数据库表中所有行的查询时,数据库表存取引擎选择适当的分区策略来生成查询子集,并且另外使用从资产数据仓库服务器检索的信息来识别该查询是否被定义为外部表的参数或属性。随后,数据库表存取引擎基于来自外部表元数据存储的信息来格式化每个查询子集,即为下推定义的谓词被添加到SQL语句中,并被传递到数据库以在表级执行。
综上所述,本发明提出了一种资产大数据平台架构优化方法,降低了大数据平台的查询延迟,并保证了读数据一致性。
显然,本领域的技术人员应该理解,上述的本发明的各模块或各步骤可以用通用的计算系统来实现,其们可以集中在单个的计算系统上,或者分布在多个计算系统所组成的网络上,可选地,其们可以用计算系统可执行的程序代码来实现,从而,可以将其们存储在存储系统中由计算系统来执行。这样,本发明不限制于任何特定的硬件和软件结合。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或转换本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界者这种范围和边界的等同形式内的全部变化和修改例。
Claims (4)
1.一种资产大数据平台架构优化方法,其特征在于,包括:
从客户端应用获取对资产数据仓库服务器的数据库表中的数据的查询,所述查询包括用户查询数据和用户偏好数据;
获取表示资产数据仓库服务器的数据库表的多个属性的表数据;
根据用户偏好或数据库表的多个属性来确定分区策略;
由所确定的分区策略生成表分区,用于将用户查询分成多个查询子集;
将所述多个查询子集输出到数据库驱动模块,所述数据库驱动模块包括数据转换逻辑组件和快照API;
接收由关联的映射器对资产数据仓库服务器的数据库表执行多个查询子集得到的结果数据;
将所述结果数据从资产数据仓库服务器的数据库表的格式转换为数据挖掘工具格式,以供资产数据仓库服务器的多个组件直接使用;以及
通过所述数据库驱动组件的快照API使用数据库驱动组件的数据转换逻辑组件来选择性地执行数据转换操作,从而在多个数据库和资产数据仓库服务器之间提供数据传输;
其中所述确定分区策略,进一步包括:
根据用户偏好和所述表的多个属性,从分区策略类型的集合中选择分区策略;
仅根据表的多个属性来确定分区策略;或者
仅根据用户偏好来确定分区策略。
2.根据权利要求1所述的方法,其特征在于,其中获取表示资产数据仓库服务器的数据库表的多个属性的表数据,进一步包括:获取表示资产数据仓库服务器的数据库表的多个属性的元数据。
3.根据权利要求1所述的方法,其特征在于,其中,所述获取表示资产数据仓库服务器的数据库表的多个属性的表数据包括:
获取表示所选数据仓库引擎层中的外部表的多个属性的表数据;
所述输出多个查询子集包括:
将多个查询子集输出到相关联的多个映射器,以由多个映射器作为并行数据处理框架的任务来执行。
4.根据权利要求1所述的方法,其特征在于:选择性地将结果数据从资产数据仓库服务器的数据库表格式转换为数据挖掘工具格式,进一步包括:
选择性地将结果数据从所述资产数据仓库服务器的数据库表格式转换为可写数据格式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111038204.0A CN113742346A (zh) | 2021-09-06 | 2021-09-06 | 资产大数据平台架构优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111038204.0A CN113742346A (zh) | 2021-09-06 | 2021-09-06 | 资产大数据平台架构优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113742346A true CN113742346A (zh) | 2021-12-03 |
Family
ID=78735979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111038204.0A Pending CN113742346A (zh) | 2021-09-06 | 2021-09-06 | 资产大数据平台架构优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113742346A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114490810A (zh) * | 2021-12-31 | 2022-05-13 | 新奥数能科技有限公司 | 用户行为数据统计方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105159971A (zh) * | 2015-08-26 | 2015-12-16 | 成都布林特信息技术有限公司 | 一种云平台数据检索方法 |
US10031935B1 (en) * | 2015-08-21 | 2018-07-24 | Amazon Technologies, Inc. | Customer-requested partitioning of journal-based storage systems |
US10078684B2 (en) * | 2014-09-26 | 2018-09-18 | Oracle International Corporation | System and method for query processing with table-level predicate pushdown in a massively parallel or distributed database environment |
US10089377B2 (en) * | 2014-09-26 | 2018-10-02 | Oracle International Corporation | System and method for data transfer from JDBC to a data warehouse layer in a massively parallel or distributed database environment |
US10180973B2 (en) * | 2014-09-26 | 2019-01-15 | Oracle International Corporation | System and method for efficient connection management in a massively parallel or distributed database environment |
CN112905595A (zh) * | 2021-03-05 | 2021-06-04 | 腾讯科技(深圳)有限公司 | 一种数据查询方法、装置及计算机可读存储介质 |
-
2021
- 2021-09-06 CN CN202111038204.0A patent/CN113742346A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10078684B2 (en) * | 2014-09-26 | 2018-09-18 | Oracle International Corporation | System and method for query processing with table-level predicate pushdown in a massively parallel or distributed database environment |
US10089377B2 (en) * | 2014-09-26 | 2018-10-02 | Oracle International Corporation | System and method for data transfer from JDBC to a data warehouse layer in a massively parallel or distributed database environment |
US10180973B2 (en) * | 2014-09-26 | 2019-01-15 | Oracle International Corporation | System and method for efficient connection management in a massively parallel or distributed database environment |
US10031935B1 (en) * | 2015-08-21 | 2018-07-24 | Amazon Technologies, Inc. | Customer-requested partitioning of journal-based storage systems |
CN105159971A (zh) * | 2015-08-26 | 2015-12-16 | 成都布林特信息技术有限公司 | 一种云平台数据检索方法 |
CN112905595A (zh) * | 2021-03-05 | 2021-06-04 | 腾讯科技(深圳)有限公司 | 一种数据查询方法、装置及计算机可读存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114490810A (zh) * | 2021-12-31 | 2022-05-13 | 新奥数能科技有限公司 | 用户行为数据统计方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170083573A1 (en) | Multi-query optimization | |
EP3828723B1 (en) | Transparent discovery of semi-structured data schema | |
US11899666B2 (en) | System and method for dynamic database split generation in a massively parallel or distributed database environment | |
US9177025B2 (en) | Hash-join in parallel computation environments | |
US10528596B2 (en) | System and method for consistent reads between tasks in a massively parallel or distributed database environment | |
US10089377B2 (en) | System and method for data transfer from JDBC to a data warehouse layer in a massively parallel or distributed database environment | |
US10380114B2 (en) | System and method for generating rowid range-based splits in a massively parallel or distributed database environment | |
US11544268B2 (en) | System and method for generating size-based splits in a massively parallel or distributed database environment | |
US10180973B2 (en) | System and method for efficient connection management in a massively parallel or distributed database environment | |
EP2778972B1 (en) | Shared cache used to provide zero copy memory mapped database | |
US10078684B2 (en) | System and method for query processing with table-level predicate pushdown in a massively parallel or distributed database environment | |
US10089357B2 (en) | System and method for generating partition-based splits in a massively parallel or distributed database environment | |
EP2833277B1 (en) | Global dictionary for database management systems | |
US20100235344A1 (en) | Mechanism for utilizing partitioning pruning techniques for xml indexes | |
CN113688127B (zh) | 数据压缩技术 | |
EP2469423B1 (en) | Aggregation in parallel computation environments with shared memory | |
Guo et al. | A new ETL approach based on data virtualization | |
US20240119053A1 (en) | Fingerprints for database queries | |
CN113742346A (zh) | 资产大数据平台架构优化方法 | |
US12026162B2 (en) | Data query method and apparatus, computing device, and storage medium | |
Arnaut et al. | Phoenix: A relational storage component for the cloud | |
US20170031909A1 (en) | Locality-sensitive hashing for algebraic expressions | |
EP2469424B1 (en) | Hash-join in parallel computation environments | |
WO2017019889A1 (en) | Maintaining performance in the presence of insertions, deletions, and streaming queries | |
US20180232416A1 (en) | Distribute execution of user-defined function |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211203 |