一种基于数据仓库的数据处理装置及方法

文档序号:6403147阅读:143来源:国知局
专利名称:一种基于数据仓库的数据处理装置及方法
技术领域
本发明涉及计算机数据处理技术领域,特别是涉及一种基于数据仓库的数据处理装置及方法。
背景技术
信息多样化的今天,随着数据逐渐增多,数据的存储也达到了一定的高度,在很多企业进入了数据仓库的时代,越来越多的应用开始使用数据仓库的数据,从中获取各自需要的信息。在这当中,就有很大一部分需求是将仓库的数据做一定的转换以满足自己的目的。由于数据仓库中存储的是海量数据,如果以传统方式,每个应用都以自己的途径通过循环、匹配、映射等方法做转换将有极大的效率问题。举个简单的例子,当来自不同应用的请求分别对海量数据进行抽取并进行数据转换,其中有40%以上的请求都使用到了相同的客户信息关联协议的数据,另有30%使用到相同的日志表关联地址信息,如果采用传统方式,每个应用都以自己的途径独立进行数据转换,将导致以下缺陷:1、数据区间重复访问,即使有了数据库连接池技术,仍得承认,重复N次操作将把时间横向扩大N倍,对于外围接入不通过数据库连接池的访问,将有更大的开销;2、数据源之间被反复连接,当数据库进行连接时,底层会进行许多繁琐的重分布,即使全部使用索引方式连接,数据库也有很大的开销,更何况实际情况做不到全索引连接;3、数据条件的不确定性,当数据达到海量时,再将所有数据与自己需要的条件匹配,如同大海捞针,运行的时间有很大的不可控性。
·
4、系统资源被大量冗余占用,服务器CPU长期在计算,内存空间得不到有效利用,真正迫切的请求可能仍在进程队列中等待资源的释放。

发明内容
本发明实施例提供一种基于数据仓库的数据处理装置及方法,以克服多渠道海量数据转换反复连接数据库的问题,提高了数据转换效率。一方面,本发明实施例提供了一种基于数据仓库的数据处理装置,所述基于数据仓库的数据处理装置包括:数据存储装置、数据预处理装置、数据解析装置、数据重构装置、执行监控装置,其中:数据存储装置,用于作为数据的存储空间,该数据存储装置包含:原始存储单元、关键字存储单元、预处理存储单元、统计存储单元、数据源关系加工存储单元、单元素取值存储单元、压缩重组存储单元、海量数据映射存储单元;数据预处理装置,用于读取原始存储单元和关键字存储单元,分别得到原始数据及关键字字典,通过关键字字典对原始数据做拆解,得到关键要素,关键要素包括:目标数据源、数据源关系集合、元素取值集合及转换结果,随后将关键要素存入预处理存储单元,其中的数据称为预处理数据,最后数据预处理装置发出完成消息通知数据解析装置;数据解析装置,用于接收到数据预处理装置的完成消息后,读取数据存储装置中的预处理数据,解析得到数据源关系集合中不同维度的转换结果,将其保存在数据存储装置中的数据源关系加工存储单元;同时还用于从数据存储装置中的统计存储单元读取统计信息,生成元素集合中的优先级,并将其保存在统计存储单元,同时发送完成信息给数据重构装置;数据重构装置,用于接收来自数据解析装置发来的完成消息,从数据存储装置读取数据源关系加工存储单元及统计存储单元数据,进行全局性的压缩,重组,形成完整的执行语句,并存入压缩重组存储单元,之后发送完成消息至执行监控装置;执行监控装置,用于接收数据重构装置发送的完成消息,从压缩重组存储单元得到可执行的语句,并以多线程方式提交执行;在执行过程中,执行监控装置读取数据源关系加工存储单元及统计存储单元中的数据,分别得到数据源连接集合及元素取值集合,对于正在执行的语句进行监控,得到每种数据源连接配以元素取值在数据仓库中出现的记录数,并对单个元素条件进行统计;将统计结果记录进统计存储单元中,供数据解析装置下次调用获取。可选的,在本发明一实施例中,所述数据解析装置包括:数据源加工单元和元素加工单元,其中:数据源加工单元,用于接收来自数据预处理装置发来的完成消息,从数据存储装置中读取预处理存储单元的数据;对预处理数据中数据源关系集合进行解析,提取数据源及数据源之间的关系,通过对数据源及数据源之间的关系进行变形计算,最终计算出“数据源关系”、“转换1”,“转换2”,“转换3” ;并将其保存在数据存储装置中的数据源关系加工存储单元;同时发送完成消息给元素加工单元;元素加工单元,用于接收数据源加工单元的完成消息,从数据存储装置读取数据源关系加工存储单元中相同的“转换2”和“转换3”对应的“序号”,用这些“序号”与预处理存储单元中的“序号”做相等关联,得到预处理存储单元中的元素取值集合,然后,结合统计存储单元中统计出现次数的状态对元素取值集合进行频度分析得到各元素取 值在表达式中出现的次数,将其补充到统计存储单元中。可选的,在本发明一实施例中,所述数据源加工单元包括:数据源提取单元和数据源解析重组单元,其中:数据源提取单元,用于接收来自数据预处理装置发来的完成消息,从数据存储装置中读取预处理存储单元的数据源关系集合以及关键存储单元中的关键字,在数据源关系集合中按顺序匹配关键字,得到数据源关系,写入数据存储装置中的数据源关系加工存储单元,并发送完成消息给数据源解析重组单元;数据源解析重组单元,用于接收来自数据源提取单元发来的完成消息,从数据源关系加工存储单元读取数据源关系,对其进行join前置,数据源排序,数据源连接条件排序三步操作,得到压缩重组的数据源关系集合,将结果填入数据源关系加工存储单元中的“转换1”,“转换2”,“转换3”,完成后发送完成消息给元素加工单元。可选的,在本发明一实施例中,所述元素加工单元包括:元素提取单元、单元素表达式统计单元和重定序单元,其中:元素提取单元,用于接收数据源加工单元发送的完成消息,从数据存储装置中读取数据源关系加工存储单元,得到相同的“转换2”和“转换3”对应的“序号”,根据序号取出预处理存储单元中的元素取值集合,并从中提练出单元素取值,更新到统计存储单元中,发送完成消息给单元素表达式统计单元;单元素表达式统计单元,用于接收元素提取单元发送的完成消息,从统计存储单元读取表达式标志为I的元素取值集合,计算得到单元素的表达式中出现次数,将结果插回统计存储单元中的表达式中出现次数,随后发送完成消息给重定序单元;重定序单元,用于接收来自单元素表达式统计单元发送的完成消息,从统计存储单元读取不同的出现次数,对元素取值集合进行上下,左右顺序性的调整,得到新的排列组合,更新预处理存储单元,随后发送完成消息给数据重构装置。可选的,在本发明一实施例中,所述数据重构装置包括:数据源合并单元和元素合并单元,其中:数据源合并单元,用于接收数据解析装置发送的完成消息,读取数据存储装置中的数据源关系加工存储单元,将所有相同的数据源关系组合在一起,形成一句语句,得到不包含元素取值的转换语句,将其存入数据存储装置中的压缩重组存储单元,随后,发送完成消息给元素合并单元;元素合并单元,用于接收来自数据源合并单元的完成消息,读取数据源关系加工存储单元,取相同的数据源关系集合,即相同的“转换2”、“转换3”至预处理存储单元中,取出数据源关系集合对应的元素取值集合与转换结果;此时的元素取值集合已被数据解析装置重新调整了顺序,根据元素取值集合与转换结果,由元素合并单元进行重组,生成的完整的转换语句,补充进压缩重组存储单元中;随后发送完成消息给执行监控装置。可选的,在本发明一实施例中,所述执行监控装置包括:转换语句执行单元、组合计数单元和单元素条件计数单元,其中:转换语句执行单元,用于接收来自数据重构装置发送的完成消息,读取压缩重组·存储单元,将其中的语句分线程执行;语句全部执行完成后,发送完成消息给组合计数单元;组合计数单元,用于接收来自转换语句执行单元的完成消息,在统计存储单元中遍历所有表达式标志为I的记录,取得数据源组合和元素取值集合,并用这两个数据对转换语句执行单元执行的数据进行监控,从而捕获海量数据映射存储单元中数据源组合和元素取值集合存在的记录数,将其更新入统计出现次数列中;随后发送完成消息给单元素条件计数单元;单元素条件计数单元,用于接收来自组合计数单元的完成消息,读取统计存储单元的中标志为I的统计出现次数,以此数据对单元素取值出现次数进行计算,将计算结果补充到统计存储单元的单元素取值对应的统计出现次数列。另一方面,本发明实施例提供了一种基于数据仓库的数据处理方法,所述基于数据仓库的数据处理方法应用于上述基于数据仓库的数据处理装置,具体包括:数据预处理装置读取数据存储装置中的原始存储单元,对原始数据做预处理,存入数据存储装置中的预处理存储单元,完成后通知数据源解析装置;数据源解析装置读取数据存储装置中的预处理存储单元,将预处理后的数据传给数据源提取单元处理,由数据源提取单元对数据源语句进行解析,提取出包含在语句中的数据源,完成后通知数据源解析重组单元;数据源解析重组单元将数据源提取单元解析出的数据源进一步解析,并按固定格式重组,将其保存入数据存储装置中的数据源关系加工存储单元,结束后发送通知给元素加工单元;元素加工单元读取数据存储装置中的预处理存储单元及数据源关系加工存储单元,将数据传给元素提取单元处理,元素提取单元按数据源关系加工存储单元中相同的数据源关系,找到数据存储装置中的预处理存储单元中的元素取值,并提取出单元素取值及各元素的组合关系,完成后发送消息通知重定序单元;
重定序单元根据分类情况将单元组合进行排列组合,完成后通知数据重构装置;数据重构装置接到通知后,调用子单元数据源合并单元,由数据源合并单元对全局数据的数据源集合进行压缩合并,生成新的数据源集合,完成后发送另一个子单元元素合并单兀;元素合并单元对全局数据的元素取值集合进行压缩合并,并在数据源合并单元生成的数据基础上,补全元素取值部分,完成后通知执行监控装置;执行监控装置调用子单元转换语句执行单元,由其负责将所有的转换后的数据进行提交执行;在转换语句执行单元开始执行的同时,由执行监控装置发送通知给组合计数单元及单元素计数单元;组合计数单元及单元素计数单元负责对转换语句执行单元执行的语句进行监控,并收集执行后的统计信息,以此更新数据存储装置中的统计存储单元。

上述技术方案具有如下有益效果:将来自不同渠道的数据转换语句逐个拆分,抽取出关键要素,并从宏观上将所有转换语句看成整体,进行全局压缩及重组,使不同渠道的语句如同来自一个渠道,从而解决了数据库重复访问、数据源反复连接,实现了语句运行时间的确定性、系统资源有效利用,提高了数据转换的效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一种基于数据仓库的数据处理装置结构示意图;图2为本发明实施例数据解析装置的结构示意图;图3为本发明实施例数据源加工单元的结构示意图;图4为本发明实施例元素加工单元的结构示意图;图5为本发明实施例数据重构装置的结构示意图;图6为本发明实施例执行监控装置的结构示意图;图7为本发明实施例一种基于数据仓库的数据处理方法流程图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,为本发明实施例一种基于数据仓库的数据处理装置结构示意图,所述基于数据仓库的数据处理装置包括:数据存储装置1、数据预处理装置2、数据解析装置
3、数据重构装置4、执行监控装置5,其中:数据存储装置1,用于作为数据的存储空间,该数据存储装置I包含:原始存储单元、关键字存储单元、预处理存储单元、统计存储单元、数据源关系加工存储单元、单元素取值存储单元、压缩重组存储单元、海量数据映射存储单元;数据预处理装置2,用于读取原始存储单元和关键字存储单元,分别得到原始数据及关键字字典,通过关键字字典对原始数据做拆解,得到关键要素,关键要素包括:目标数据源、数据源关系集合、元素取值集合及转换结果,随后将关键要素存入预处理存储单元,其中的数据称为预处理数据,最后数据预处理装置2发出完成消息通知数据解析装置3 ;数据解析装置3,用于接收到数据预处理装置2的完成消息后,读取数据存储装置I中的预处理数据,解析得到数据源关系集合中不同维度的转换结果,将其保存在数据存储装置I中的数据源关系加工存储单元;同时还用于从数据存储装置I中的统计存储单元读取统计信息,生成元素集合中的优先级,并将其保存在统计存储单元,同时发送完成信息给数据重构装置4 ;数据重构装置4,用于接收来自数据解析装置3发来的完成消息,从数据存储装置I读取数据源关系加工存储单元及统计存储单元数据,进行全局性的压缩,重组,形成完整的执行语句,并存入压缩重组存储单元,之后发送完成消息至执行监控装置5 ;执行监控装置5,用于接收数据重构装置4发送的完成消息,从压缩重组存储单元得到可执行的语句,并以多线程方式提交执行;在执行过程中,执行监控装置5读取数据源关系加工存储单元及统计存储单元中的数据,分别得到数据源连接集合及元素取值集合,对于正在执行的语句进行监控,得到每种数据源连接配以元素取值在数据仓库中出现的记录数,并对单个元素条件进行统计;将统计结果记录进统计存储单元中,供数据解析装置3下次调用获取。可选的,如图2所示,为本发明实施例数据解析装置的结构示意图,所述数据解析装置3包括:数据源加工单元301和元素加工单元302,其中:数据源加工单元301,用于接收来自数据预处理装置2发来的完成消息,从数据存储装置I中读取预处理存储单元的数据;对预处理数据中数据源关系集合进行解析,提取数据源及数据源之间的关系,通过对数据源及数据源之间的关系进行变形计算,最终计算出“数据源关系”、“转换1”,“转换2”,“转换3” ;并将其保存在数据存储装置I中的数据源关系加工存储单元;同时发送完成消息给元素加工单元302 ;元素加工单元302,用于接收数据源加工单元301的完成消息,从数据存储装置I读取数据源关系加工存储单元中相同的“转换2”和“转换3”对应的“序号”,用这些“序号”与预处理存储单元中的“序号”做相等关联,得到预处理存储单元中的元素取值集合,然后,结合统计存储单元中统计出现次数的状态对元素取值集合进行频度分析得到各元素取值在表达式中出现的次数,将其补充到统计存储单元中。可选的,如图3所示,为本发明实施例数据源加工单元的结构示意图,所述数据源加工单元301包括:数据源提取单元30101和数据源解析重组单元30102,其中:数据源提取单元30101,用于接收来自数据预处理装置2发来的完成消息,从数据存储装置I中读取预处理存储单元的数据源关系集合以及关键存储单元中的关键字,在数据源关系集合中按顺序匹配关键字,得到数据源关系,写入数据存储装置I中的数据源关系加工存储单元,并发送完成消息给数据源解析重组单元30102 ;数据源解析重组单元30102,用于接收来自数据源提取单元30101发来的完成消息,从数据源关系加工存储单元读取数据源关系,对其进行join前置,数据源排序,数据源连接条件排序三步操作,得到压缩重组的数据源关系集合,将结果填入数据源 关系加工存储单元中的“转换1”,“转换2”,“转换3”,完成后发送完成消息给元素加工单元302。可选的,如图4所示,为本发明实施例元素加工单元的结构示意图,所述元素加工单元302包括:元素提取单元30201、单元素表达式统计单元30202和重定序单元30203,其中:元素提取单元30201,用于接收数据源加工单元301发送的完成消息,从数据存储装置I中读取数据源关系加工存储单元,得到相同的“转换2”和“转换3”对应的“序号”,根据序号取出预处理存储单元中的元素取值集合,并从中提练出单元素取值,更新到统计存储单元中,发送完成消息给单元素表达式统计单元30202 ;单元素表达式统计单元30202,用于接收元素提取单元30201发送的完成消息,从统计存储单元读取表达式标志为I的元素取值集合,计算得到单元素的表达式中出现次数,将结果插回统计存储单元中的表达式中出现次数,随后发送完成消息给重定序单元30203 ;重定序单元30203,用于接收来自单元素表达式统计单元30202发送的完成消息,从统计存储单元读取不同的出现次数,对元素取值集合进行上下,左右顺序性的调整,得到新的排列组合,更新预处理存储单元,随后发送完成消息给数据重构装置4。可选的,如图5所示,为本发明实施例数据重构装置的结构示意图,所述数据重构装置4包括:数据源合并单元401和元素合并单元402,其中:数据源合并单元401,用于接收数据解析装置3发送的完成消息,读取数据存储装置I中的数据源关系加工存储单元,将所有相同的数据源关系组合在一起,形成一句语句,得到不包含元素取值的转换语句,将其存入数据存储装置I中的压缩重组存储单元,随后,发送完成消息给元素合并单元402 ;元素合并单元402,用于接收来自数据源合并单元401的完成消息,读取数据源关系加工存储单元,取相同的数据源关系集合,即相同的“转换2”、“转换3”至预处理存储单元中,取出数据源关系集合对应的元素 取值集合与转换结果;此时的元素取值集合已被数据解析装置3重新调整了顺序,根据元素取值集合与转换结果,由元素合并单元402进行重组,生成的完整的转换语句,补充进压缩重组存储单元中;随后发送完成消息给执行监控装置5。可选的,如图6所示,为本发明实施例执行监控装置的结构示意图,所述执行监控装置5包括:转换语句执行单元501、组合计数单元502和单元素条件计数单元503,其中:转换语句执行单元501,用于接收来自数据重构装置4发送的完成消息,读取压缩重组存储单元,将其中的语句分线程执行;语句全部执行完成后,发送完成消息给组合计数单元502 ;组合计数单元502,用于接收来自转换语句执行单元501的完成消息,在统计存储单元中遍历所有表达式标志为I的记录,取得数据源组合和元素取值集合,并用这两个数据对转换语句执行单元501执行的数据进行监控,从而捕获海量数据映射存储单元中数据源组合和元素取值集合存在的记录数,将其更新入统计出现次数列中;随后发送完成消息给单元素条件计数单元503 ;单元素条件计数单元503,用于接收来自组合计数单元502的完成消息,读取统计存储单元的中标志为I的统计出现次数,以此数据对单元素取值出现次数进行计算,将计算结果补充到统计存储单元的单元素取值对应的统计出现次数列。另一方面,对应于上述装置实施例,如图7所示,为本发明实施例一种基于数据仓库的数据处理方法流程图,所述基于数据仓库的数据处理方法应用于上述基于数据仓库的数据处理装置,具体包括:701、数据预处理装置2读取数据存储装置I中的原始存储单元,对原始数据做预处理,存入数据存储装置I中的预处理存储单元,完成后通知数据源解析装置;
702、数据源解析装置读取数据存储装置I中的预处理存储单元,将预处理后的数据传给数据源提取单元30101处理,由数据源提取单元30101对数据源语句进行解析,提取出包含在语句中的数据源,完成后通知数据源解析重组单元30102 ;703、数据源解析重组单元30102将数据源提取单元30101解析出的数据源进一步解析,并按固定格式重组,将其保存入数据存储装置I中的数据源关系加工存储单元,结束后发送通知给元素加工单元302 ;704、元素加工单元302读取数据存储装置I中的预处理存储单元及数据源关系加工存储单元,将数据传给元素提取单元30201处理,元素提取单元30201按数据源关系加工存储单元中相同的数据源关系,找到数据存储装置I中的预处理存储单元中的元素取值,并提取出单元素取值及各元素的组合关系,完成后发送消息通知重定序单元30203 ;705、重定序单元30203根据分类情况将单元组合进行排列组合,完成后通知数据重构装置4 ;706、数据重构装置4接到通知后,调用子单元数据源合并单元401,由数据源合并单元401对全局数据的数据源集合进行压缩合并,生成新的数据源集合,完成后发送另一个子单元元素合并单元402 ;707、元素合并单元402对全局数据的元素取值集合进行压缩合并,并在数据源合并单元401生成的数据基础上,补全元素取值部分,完成后通知执行监控装置5 ;708、执行监控装置5调用子单元转换语句执行单元501,由其负责将所有的转换后的数据进行提交执行;在转换语句执行单元501开始执行的同时,由执行监控装置5发送通知给组合计数单元502及单元素计数单元;

709、组合计数单元502及单元素计数单元负责对转换语句执行单元501执行的语句进行监控,并收集执行后的统计信息,以此更新数据存储装置I中的统计存储单元。本发明实施例上述技术方案具有如下有益效果:将来自不同渠道的数据转换语句逐个拆分,抽取出关键要素,并从宏观上将所有转换语句看成整体,进行全局压缩及重组,使不同渠道的语句如同来自一个渠道,从而解决了数据库重复访问、数据源反复连接,实现了语句运行时间的确定性、系统资源有效利用,提高了数据转换的效率。以下结合具体应用实例对上述本发明实施例图1-图7进行详细说明:本发明应用实例为了克服多渠道海量数据转换反复连接数据库,效率较低的问题,提出了一种基于数据仓库的数据处理装置及方法。该方法将来自不同渠道的数据转换语句逐个拆分,抽取出关键要素,并从宏观上将所有转换语句看成整体,进行全局压缩及重组,使不同渠道的语句如同来自一个渠道,从而解决了数据库重复访问、数据源反复连接,实现了语句运行时间的确定性、系统资源有效利用,提高了数据转换的效率。本发明应用实例由于不改变请求语句的含义,只是针对其结构进行压缩和重组,所以它不局限于数据仓库,甚至于落地到非海量数据,也有其很好的通用性。对多渠道、海量数据则有极强的针对性。本发明应用实例提供了一种基于数据仓库的数据处理装置及方法。通过前置式接口收集不同渠道提供来的数据转换请求,在其对海量数据做抽取、转换前,对转换语句进行汇总,并通过本发明应用实例进行压缩和重组,在这个过程中,装置会对语句进行宏观到微观的分析,将一句完整的请求拆分成数据源和元素,并分别针对海量数据的特点进行重构,而不改变语义。同时,该发明还能动态的选择最优重组方式,不受渠道增加的影响,能随数据增长变化,充分弥补了传统技术架构在此方面的不足。首先对本发明应用实例所涉及到的数据仓库的技术术语说明:数据源关系集合——由多个数据源组成,数据源之间存在着一系列关系,使数据之间产生联系,以便组成新的数据源,对于这种新数据源的表达式此处称为数据源关系集
口 ο元素取值集合一每个数据源都有不同维度的元素组成,以描述这组记录的属性,而这些元素的取值,则表现出记录的当前形态,例如,长方形由长和宽两个元素组成,而长为3,宽为2,则表述了此长方形元素的取值。而元素取值集合则包含一系列元素取值。转换输出一对于不同特征事物定义的符号。数据源连接条件一当数据源之间建立关联后,不同数据源之间共性的元素建立的约束关系。下面结合上述图1-图7进行具体描述:图1是本发明提供的一种基于数据仓库的数据处理装置的示意图,该装置包括:数据存储装置1、数据预处理装置2、数据解析装置3、数据重构装置4、执行监控装置5。数据存储装置1,作为发明中所有数据的存储空间,该装置包含:原始存储单元、关键字存储单元、预处理存储单元、统计存储单元、数据源关系加工存储单元、单元素取值存储单元、压缩重组存储单元、海量数据映射存储单元。每个存储单元将在后续装置使用中
说明。“原始存储单元”中 保存了来自各应用的数据转换句语,称为“原始数据”。如表1.1
update A from A, BtC setA-X--TQOOr WHFME A.coll-------Rxoll
and A.ca!2......C.coll and A.a—3 ANDRb......TO’
update A sei A.x.......'TQO13' where
A.a......4表1.1关键字存储单元包含以下关键字:update,from, set, where, and, union, sel,join, left join, right join。“海量数据映射存储单元”中通过view视图方式映射了如数据仓库等需要被转换的数据。即原始存储单元中的转换语句操作的对象。数据预处理装置2,负责读取“原始存储单元”和“关键字存储单元”,分别得到原始数据(表1.1)及关键字字典,通过关键字字典对原始数据做拆解,得到关键要素,关键要素包括“目标数据源”、“数据源关系集合”、“元素取值集合”及“转换结果”,随后将要素存入“预处理存储单元”,其中的数据称为“预处理数据”,最后数据预处理装置2发出消息通知数据解析装置3。以表1.1中的数据为例,经过数据预处理装置2处理后的数据参见表2.1:
权利要求
1.一种基于数据仓库的数据处理装置,其特征在于,所述基于数据仓库的数据处理装置包括:数据存储装置、数据预处理装置、数据解析装置、数据重构装置、执行监控装置,其中: 数据存储装置,用于作为数据的存储空间,该数据存储装置包含:原始存储单元、关键字存储单元、预处理存储单元、统计存储单元、数据源关系加工存储单元、单元素取值存储单元、压缩重组存储单元、海量数据映射存储单元; 数据预处理装置,用于读取原始存储单元和关键字存储单元,分别得到原始数据及关键字字典,通过关键字字典对原始数据做拆解,得到关键要素,关键要素包括:目标数据源、数据源关系集合、元素取值集合及转换结果,随后将关键要素存入预处理存储单元,其中的数据称为预处理数据,最后数据预处理装置发出完成消息通知数据解析装置; 数据解析装置,用于接收到数据预处理装置的完成消息后,读取数据存储装置中的预处理数据,解析得到数据源关系集合中不同维度的转换结果,将其保存在数据存储装置中的数据源关系加工存储单元;同时还用于从数据存储装置中的统计存储单元读取统计信息,生成元素集合中的优先级,并将其保存在统计存储单元,同时发送完成信息给数据重构装置; 数据重构装置,用于接收来自数据解析装置发来的完成消息,从数据存储装置读取数据源关系加工存储单元及统计存储单元数据,进行全局性的压缩,重组,形成完整的执行语句,并存入压缩重组存储单元,之后发送完成消息至执行监控装置; 执行监控装置,用于接收数据重 构装置发送的完成消息,从压缩重组存储单元得到可执行的语句,并以多线程方式提交执行;在执行过程中,执行监控装置读取数据源关系加工存储单元及统计存储单元中的数据,分别得到数据源连接集合及元素取值集合,对于正在执行的语句进行监控,得到每种数据源连接配以元素取值在数据仓库中出现的记录数,并对单个元素条件进行统计;将统计结果记录进统计存储单元中,供数据解析装置下次调用获取。
2.如权利要求1所述基于数据仓库的数据处理装置,其特征在于,所述数据解析装置包括:数据源加工单元和元素加工单元,其中: 数据源加工单元,用于接收来自数据预处理装置发来的完成消息,从数据存储装置中读取预处理存储单元的数据;对预处理数据中数据源关系集合进行解析,提取数据源及数据源之间的关系,通过对数据源及数据源之间的关系进行变形计算,最终计算出“数据源关系”、“转换1”,“转换2”,“转换3”;并将其保存在数据存储装置中的数据源关系加工存储单元;同时发送完成消息给元素加工单元; 元素加工单元,用于接收数据源加工单元的完成消息,从数据存储装置读取数据源关系加工存储单元中相同的“转换2”和“转换3”对应的“序号”,用这些“序号”与预处理存储单元中的“序号”做相等关联,得到预处理存储单元中的元素取值集合,然后,结合统计存储单元中统计出现次数的状态对元素取值集合进行频度分析得到各元素取值在表达式中出现的次数,将其补充到统计存储单元中。
3.如权利要求2所述基于数据仓库的数据处理装置,其特征在于,所述数据源加工单元包括:数据源提取单元和数据源解析重组单元,其中: 数据源提取单元,用于接收来自数据预处理装置发来的完成消息,从数据存储装置中读取预处理存储单元的数据源关系集合以及关键存储单元中的关键字,在数据源关系集合中按顺序匹配关键字,得到数据源关系,写入数据存储装置中的数据源关系加工存储单元,并发送完成消息给数据源解析重组单元; 数据源解析重组单元,用于接收来自数据源提取单元发来的完成消息,从数据源关系加工存储单元读取数据源关系,对其进行join前置,数据源排序,数据源连接条件排序三步操作,得到压缩重组的数据源关系集合,将结果填入数据源关系加工存储单元中的“转换1”,“转换2”,“转换3”,完成后发送完成消息给元素加工单元。
4.如权利要求2所述基于数据仓库的数据处理装置,其特征在于,所述元素加工单元包括:元素提取单元、单元素表达式统计单元和重定序单元,其中: 元素提取单元,用于接收数据源加工单元发送的完成消息,从数据存储装置中读取数据源关系加工存储单元,得到相同的“转换2”和“转换3”对应的“序号”,根据序号取出预处理存储单元中的元素取值集合,并从中提练出单元素取值,更新到统计存储单元中,发送完成消息给单元素表达式统计单元; 单元素表达式统计单元,用于接收元素提取单元发送的完成消息,从统计存储单元读取表达式标志为I的元素取值集合,计算得到单元素的表达式中出现次数,将结果插回统计存储单元中的表达式中出现次数,随后发送完成消息给重定序单元; 重定序单元,用于接收来自单元素表达式统计单元发送的完成消息,从统计存储单元读取不同的出现次数,对元素取值集合进行上下,左右顺序性的调整,得到新的排列组合,更新预处理存储单元,随后发送完成消息给数据重构装置。
5.如权利要求1所述基于数据仓库的数据处理装置,其特征在于,所述数据重构装置包括:数据源合并单元和元素合并单元,其中: 数据源合并单元,用于接收数据解析装置发送的完成消息,读取数据存储装置中的数据源关系加工存储单元,将所有相同的数据源关系组合在一起,形成一句语句,得到不包含元素取值的转换语句,将其存入数据存储装置中的压缩重组存储单元,随后,发送完成消息给元素合并单元; 元素合并单元,用于接收来自数据源合并单元的完成消息,读取数据源关系加工存储单元,取相同的数据源关系集合,即相同的“转换2”、“转换3”至预处理存储单元中,取出数据源关系集合对应的元素取值集合与转换结果;此时的元素取值集合已被数据解析装置重新调整了顺序,根据元素取值集合与转换结果,由元素合并单元进行重组,生成的完整的转换语句,补充进压缩重组存储单元中;随后发送完成消息给执行监控装置。
6.如权利要求1所述基于数据仓库的数据处理装置,其特征在于,所述执行监控装置包括:转换语句执行单元、组合计数单元和单元素条件计数单元,其中: 转换语句执行单元,用于接收来自数据重构装置发送的完成消息,读取压缩重组存储单元,将其中的语句分线程执行;语句全部执行完成后,发送完成消息给组合计数单元; 组合计数单元,用于接收来自转换语句执行单元的完成消息,在统计存储单元中遍历所有表达式标志为I的记录,取得数据源组合和元素取值集合,并用这两个数据对转换语句执行单元执行的数据进行监控,从而捕获海量数据映射存储单元中数据源组合和元素取值集合存在的记录数,将其更新入统计出现次数列中;随后发送完成消息给单元素条件计数单元;单元素条件计数单元,用于接收来自组合计数单元的完成消息,读取统计存储单元的中标志为I的统计出现次数,以此数据对单元素取值出现次数进行计算,将计算结果补充到统计存储单元的单元素取值对应的统计出现次数列。
7.一种基于数据仓库的数据处理方法,其特征在于,所述基于数据仓库的数据处理方法应用于所述权利要求1-6中任一项基于数据仓库的数据处理装置,具体包括: 数据预处理装置读取数据存储装置中的原始存储单元,对原始数据做预处理,存入数据存储装置中的预处理存储单元,完成后通知数据源解析装置; 数据源解析装置读取数据存储装置中的预处理存储单元,将预处理后的数据传给数据源提取单元处理,由数据源提取单元对数据源语句进行解析,提取出包含在语句中的数据源,完成后通知数据源解析重组单元; 数据源解析重组单元将数据源提取单元解析出的数据源进一步解析,并按固定格式重组,将其保存入数据存储装置中的数据源关系加工存储单元,结束后发送通知给元素加工单元; 元素加工单元读取数据存储装置中的预处理存储单元及数据源关系加工存储单元,将数据传给元素提取单元处理,元素提取单元按数据源关系加工存储单元中相同的数据源关系,找到数据存储装置中 的预处理存储单元中的元素取值,并提取出单元素取值及各元素的组合关系,完成后发送消息通知重定序单元; 重定序单元根据分类情况将单元组合进行排列组合,完成后通知数据重构装置; 数据重构装置接到通知后,调用子单元数据源合并单元,由数据源合并单元对全局数据的数据源集合进行压缩合并,生成新的数据源集合,完成后发送另一个子单元元素合并单元; 元素合并单元对全局数据的元素取值集合进行压缩合并,并在数据源合并单元生成的数据基础上,补全元素取值部分,完成后通知执行监控装置; 执行监控装置调用子单元转换语句执行单元,由其负责将所有的转换后的数据进行提交执行;在转换语句执行单元开始执行的同时,由执行监控装置发送通知给组合计数单元及单元素计数单元; 组合计数单元及单元素计数单元负责对转换语句执行单元执行的语句进行监控,并收集执行后的统计信息,以此更新数据存储装置中的统计存储单元。
全文摘要
本发明实施例提供一种基于数据仓库的数据处理装置及方法,该装置包括数据存储装置,用于作为数据的存储空间;数据预处理装置,用于得到原始数据及关键字字典,得到关键要素;数据解析装置,用于读取数据存储装置中的预处理数据,解析得到数据源关系集合中不同维度的转换结果;同时还用于生成元素集合中的优先级;数据重构装置,用于进行全局性的压缩,重组,形成完整的执行语句;执行监控装置,用于从压缩重组存储单元得到可执行的语句,并以多线程方式提交执行,得到每种数据源连接配以元素取值在数据仓库中出现的记录数,并对单个元素条件进行统计。本发明实施例实现了语句运行时间的确定性、系统资源有效利用,提高了数据转换的效率。
文档编号G06F17/30GK103246745SQ20131019382
公开日2013年8月14日 申请日期2013年5月22日 优先权日2013年5月22日
发明者张志海, 邱宇峰, 黄兆斌, 程业良, 李卓辉, 潘晨隐 申请人:中国工商银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1