CN111753017B - 基于Kylin系统的维表处理方法、装置、电子设备及存储介质 - Google Patents

基于Kylin系统的维表处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111753017B
CN111753017B CN202010607590.XA CN202010607590A CN111753017B CN 111753017 B CN111753017 B CN 111753017B CN 202010607590 A CN202010607590 A CN 202010607590A CN 111753017 B CN111753017 B CN 111753017B
Authority
CN
China
Prior art keywords
dimension table
column data
dimension
database
derivative
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
Application number
CN202010607590.XA
Other languages
English (en)
Other versions
CN111753017A (zh
Inventor
王云飞
万国军
许国庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202010607590.XA priority Critical patent/CN111753017B/zh
Publication of CN111753017A publication Critical patent/CN111753017A/zh
Application granted granted Critical
Publication of CN111753017B publication Critical patent/CN111753017B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2264Multidimensional index structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种基于Kylin系统的维表处理方法、装置、电子设备及存储介质,该方法包括:响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;利用所述衍生列数据构建第一维表,利用所述主列数据和所述维度列数据构建第二维表,其中所述主列数据和所述第一维表具备映射关系;将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。通过并行构建第一维表和第二维表,提高了维表构建效率;通过分布式数据库存储不同维表,降低了存储系统压力。

Description

基于Kylin系统的维表处理方法、装置、电子设备及存储介质
技术领域
本发明实施例涉及计算机技术,尤其涉及一种基于Kylin系统的维表处理方法、装置、电子设备及存储介质。
背景技术
本发明实施例公开的Kylin系统,是一个开源的分布式分析引擎,可提供Hadoop/Spark之上的SQL查询接口及多维分析能力(OLAP)能力以支持超大规模数据。Kylin系统可预先构建可能被查询的不同维度(例如时间、区域维度)下数据聚合的维度表(又称维表),以便查询时直接访问,提高查询效率。
目前,Kylin系统构建的维表中常存在一些衍生列,其中衍生列即根据主列可以推导出的数据列。以产品为例,若主列为产品型号,则衍生列可以根据该主列推导出来,例如是产品的名称和硬件参数等。若构建维表时携带衍生列,则容易导致构建维表耗时严重、构建失败或数据膨胀率剧增等问题。
因此,现有技术中,Kylin系统通常先创建衍生列维表,然后创建除衍生列之外包括主列和维度列的主列维度列维表。并且,Kylin系统通常将衍生列维表和主列维度列维表皆放入Hbase中。
现有的维表构建方法的缺点至少包括:1、在衍生列较多的情况下,串行构建维表将会更耗时,存在性能瓶颈,没有充分利用系统的处理能力,影响用户体验;2、将衍生列维表和主列维度列维表都存在Hbase数据库中,在数据量巨大的时候对Hbase集群有很大的压力,存在宕机的风险,影响整个Kylin系统的可靠性。
发明内容
有鉴于此,本发明实施例提供了一种基于Kylin系统的维表处理方法、装置、电子设备及存储介质,能够提高维表构建效率,降低储存系统压力。
第一方面,本发明实施例提供了一种基于Kylin系统的维表处理方法,包括:
响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;
利用所述衍生列数据构建第一维表,利用所述主列数据和所述维度列数据构建第二维表,其中所述主列数据和所述第一维表具备映射关系;
将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。
可选的,所述主列数据、衍生列数据和维度列数据为至少一组;
相应的,所述利用所述衍生列数据构建第一维表,利用所述主列数据和所述维度列数据构建第二维表,包括:
分别利用各组的衍生列数据构建第一维表,利用各组的主列数据和维度列数据构建第二维表;
相应的,所述将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库,包括:
将构建完毕的各第一维表存入第一数据库,将构建完毕的各第二维表存入第二数据库。
可选的,在所述利用所述衍生列数据构建第一维表之前,还包括:
判断所述第一数据库中是否存在与所述衍生列数据相匹配的历史维表;
相应的,所述利用所述衍生列数据构建第一维表,包括:
若否,则利用所述衍生列数据构建第一维表。
可选的,在所述将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库之后,还包括:
响应于维表查询指令,从所述第二数据库中查询与所述维表查询指令相对应的第二维表;
读取查询的第二维表中的主列数据,并根据读取的主列数据以及所述映射关系,从所述第一数据库中查询与读取的主列数据相对应的第一维表;
根据查询的第一维表以及查询的第二维表,生成查询结果表。
可选的,所述映射关系为键-值映射关系。
可选的,所述第一数据库为redis数据库。
第二方面,本发明实施例还提供了一种基于Kylin系统的维表处理装置,包括:
数据确定模块,用于响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;
维表构建模块,用于利用所述衍生列数据构建第一维表,利用所述主列数据和所述维度列数据构建第二维表,其中所述主列数据和所述第一维表具备映射关系;
维表存储模块,用于将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。
可选的,所述基于Kylin系统的维表处理装置,还包括:
第二维表查询模块,用于响应于维表查询指令,从所述第二数据库中查询与所述维表查询指令相对应的第二维表;
第一维表查询模块,用于读取查询的第二维表中的主列数据,并根据读取的主列数据以及所述映射关系,从所述第一数据库中查询与读取的主列数据相对应的第一维表;
查询结果表生成模块,用于根据查询的第一维表以及查询的第二维表,生成查询结果表。
第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本申请任意实施例提供的基于Kylin系统的维表处理方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如本申请任意实施例提供的基于Kylin系统的维表处理方法。
本发明实施例提供的一种基于Kylin系统的维表处理方法、装置、电子设备及存储介质,其中基于Kylin系统的维表处理方法包括:响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表,其中主列数据和第一维表具备映射关系;将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。通过并行构建第一维表和第二维表,提高了维表构建效率,充分利用系统的处理能力,提高了用户体验;通过分布式数据库存储分别存储第一维表和第二维表,降低了存储系统压力,有效规避了宕机的风险,提高了Kylin系统的可靠性。
附图说明
图1是本发明实施例一提供的一种基于Kylin系统的维表处理方法的流程示意图;
图2是本发明实施例二提供的一种基于Kylin系统的维表处理装置的结构示意图;
图3是本发明实施例三提供的一种电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下将参照本发明实施例中的附图,通过实施方式清楚、完整地描述本发明的技术方案,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。
实施例一
图1为本发明实施例一提供的一种基于Kylin系统的维表处理方法的流程示意图,本实施例可适用于Kylin系统构建和查询维表的情况。该方法可以由本发明实施例提供的基于Kylin系统的维表处理装置来执行,该处理装置采用软件和/或硬件的方式实现,优选是配置于电子设备中,例如计算机中。
参见图1,基于Kylin系统的维表处理方法,包括如下步骤:
S110、响应于维表构建指令,确定主列数据、衍生列数据和维度列数据。
本发明实施例中,维表构建指令中可以携带有需求主列字段和维度列字段的标识,相应的Kylin系统的维表处理装置(可简称为处理装置)可根据需求主列字段和维度列字段的标识从事实表中提取主列数据和维度列数据。并且,在提取主列数据之后,可根据主列数据直接确定相关的衍生列数据。
示例性的,当维表构建指令中携带产品ID字段的标识和时间字段的标识时,处理装置可根据产品ID字段的标识和时间字段的标识从事实表中提取产品ID作为主列数据,以及提取时间字段的标识对应的相关数据(例如销量数据)作为维度列数据。并且,在提取产品ID之后,可根据产品ID直接确定产品ID相关的衍生列数据,例如产品名称和产品的硬件参数等。
S120、利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表,其中主列数据和第一维表具备映射关系。
本发明实施例中,构建第一维表和构建第二维表的过程为并行构建的过程,与传统的串行构建相比,能够实现提高构建任务并发度,减少构建耗时,提升Kylin系统的数据处理效率。并且,处理装置可进一步建立主列数据和第一维表中衍生列数据的映射关系,从而有利于主列数据和衍生列数据在分开存储时的查询操作。在一种具体的实施例中,主列数据和第一维表中衍生列数据的映射关系为键-值(Key-Value,K-V)映射关系,可以认为主列数据中的主键数据为Key,对应的衍生列数据为Value,根据该映射关系可利于后续从不同数据库进行查询数据。
S130、将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。
本发明实施例中,第一数据库与第二数据库为不同的数据库,其中第二数据库可以为原Kylin系统存放维表的Hbase数据库,第一数据库可以为mysql数据库、mongodb数据库或者redis数据库。由于Redis数据库更加适合K-V的查询模式,第一数据库优选可以为redis数据库。基于redis数据库的高性能,可提高第一维表的数据存储和读取的速度。并且,由于redis具备公开透明性,可被多个系统进行调用,从而能够提高第一维表的复用性。
通过将第一维表和第二维表进行分布式存储,可以有效缓解传统方法中Hbase存储系统的压力,有效规避了宕机的风险,提高了Kylin系统的可靠性。此外,基于分布式存储进行数据查询时,由于每个节点的数据量减少,可在一定程度上提高数据读取速率。
可选的,在利用衍生列数据构建第一维表之前,还包括:判断第一数据库中是否存在与衍生列数据相匹配的历史维表;相应的,利用衍生列数据构建第一维表,包括:若否,则利用衍生列数据构建第一维表。
其中,在构建第一维表之前还可以从第一数据库中查询是否存在包含衍生列数据的历史维表;若是,则认为第一数据库中存在与衍生列数据相匹配的历史维表。当第一数据库中存在与衍生列数据相匹配的历史维表时,可不用构建第一维表,直接利用主列数据和维度列数据构建第二维表;当第一数据库中不存在与衍生列数据相匹配的历史维表时,再利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表。通过判断第一数据库中是否存在与衍生列数据相匹配的历史维表,可以保证相同的第一维表只构建一次,从而避免了数据冗余,节省了存储空间。
可选的,主列数据、衍生列数据和维度列数据为至少一组;相应的,利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表,包括:分别利用各组的衍生列数据构建第一维表,利用各组的主列数据和维度列数据构建第二维表;相应的,将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库,包括:将构建完毕的各第一维表存入第一数据库,将构建完毕的各第二维表存入第二数据库。
本实施例中,可以并行触发多个维表的构建任务,即根据维表构建指令可以确定至少一组的主列数据、衍生列数据和维度列数据。处理装置可独立执行每个构建任务,各构建任务之间互不干扰。即处理装置可分别利用各组的衍生列数据构建第一维表,分别利用各组的主列数据和维度列数据构建第二维表,并在构建完毕任意一个第一维表时,将其存入第一数据库,构建完毕任意一个第二维表时,将其存入第二数据库。通过对至少一个构建任务并行构建各维表,能够进一步提高任务并发度,减少维表构建时间。
可选的,在将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库之后,还包括:响应于维表查询指令,从第二数据库中查询与维表查询指令相对应的第二维表;读取查询的第二维表中的主列数据,并根据读取的主列数据以及映射关系,从第一数据库中查询与读取的主列数据相对应的第一维表;根据查询的第一维表以及查询的第二维表,生成查询结果表。
其中,由于第一维表和第二维表采用了分布式存储,且第一维表中只包含衍生列数据,不包含任何主列数据和维度列数据;第二维表中只包含主列数据和维度列数据,不包含任何衍生列数据。因此,为确保查询数据的完整性,处理装置可以进行两次查询,具体的可以是:首先从第二数据库中查询与维表查询指令相对应的第二维表;再读取查询的第二维表中的主列数据,并根据读取的主列数据以及映射关系,从第一数据库中反查询与读取的主列数据相对应的第一维表;从第一维表中获得衍生列数据,根据衍生列数据、主列数据和维度列数据可生成查询结果表,并可将查询结果表进行反馈。
本发明实施例提供的一种基于Kylin系统的维表处理方法,响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表,其中主列数据和第一维表具备映射关系;将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。通过并行构建第一维表和第二维表,提高了维表构建效率,充分利用系统的处理能力,提高了用户体验;通过分布式数据库存储分别存储第一维表和第二维表,降低了存储系统压力,有效规避了宕机的风险,提高了Kylin系统的可靠性。
实施例二
图2是本发明实施例二提供的一种基于Kylin系统的维表处理装置的结构示意图,本实施例可适用于Kylin系统构建和查询维表的情况。应用该处理装置可以实现本发明任一实施例所提供的基于Kylin系统的维表处理方法。
参见图2,基于Kylin系统的维表处理装置,包括:
数据确定模块210,用于响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;
维表构建模块220,用于利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表,其中主列数据和第一维表具备映射关系;
维表存储模块230,用于将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。
可选的,基于Kylin系统的维表处理装置,还包括:
第二维表查询模块,用于响应于维表查询指令,从第二数据库中查询与维表查询指令相对应的第二维表;
第一维表查询模块,用于读取查询的第二维表中的主列数据,并根据读取的主列数据以及映射关系,从第一数据库中查询与读取的主列数据相对应的第一维表;
查询结果表生成模块,用于根据查询的第一维表以及查询的第二维表,生成查询结果表。
可选的,主列数据、衍生列数据和维度列数据为至少一组;
相应的,维表构建模块,具体用于:分别利用各组的衍生列数据构建第一维表,利用各组的主列数据和维度列数据构建第二维表;
相应的,维表存储模块,具体用于:将构建完毕的各第一维表存入第一数据库,将构建完毕的各第二维表存入第二数据库。
可选的,基于Kylin系统的维表处理装置,还包括:
判断模块,用于在利用衍生列数据构建第一维表之前,判断第一数据库中是否存在与衍生列数据相匹配的历史维表;
相应的,维表构建模块,具体用于:若第一数据库中不存在与衍生列数据相匹配的历史维表,则利用衍生列数据构建第一维表。
可选的,映射关系为键-值映射关系。
可选的,第一数据库为redis数据库。
本发明实施例所提供的基于Kylin系统的维表处理装置可执行本发明任一实施例所提供的基于Kylin系统的维表处理方法,具备执行方法相应的功能模块和有益效果。未详尽描述的技术细节,可参见本发明任一实施例所提供的基于Kylin系统的维表处理方法。
实施例三
图3是本发明实施例三提供的一种电子设备的结构示意图。图3示出了适于用来实现本发明实施方式的示例性电子设备12的框图。图3显示的电子设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。设备12典型的是承担跨系统的程序对接功能的电子设备。
如图3所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,存储器28,连接不同组件(包括存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture,ISA)总线,微通道体系结构(Micro Channel Architecture,MCA)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线以及外围组件互连(Peripheral Component Interconnect,PCI)总线。
电子设备12典型地包括多种计算机可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机装置可读介质,例如随机存取存储器(Random Access Memory,RAM)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机存储介质。仅作为举例,存储装置34可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如只读光盘(Compact Disc-Read Only Memory,CD-ROM)、数字视盘(Digital Video Disc-Read Only Memory,DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品40,该程序产品40具有一组程序模块42,这些程序模块被配置以执行本发明各实施例的功能。程序产品40,可以存储在例如存储器28中,这样的程序模块42包括但不限于一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
电子设备12也可以与一个或多个外部设备14(例如键盘、鼠标、摄像头等和显示器)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network,LAN),广域网WideArea Network,WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Independent Disks,RAID)装置、磁带驱动器以及数据备份存储装置等。
处理器16通过运行存储在存储器28中的程序,从而执行各种功能应用以及维表构建,例如实现本发明上述实施例所提供的基于Kylin系统的维表处理方法,包括:
响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;
利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表,其中主列数据和第一维表具备映射关系;
将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。
当然,本领域技术人员可以理解,处理器还可以实现本发明任一实施例所提供的基于Kylin系统的维表处理方法的技术方案。
实施例四
本发明实施例四还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的基于Kylin系统的维表处理方法,该方法包括:
响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;
利用衍生列数据构建第一维表,利用主列数据和维度列数据构建第二维表,其中主列数据和第一维表具备映射关系;
将构建完毕的第一维表存入第一数据库,将构建完毕的第二维表存入第二数据库。
当然,本发明实施例所提供的一种计算机可读存储介质,其上存储的计算机程序不限于如上的方法操作,还可以执行本发明任一实施例所提供的基于Kylin系统的维表处理方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的装置、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行装置、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行装置、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (7)

1.一种基于Kylin系统的维表处理方法,其特征在于,包括:
响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;其中,所述主列数据、衍生列数据和维度列数据为至少一组;
分别利用各组的衍生列数据构建第一维表,利用各组的主列数据和维度列数据构建第二维表;其中所述主列数据和所述第一维表具备映射关系;
将构建完毕的各第一维表存入第一数据库,将构建完毕的各第二维表存入第二数据库;
响应于维表查询指令,从所述第二数据库中查询与所述维表查询指令相对应的第二维表;
读取查询的第二维表中的主列数据,并根据读取的主列数据以及所述映射关系,从所述第一数据库中查询与读取的主列数据相对应的第一维表;
根据查询的第一维表以及查询的第二维表,生成查询结果表。
2.根据权利要求1所述的方法,其特征在于,在所述利用所述衍生列数据构建第一维表之前,还包括:
判断所述第一数据库中是否存在与所述衍生列数据相匹配的历史维表;
相应的,所述利用所述衍生列数据构建第一维表,包括:
若否,则利用所述衍生列数据构建第一维表。
3.根据权利要求1-2任一项所述的方法,其特征在于,所述映射关系为键-值映射关系。
4.根据权利要求1-2任一项所述的方法,其特征在于,所述第一数据库为redis数据库。
5.一种基于Kylin系统的维表处理装置,其特征在于,包括:
数据确定模块,用于响应于维表构建指令,确定主列数据、衍生列数据和维度列数据;其中,所述主列数据、衍生列数据和维度列数据为至少一组;
维表构建模块,用于分别利用各组的衍生列数据构建第一维表,利用各组的主列数据和维度列数据构建第二维表;其中所述主列数据和所述第一维表具备映射关系;
维表存储模块,用于将构建完毕的各第一维表存入第一数据库,将构建完毕的各第二维表存入第二数据库;
第二维表查询模块,用于响应于维表查询指令,从所述第二数据库中查询与所述维表查询指令相对应的第二维表;
第一维表查询模块,用于读取查询的第二维表中的主列数据,并根据读取的主列数据以及所述映射关系,从所述第一数据库中查询与读取的主列数据相对应的第一维表;
查询结果表生成模块,用于根据查询的第一维表以及查询的第二维表,生成查询结果表。
6.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-4中任一所述的基于Kylin系统的维表处理方法。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的基于Kylin系统的维表处理方法。
CN202010607590.XA 2020-06-29 2020-06-29 基于Kylin系统的维表处理方法、装置、电子设备及存储介质 Active CN111753017B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010607590.XA CN111753017B (zh) 2020-06-29 2020-06-29 基于Kylin系统的维表处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010607590.XA CN111753017B (zh) 2020-06-29 2020-06-29 基于Kylin系统的维表处理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111753017A CN111753017A (zh) 2020-10-09
CN111753017B true CN111753017B (zh) 2024-02-02

Family

ID=72678056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010607590.XA Active CN111753017B (zh) 2020-06-29 2020-06-29 基于Kylin系统的维表处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111753017B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684352A (zh) * 2018-12-29 2019-04-26 江苏满运软件科技有限公司 数据分析系统、方法、存储介质及电子设备
CN111125266A (zh) * 2019-12-24 2020-05-08 中国建设银行股份有限公司 数据处理方法、装置、设备及存储介质
CN111161047A (zh) * 2019-12-25 2020-05-15 中国建设银行股份有限公司 银行业务数据处理、查询方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569486B2 (en) * 2013-09-27 2017-02-14 International Business Machines Corporation System and a method for hierarchical data column storage and efficient query processing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684352A (zh) * 2018-12-29 2019-04-26 江苏满运软件科技有限公司 数据分析系统、方法、存储介质及电子设备
CN111125266A (zh) * 2019-12-24 2020-05-08 中国建设银行股份有限公司 数据处理方法、装置、设备及存储介质
CN111161047A (zh) * 2019-12-25 2020-05-15 中国建设银行股份有限公司 银行业务数据处理、查询方法及装置

Also Published As

Publication number Publication date
CN111753017A (zh) 2020-10-09

Similar Documents

Publication Publication Date Title
CN107506451B (zh) 用于数据交互的异常信息监控方法及装置
WO2021068549A1 (zh) 一种数据处理方法、平台及系统
CN109471851B (zh) 数据处理方法、装置、服务器和存储介质
CN111709527A (zh) 运维知识图谱库的建立方法、装置、设备及存储介质
US11222016B2 (en) Dynamic combination of processes for sub-queries
CN111949693B (zh) 一种数据处理装置、数据处理方法、存储介质及电子设备
CN110704476A (zh) 数据处理方法、装置、设备及存储介质
CN111125266A (zh) 数据处理方法、装置、设备及存储介质
CN112463800A (zh) 数据读取方法、装置、服务器及存储介质
CN110781159B (zh) Ceph目录文件信息读取方法、装置、服务器及存储介质
CN113962597A (zh) 一种数据分析方法、装置、电子设备及存储介质
Kathare et al. A comprehensive study of Elasticsearch
CN111198917A (zh) 数据处理方法、装置、设备及存储介质
US20210081451A1 (en) Persisted queries and batch streaming
CN109033456B (zh) 一种条件查询方法、装置、电子设备和存储介质
US10552419B2 (en) Method and system for performing an operation using map reduce
WO2024108638A1 (zh) 一种基于分片索引的自适应查询方法和装置
CN112487025A (zh) 数据查询方法、装置、电子设备及存储介质
CN111753017B (zh) 基于Kylin系统的维表处理方法、装置、电子设备及存储介质
CN109542912B (zh) 区间数据存储方法、装置、服务器及存储介质
WO2024016594A1 (zh) 一种伪列实现方法、装置、电子设备及存储介质
CN111047427A (zh) 数据上报方法、装置、服务器及存储介质
CN114064729B (zh) 一种数据检索方法、装置、设备及存储介质
CN115640310A (zh) 用于业务数据聚合的方法和装置、电子设备和存储介质
CN109189763A (zh) 一种数据存储方法、装置、服务器及存储介质

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220919

Address after: 25 Financial Street, Xicheng District, Beijing 100033

Applicant after: CHINA CONSTRUCTION BANK Corp.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Applicant before: CHINA CONSTRUCTION BANK Corp.

Applicant before: Jianxin Financial Science and Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant