数据立方体的分区方法、装置、计算机设备及存储介质与流程

文档序号:19610168发布日期:2020-01-03 14:02阅读:303来源:国知局
数据立方体的分区方法、装置、计算机设备及存储介质与流程

本申请涉及信息安全技术领域,尤其涉及一种数据立方体的分区方法、装置、计算机设备及存储介质。



背景技术:

随着数据库技术的发展和应用,数据库存储的数据量从20世纪80年代的兆(m)字节及千兆(g)字节过渡到现在的兆兆(t)字节和千兆兆(p)字节,同时,用户的查询需求也越来越复杂,涉及的已不仅是查询或操纵一张关系表中的一条或几条记录,而且要对多张表中千万条记录的数据进行数据分析和信息综合。

现有一种数据管理方法,通过构造事实表以及维度表,维度表和事实表通过主关键字和外关键字联系在一起,形成了"星型模式"的关系数据库,从而实现对数据的管理。

然而,传统的数据管理方法普遍不智能,随着数据库存储的数据量不断增大时,该数据管理方法产生的数据表不断增多,从而导致该数据管理方法所占用的存储空间不断增大,极大降低了数据库的处理效率。



技术实现要素:

本申请实施例的目的在于提出一种数据立方体的分区方法、装置、计算机设备及存储介质,旨在解决现有的数据管理方法占用大量的存储空间,处理效率低的问题。

为了解决上述技术问题,本发明申请实施例提供一种数据立方体的分区方法,采用了如下所述的技术方案:

接收携带有数据库标识信息的分区请求;

在业务数据库中获取所述数据库标识信息相对应的原始业务数据,所述原始业务数据中包含时间信息和渠道信息;

对所述时间信息和所述渠道信息进行预处理;

构造与所述原始业务数据相对应的数据立方体;

按照所述渠道信息对所述数据立方体进行分区处理,得到多个子数据立方体;

将所述多个子数据立方体分别存储到不同的存储介质中。

为了解决上述技术问题,本发明申请实施例还提供一种数据立方体的分区装置,采用了如下所述的技术方案:

请求接受模块,用于接收携带有数据库标识信息的分区请求;

数据获取模块,用于在业务数据库中获取所述数据库标识信息相对应的原始业务数据,所述原始业务数据中包含时间信息和渠道信息;

预处理模块,用于对所述时间信息和所述渠道信息进行预处理;

立方体构造模块,用于构造与所述原始业务数据相对应的数据立方体;

分区处理模块,用于按照所述渠道信息对所述数据立方体进行分区处理,得到多个子数据立方体;以及

分区存储模块,用于将所述多个子数据立方体分别存储到不同的存储介质中。

为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:

包括存储器和处理器;

所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的数据立方体的分区方法的步骤。

为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:

所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据立方体的分区方法的步骤。

与现有技术相比,本申请实施例主要有以下有益效果:

本发明申请提供了一种数据立方体的分区方法,接收携带有数据库标识信息的分区请求;在业务数据库中获取所述数据库标识信息相对应的原始业务数据,所述原始业务数据中包含时间信息和渠道信息;对所述时间信息和所述渠道信息进行预处理;构造与所述原始业务数据相对应的数据立方体;按照所述渠道信息对所述数据立方体进行分区处理,得到多个子数据立方体;将所述多个子数据立方体分别存储到不同的存储介质中。通过将原数据库中的数据按照渠道信息进行分区切块并存储于不同的存储介质中,使得用户在查询数据信息时,可以让需要查询的多个切块后的子数据立方体并行工作,从而极大提高查询数据的效率。

附图说明

为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例一提供的数据立方体的分区方法的实现流程图;

图2是本发明实施例一提供的数据立方体的示例图;

图3是本发明实施例一提供的数据立方体分区后的示例图;

图4是上述图1中步骤s104的实现流程图;

图5是本发明实施例二提供的数据立方体的分区装置的实现流程图;

图6是本图5中立方体构造模块104的结构示意图;

图7是根据本申请的计算机设备的一个实施例的结构示意图。

具体实施方式

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。

本发明实施例提供的数据立方体的分区方法,通过将原数据库中的数据按照时间和业务主体进行分区切块并存储于不同的存储介质中,使得用户在查询数据信息时,可以让需要查询的多个切块后的子数据立方体并行工作,从而极大提高查询数据的效率。

实施例一

图1示出了本发明实施例一提供的数据立方体的分区方法的实现流程图,为了便于说明,仅示出与本发明相关的部分。

在步骤s101中,接收携带有数据库标识信息的分区请求。

在本发明实施例中,数据库标识信息用于唯一标识存储业务数据的数据库,可以是机构名称,作为示例,例如工商银行数据库(gsyhsjk)、农业银行数据库(nyyhsjk)等;也可以是编号信息,作为示例,例如0001、0002等;还可以结合机构名称和编号信息,例如工商银行数据库0001、农业银行数据库0002等,应当理解,此处对数据库标识信息的举例仅为方便理解,不用于限定本发明。

在本发明实施例中,存储业务数据的数据库可以是关系型数据库,也可以是基于海都谱(hadoop)的数据仓库。

在步骤s102中,在业务数据库中获取所述数据库标识信息相对应的原始业务数据,所述原始业务数据中包含时间信息和渠道信息。

在本发明实施例中,原始业务数据指的是该数据库中存储的大数据量表的业务数据。

在本发明实施例中,时间信息用于记录该业务数据的执行时间。

在本发明实施例中,渠道信息用于记录提供业务服务的主体,该渠道信息可以是机构名称信息,作为示例,例如广发总行、包商银行、福建农信等,应当理解,此处对渠道信息的举例仅为方便理解,不用于限定本发明。

在本发明实施例中,原始业务数据还可以包括商户信息、地区信息、行业信息、交易数额信息等等。

在步骤s103中,对所述时间信息和所述渠道信息进行预处理。

在本发明实施例中,预处理操作用于对该时间信息以及渠道信息进行初步筛选的操作,该预处理操作包括对所述时间信息以及渠道信息进行解密、解码和/或数据去重处理,例如地址内容类似的文本其实是指向同一个地址,商户名称类似的是指向同一个商户。

在步骤s104中,构造与所述原始业务数据相对应的数据立方体。

在本发明实施例中,数据立方体用于对存储在关系数据库中的数据作动态多维分析,该数据立方体可以是基于关系数据库的联机分析处理方法(relationalolap,rolap),如图2所示,为以时间信息以及渠道信息为主轴构造的数据立方体。

在步骤s105中,按照所述渠道信息对所述数据立方体进行分区处理,得到多个子数据立方体。

在本发明实施例中,分区处理用于实现对原始业务数据对应的文件系统文件按照数据立方体的渠道信息维度进行切分,从而获得数据容量更小的立方体文件,如图3所示,为按照渠道信息将所述原始业务数据进行切分后的子数据立方体。

在步骤s106中,将所述多个子数据立方体分别存储到不同的存储介质中。

在本发明实施例中,提供了一种数据立方体的分区方法,接收携带有数据库标识信息的分区请求;在业务数据库中获取所述数据库标识信息相对应的原始业务数据,所述原始业务数据中包含时间信息和渠道信息;对所述时间信息和所述渠道信息进行预处理;构造与所述原始业务数据相对应的数据立方体;按照所述渠道信息对所述数据立方体进行分区处理,得到多个子数据立方体;将所述多个子数据立方体分别存储到不同的存储介质中。通过将原数据库中的数据按照渠道信息进行分区切块并存储于不同的存储介质中,使得用户在查询数据信息时,可以让需要查询的多个切块后的子数据立方体并行工作,从而极大提高查询数据的效率。

图4示出了图1中步骤s104的实现流程图,为了便于说明,仅示出与本发明相关的部分。

作为本发明实施例一的一些可选实现方式中,上述步骤s104具体包括:步骤s201、步骤s202以及步骤s203。

在步骤s201中,将所述时间信息和所述渠道信息分别作为初始立方体的主轴。

在步骤s202中,在所述原始业务数据中获取与所述时间信息和所述渠道信息相对应的扩展数据。

在本发明实施例中,由于原始业务数据存储于上述关系型数据库或者基于海都谱(hadoop)的数据仓库中,根据关系型数据库或者数据仓库中的维度表可以获取与该时间信息以及渠道信息相对应的其他事实表。

在本发明实施例中,扩展数据指的是在上述业务数据库中与该时间信息以及渠道信息相对应的其他事实表的数据。

在本发明实施例中,随着业务数据库的数据不断更新,数据立方体也会动态更新填充的数据。

在步骤s203中,基于所述时间信息或者所述渠道信息与所述扩展数据的对应关系将所述扩展数据存储至所述初始立方体,得到所述数据立方体。

在本发明实施例中,通过将与所述时间信息或者所述渠道信息的扩展数据存储至初始立方体中,从而完善数据立方体的数据内容,进而完成了从分散的多种er关系或map数据对象关联关系到统一的多维分析数据立方体的转换,并建立时间信息和渠道信息二者对应的关联关系。

作为本发明实施例一的一些可选实现方式中,上述原始业务数据还包含与所述渠道信息相对应的事实数据,上述步骤s105具体包括:基于所述渠道信息与所述事实数据的对应关系将所述数据立方体切分为所述多个子数据立方体。

在本发明实施例中,事实数据指的是与所述渠道信息维度相对应的事实表数据,该事实数据包含数字数据(事实),作为示例,例如现金登记事务所产生的数据,应当理解,此处对事实数据的举例仅为方便理解,不用于限定本发明。

作为本发明实施例一的一些可选实现方式中,上述步骤202具体包括:对所述扩展数据进行数据转换操作。

在本发明实施例中,数据转换操作用于进一步规范数据信息的格式,该数据转换操作可以是空白类字符处理(删除空白数据)、编码处理(删除乱码)、字符处理(空白类字符处理、特殊字符处理以及字符串表示方式转换),表示转换等,应当理解的是,此处对数据转换操作的举例仅为方便理解,不用于限定本发明。

在本发明实施例中,通过预先对原始的业务数据进行数据格式的处理,避免了后续生成的数据立方体中包含错误的数据或者无法分辨的乱码数据。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)等非易失性存储介质,或随机存储记忆体(randomaccessmemory,ram)等。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

实施例二

进一步参考图5,作为对上述图1所示方法的实现,本申请提供了一种数据立方体的分区装置,该装置实施例与图1所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

如图5所示,本发明实施例二提供的数据立方体的分区装置100包括:请求接受模块101、数据获取模块102、预处理模块103、立方体构造模块104、分区处理模块105以及分区存储模块106。其中:

请求接受模块101,用于接收携带有数据库标识信息的分区请求;

数据获取模块102,用于在业务数据库中获取所述数据库标识信息相对应的原始业务数据,所述原始业务数据中包含时间信息和渠道信息;

预处理模块103,用于对所述时间信息和所述渠道信息进行预处理;

立方体构造模块104,用于构造与所述原始业务数据相对应的数据立方体;

分区处理模块105,用于按照所述渠道信息对所述数据立方体进行分区处理,得到多个子数据立方体;以及

分区存储模块106,用于将所述多个子数据立方体分别存储到不同的存储介质中。

在本发明实施例中,数据库标识信息用于唯一标识存储业务数据的数据库,可以是机构名称,作为示例,例如工商银行数据库(gsyhsjk)、农业银行数据库(nyyhsjk)等;也可以是编号信息,作为示例,例如0001、0002等;还可以结合机构名称和编号信息,例如工商银行数据库0001、农业银行数据库0002等,应当理解,此处对数据库标识信息的举例仅为方便理解,不用于限定本发明。

在本发明实施例中,存储业务数据的数据库可以是关系型数据库,也可以是基于海都谱(hadoop)的数据仓库。

在本发明实施例中,原始业务数据指的是该数据库中存储的大数据量表的业务数据。

在本发明实施例中,时间信息用于记录该业务数据的执行时间。

在本发明实施例中,渠道信息用于记录提供业务服务的主体,该渠道信息可以是机构名称信息,作为示例,例如广发总行、包商银行、福建农信等,应当理解,此处对渠道信息的举例仅为方便理解,不用于限定本发明。

在本发明实施例中,原始业务数据还可以包括商户信息、地区信息、行业信息、交易数额信息等等。

在本发明实施例中,预处理操作用于对该时间信息以及渠道信息进行初步筛选的操作,该预处理操作包括对所述时间信息以及渠道信息进行解密、解码和/或数据去重处理,例如地址内容类似的文本其实是指向同一个地址,商户名称类似的是指向同一个商户。

在本发明实施例中,数据立方体用于对存储在关系数据库中的数据作动态多维分析,该数据立方体可以是基于关系数据库的联机分析处理方法(relationalolap,rolap),如图2所示,为以时间信息以及渠道信息为主轴构造的数据立方体。

在本发明实施例中,分区处理用于实现对原始业务数据对应的文件系统文件按照数据立方体的渠道信息维度进行切分,从而获得数据容量更小的立方体文件,如图3所示,为按照渠道信息将所述原始业务数据进行切分后的子数据立方体。

在本发明实施例中,提供了一种数据立方体的分区装置,请求接受模块,用于接收携带有数据库标识信息的分区请求;数据获取模块,用于在业务数据库中获取所述数据库标识信息相对应的原始业务数据,所述原始业务数据中包含时间信息和渠道信息;预处理模块,用于对所述时间信息和所述渠道信息进行预处理;立方体构造模块,用于构造与所述原始业务数据相对应的数据立方体;分区处理模块,用于按照所述渠道信息对所述数据立方体进行分区处理,得到多个子数据立方体;以及分区存储模块,用于将所述多个子数据立方体分别存储到不同的存储介质中。通过将原数据库中的数据按照渠道信息进行分区切块并存储于不同的存储介质中,使得用户在查询数据信息时,可以让需要查询的多个切块后的子数据立方体并行工作,从而极大提高查询数据的效率。

继续参考图6,示出了本发明实施例二提供的立方体构造模块的结构示意图,为了便于说明,仅示出与本发明相关的部分。

在本发明实施例二的一些可选的实现方式中,在上述立方体构造模块104中包括:主轴确定子模块1041、扩展数据获取子模块1042以及立方体完善子模块1043。其中:

主轴确定子模块,用于将所述时间信息和所述渠道信息分别作为初始立方体的主轴;

扩展数据获取子模块,用于在所述原始业务数据中获取与所述时间信息和所述渠道信息相对应的扩展数据;

立方体完善子模块,用于基于所述时间信息或者所述渠道信息与所述扩展数据的对应关系将所述扩展数据存储至所述初始立方体中,获得所述数据立方体。

在本发明实施例中,由于原始业务数据存储于上述关系型数据库或者基于海都谱(hadoop)的数据仓库中,根据关系型数据库或者数据仓库中的维度表可以获取与该时间信息以及渠道信息相对应的其他事实表。

在本发明实施例中,扩展数据指的是在上述业务数据库中与该时间信息以及渠道信息相对应的其他事实表的数据。

在本发明实施例中,随着业务数据库的数据不断更新,数据立方体也会动态更新填充的数据。

在本发明实施例中,通过将与所述时间信息或者所述渠道信息的扩展数据存储至初始立方体中,从而完善数据立方体的数据内容,进而完成了从分散的多种er关系或map数据对象关联关系到统一的多维分析数据立方体的转换,并建立时间信息和渠道信息二者对应的关联关系。

作为本发明实施例一的一些可选实现方式中,上述分区处理模块包括:分区处理子模块。其中:

分区处理子模块,用于基于所述渠道信息与所述事实数据的对应关系将所述数据立方体切分为所述多个子数据立方体。

在本发明实施例中,事实数据指的是与所述渠道信息维度相对应的事实表数据,该事实数据包含数字数据(事实),作为示例,例如现金登记事务所产生的数据,应当理解,此处对事实数据的举例仅为方便理解,不用于限定本发明。

作为本发明实施例一的一些可选实现方式中,上述扩展数据获取子模块1042具体包括:数据转换子模块。其中:

数据转换子模块,用于对所述扩展数据进行数据转换操作。

在本发明实施例中,数据转换操作用于进一步规范数据信息的格式,该数据转换操作可以是空白类字符处理(删除空白数据)、编码处理(删除乱码)、字符处理(空白类字符处理、特殊字符处理以及字符串表示方式转换),表示转换等,应当理解的是,此处对数据转换操作的举例仅为方便理解,不用于限定本发明。

在本发明实施例中,通过预先对原始的业务数据进行数据格式的处理,避免了后续生成的数据立方体中包含错误的数据或者无法分辨的乱码数据。

综上所述,本发明实施例提供了一种数据立方体的分区方法,接收用户发送的分区请求,所述分区请求至少携带有数据库标识信息;响应所述分区请求,在与所述数据库标识信息相对应的业务数据库中获取原始业务数据,所述原始业务数据至少携带有时间信息以及渠道信息;以所述时间信息以及渠道信息为主轴构造与所述原始业务数据相对应的数据立方体;基于预设的分区规则对所述数据立方体进行分区存储操作;向所述用户输出分区完成信号。通过将原数据库中的数据按照时间和业务主体进行分区切块并存储于不同的存储介质中,使得用户在查询数据信息时,可以让需要查询的多个切块后的子数据立方体并行工作,从而极大提高查询数据的效率。同时,通过将与所述时间信息或者所述渠道信息的扩展数据存储至初始立方体中,从而完善数据立方体的数据内容,进而完成了从分散的多种er关系或map数据对象关联关系到统一的多维分析数据立方体的转换,并建立时间信息和渠道信息二者对应的关联关系;通过预先对原始的业务数据进行数据格式的处理,避免了后续生成的数据立方体中包含错误的数据或者无法分辨的乱码数据。

为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图7,图7为本实施例计算机设备基本结构框图。

所述计算机设备7包括通过系统总线相互通信连接存储器71、处理器72、网络接口73。需要指出的是,图中仅示出了具有组件71-73的计算机设备7,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程门阵列(field-programmablegatearray,fpga)、数字处理器(digitalsignalprocessor,dsp)、嵌入式设备等。

所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。

所述存储器71至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器71可以是所述计算机设备7的内部存储单元,例如该计算机设备7的硬盘或内存。在另一些实施例中,所述存储器71也可以是所述计算机设备7的外部存储设备,例如该计算机设备7上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器71还可以既包括所述计算机设备7的内部存储单元也包括其外部存储设备。本实施例中,所述存储器71通常用于存储安装于所述计算机设备7的操作系统和各类应用软件,例如数据立方体的分区方法的程序代码等。此外,所述存储器71还可以用于暂时地存储已经输出或者将要输出的各类数据。

所述处理器72在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器72通常用于控制所述计算机设备7的总体操作。本实施例中,所述处理器72用于运行所述存储器71中存储的程序代码或者处理数据,例如运行所述数据立方体的分区方法的程序代码。

所述网络接口73可包括无线网络接口或有线网络接口,该网络接口73通常用于在所述计算机设备7与其他电子设备之间建立通信连接。

本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有数据立方体的分区程序,所述数据立方体的分区程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的数据立方体的分区方法的步骤。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。

显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1