CN105740365A - 一种数据仓库快速查询方法和装置 - Google Patents

一种数据仓库快速查询方法和装置 Download PDF

Info

Publication number
CN105740365A
CN105740365A CN201610053574.4A CN201610053574A CN105740365A CN 105740365 A CN105740365 A CN 105740365A CN 201610053574 A CN201610053574 A CN 201610053574A CN 105740365 A CN105740365 A CN 105740365A
Authority
CN
China
Prior art keywords
dimension
master meter
database
fact
incidence relation
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.)
Granted
Application number
CN201610053574.4A
Other languages
English (en)
Other versions
CN105740365B (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.)
Beijing Zhang Kuo Mobile Media Science And Technology Ltd
Original Assignee
Beijing Zhang Kuo Mobile Media Science And Technology Ltd
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 Beijing Zhang Kuo Mobile Media Science And Technology Ltd filed Critical Beijing Zhang Kuo Mobile Media Science And Technology Ltd
Priority to CN201610053574.4A priority Critical patent/CN105740365B/zh
Publication of CN105740365A publication Critical patent/CN105740365A/zh
Application granted granted Critical
Publication of CN105740365B publication Critical patent/CN105740365B/zh
Expired - Fee Related 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/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • 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)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据仓库快速查询方法和装置,方法包括:步骤一)获取数据模型和查询条件,其中,数据模型包括事实表和维度表的关联关系,查询条件中包括需要查询的第一数据库表,其是作为主表的事实表和与该事实表相关联的维度表的任意组合;步骤二)从第一数据库表所有的表出发,根据事实表和维度表的关联关系路径,向着事实表依次回溯,每次回溯计数加1;步骤三)重复步骤二,当回溯计数和表的个数一致时,表明当前表为所有关联维度表的主表;步骤四)从所述主表出发,按照关联关系进行深度遍历,依次形成查询路径和需要关联的维度表,最终形成需要查询的第二数据库表。其实现了快速查询,具有较高的效率。

Description

一种数据仓库快速查询方法和装置
技术领域
本发明属于互联网领域,涉及一种数据仓库快速查询方法和装置,特别设计一种雪花星型表的查询。
背景技术
数据仓库,英文名称为DataWarehouse,可简写为DW或DWH。
数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。
通过收集查询对象中用到的度量,维度,我们可找出查询所需要的表,但只有这些表是不够的,我们需要找出最小的表集合,它们即能进行关联,又包括所有查询所需的表。
当然,我们也能将所有的表进行关联,但这样查询的性能会很差。
发明内容
本发明所要解决的技术问题是提供一种数据仓库快速查询方法和装置,用以实现最小关联表集合,实现快速查询,提高查询效率。
本发明解决上述技术问题所采取的技术方案如下:
一种数据仓库快速查询方法,其特征在于,包括:
步骤一)获取数据模型和查询条件,其中,数据模型包括事实表和维度表的关联关系,查询条件中包括需要查询的第一数据库表,其是作为主表的事实表和与该事实表相关联的维度表的任意组合;
步骤二)从第一数据库表所有的表出发,根据事实表和维度表的关联关系路径,向着事实表依次回溯,每次回溯计数加1;
步骤三)重复步骤二,当回溯计数和表的个数一致时,表明当前表为所有关联维度表的主表;
步骤四)从所述主表出发,按照关联关系进行深度遍历,依次形成查询路径和需要关联的维度表,最终形成需要查询的第二数据库表。
优选的是,所述数据模型为雪花星型模型。
优选的是,步骤四)中,具体包括:
根据步骤三)得到第一数据库表和回溯用到的表,构成关联表;
从所述主表出发,按照关联关系进行深度遍历,最终得到主表、关联表、维度表的查询顺序,形成最终的第二数据库表。
一种数据仓库快速查询装置,包括:
查询输入单元,用于获取数据模型和查询条件,其中,数据模型包括事实表和维度表的关联关系,查询条件中包括需要查询的第一数据库表,其是作为主表的事实表和与该事实表相关联的维度表的任意组合;
查询计算单元,用于从第一数据库表所有的表出发,根据事实表和维度表的关联关系路径,向着事实表依次回溯,每次回溯计数加1;
重复以上步骤,其中,当回溯计数和表的个数一致时,表明当前表为所有关联维度表的主表;
数据库表构建单元,用于从所述主表出发,按照关联关系进行深度遍历,依次形成查询路径和需要关联的维度表,最终形成需要查询的第二数据库表。
优选的是,所述数据模型为雪花星型模型。
优选的是,所述数据库表构建单元,进一步根据查询计算单元的处理,得到第一数据库表和回溯用到的表,构成关联表;
进一步从所述主表出发,按照关联关系进行深度遍历,最终得到主表、关联表、维度表的查询顺序,形成最终的第二数据库表。
本发明采取了上述方案以后,能够基于回溯的方法,得到最小关联的关联表集合,实现了快速查询,具有较高的效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
下面结合附图对本发明进行详细的描述,以使得本发明的上述优点更加明确。其中,
图1是本发明数据仓库快速查询方法的流程示意图;
图2是本发明数据仓库快速查询方法的数据仓库的各个表之间的示意图;
图3a-3d是发明数据仓库快速查询方法的示意图;
图4是本发明数据仓库快速查询装置的结构示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
实施例一:
一种数据仓库快速查询方法,其特征在于,包括:
步骤一)获取数据模型和查询条件,其中,数据模型包括事实表和维度表的关联关系,查询条件中包括需要查询的第一数据库表,其是作为主表的事实表和与该事实表相关联的维度表的任意组合;
步骤二)从第一数据库表所有的表出发,根据事实表和维度表的关联关系路径,向着事实表依次回溯,每次回溯计数加1;
步骤三)重复步骤二,当回溯计数和表的个数一致时,表明当前表为所有关联维度表的主表;
步骤四)从所述主表出发,按照关联关系进行深度遍历,依次形成查询路径和需要关联的维度表,最终形成需要查询的第二数据库表。
优选的是,所述数据模型为雪花星型模型。
优选的是,步骤四)中,具体包括:
根据步骤三)得到第一数据库表和回溯用到的表,构成关联表;
从所述主表出发,按照关联关系进行深度遍历,最终得到主表、关联表、维度表的查询顺序,形成最终的第二数据库表。
本发明采取了上述方案以后,能够基于回溯的方法,得到最小关联的关联表集合,实现了快速查询,具有较高的效率。
实施例二:
结合实施例对以上方法进行说明。
例如,对于下图关联关系的雪花模型表,其中“A”是事实表,其它表是维度表。
如图2所示,当查询所需表是(A,E,I)时,我们希望关联的表是(A,B,E,C,G,I)。
为了得到上述关联的表,我们为每个表加计数属性,查询所需表的计数是0,然后向上回溯到事实表,每回溯一次,计数加1,当某个表的计数属性值为查询所需表的个数时,该表为关联表的主表,回溯过程中用到的表则为关联的表。具体过程见图3a-3d。
如图3a所示,查询所需表(A,E,I)的计数分别置0。
如图3b所示,E向上回溯到B且计数加1,I向上回溯到G且计数加1,A是事实表,无法在回溯,最终表(B,G)的计数分别为(1,1)。
如图3c所示,B向上回溯到A且计数加1,G向上回溯到C且计数加1,最终表(A,C)的计数分别为(2,2)。
如图3d所示,C向上回溯到A且计数加1,最终在表A,计数“3”和查询表的个数“3”一致,因此表A是关联表的主表。查询表(A,E,I)和回溯用到的表(B,G,C)共同组成了关联表(A,E,I,B,G,C)。有了关联表,我们从主表A进行深度遍历,不难得出最终用于关联表的次序(A,B,E,C,G,I)。
有了关联表和查询对象,我们就能构建查询用的sql,通过sql查询数据,就能得到最终需要的数据。
实施例三:
与以上方法实施例相对应,本发明还提供了一种数据仓库快速查询装置,如图4所示,主要包括:
查询输入单元,用于获取数据模型和查询条件,其中,数据模型包括事实表和维度表的关联关系,查询条件中包括需要查询的第一数据库表,其是作为主表的事实表和与该事实表相关联的维度表的任意组合;
查询计算单元,用于从第一数据库表所有的表出发,根据事实表和维度表的关联关系路径,向着事实表依次回溯,每次回溯计数加1;
重复以上步骤,其中,当回溯计数和表的个数一致时,表明当前表为所有关联维度表的主表;
数据库表构建单元,用于从所述主表出发,按照关联关系进行深度遍历,依次形成查询路径和需要关联的维度表,最终形成需要查询的第二数据库表。
优选的是,所述数据模型为雪花星型模型。
优选的是,所述数据库表构建单元,进一步根据查询计算单元的处理,得到第一数据库表和回溯用到的表,构成关联表;
进一步从所述主表出发,按照关联关系进行深度遍历,最终得到主表、关联表、维度表的查询顺序,形成最终的第二数据库表。
本发明具有方法实施例相同的优点,即其能够基于回溯的方法,得到最小关联的关联表集合,实现了快速查询,具有较高的效率。
需要说明的是,对于上述方法实施例而言,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种数据仓库快速查询方法,其特征在于,包括:
步骤一)获取数据模型和查询条件,其中,数据模型包括事实表和维度表的关联关系,查询条件中包括需要查询的第一数据库表,其是作为主表的事实表和与该事实表相关联的维度表的任意组合;
步骤二)从第一数据库表所有的表出发,根据事实表和维度表的关联关系路径,向着事实表依次回溯,每次回溯计数加1;
步骤三)重复步骤二,当回溯计数和表的个数一致时,表明当前表为所有关联维度表的主表;
步骤四)从所述主表出发,按照关联关系进行深度遍历,依次形成查询路径和需要关联的维度表,最终形成需要查询的第二数据库表。
2.根据权利要求1所述的数据仓库快速查询方法,其特征在于,所述数据模型为雪花星型模型。
3.根据权利要求1或2所述的数据仓库快速查询方法,其特征在于,步骤四)中,具体包括:
根据步骤三)得到第一数据库表和回溯用到的表,构成关联表;
从所述主表出发,按照关联关系进行深度遍历,最终得到主表、关联表、维度表的查询顺序,形成最终的第二数据库表。
4.一种数据仓库快速查询装置,其特征在于,包括:
查询输入单元,用于获取数据模型和查询条件,其中,数据模型包括事实表和维度表的关联关系,查询条件中包括需要查询的第一数据库表,其是作为主表的事实表和与该事实表相关联的维度表的任意组合;
查询计算单元,用于从第一数据库表所有的表出发,根据事实表和维度表的关联关系路径,向着事实表依次回溯,每次回溯计数加1;
重复以上步骤,其中,当回溯计数和表的个数一致时,表明当前表为所有关联维度表的主表;
数据库表构建单元,用于从所述主表出发,按照关联关系进行深度遍历,依次形成查询路径和需要关联的维度表,最终形成需要查询的第二数据库表。
5.根据权利要求4所述的数据仓库快速查询装置,其特征在于,所述数据模型为雪花星型模型。
6.根据权利要求4或5所述的数据仓库快速查询装置,其特征在于,所述数据库表构建单元,进一步根据查询计算单元的处理,得到第一数据库表和回溯用到的表,构成关联表;
进一步从所述主表出发,按照关联关系进行深度遍历,最终得到主表、关联表、维度表的查询顺序,形成最终的第二数据库表。
CN201610053574.4A 2016-01-27 2016-01-27 一种数据仓库快速查询方法和装置 Expired - Fee Related CN105740365B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610053574.4A CN105740365B (zh) 2016-01-27 2016-01-27 一种数据仓库快速查询方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610053574.4A CN105740365B (zh) 2016-01-27 2016-01-27 一种数据仓库快速查询方法和装置

Publications (2)

Publication Number Publication Date
CN105740365A true CN105740365A (zh) 2016-07-06
CN105740365B CN105740365B (zh) 2019-02-05

Family

ID=56246594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610053574.4A Expired - Fee Related CN105740365B (zh) 2016-01-27 2016-01-27 一种数据仓库快速查询方法和装置

Country Status (1)

Country Link
CN (1) CN105740365B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019109A (zh) * 2017-07-12 2019-07-16 北京京东尚科信息技术有限公司 用于处理数据仓库数据的方法及装置
CN112328706A (zh) * 2020-11-03 2021-02-05 成都中科大旗软件股份有限公司 数仓体系下的维度建模计算方法、计算机设备和存储介质
CN117520313A (zh) * 2024-01-02 2024-02-06 北京淇瑀信息科技有限公司 基于多维关联数据仓库切片表的数据回溯方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778183B2 (en) * 2006-03-31 2010-08-17 International Business Machines Corporation Data replica selector
CN101916261A (zh) * 2010-07-28 2010-12-15 北京播思软件技术有限公司 一种分布式并行数据库系统的数据分区方法
CN105740333A (zh) * 2016-01-23 2016-07-06 北京掌阔移动传媒科技有限公司 一种可视化的广告管理平台和实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778183B2 (en) * 2006-03-31 2010-08-17 International Business Machines Corporation Data replica selector
CN101916261A (zh) * 2010-07-28 2010-12-15 北京播思软件技术有限公司 一种分布式并行数据库系统的数据分区方法
CN105740333A (zh) * 2016-01-23 2016-07-06 北京掌阔移动传媒科技有限公司 一种可视化的广告管理平台和实现方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019109A (zh) * 2017-07-12 2019-07-16 北京京东尚科信息技术有限公司 用于处理数据仓库数据的方法及装置
CN110019109B (zh) * 2017-07-12 2021-05-25 北京京东尚科信息技术有限公司 用于处理数据仓库数据的方法及装置
CN112328706A (zh) * 2020-11-03 2021-02-05 成都中科大旗软件股份有限公司 数仓体系下的维度建模计算方法、计算机设备和存储介质
CN112328706B (zh) * 2020-11-03 2023-10-24 成都中科大旗软件股份有限公司 数仓体系下的维度建模计算方法、计算机设备和存储介质
CN117520313A (zh) * 2024-01-02 2024-02-06 北京淇瑀信息科技有限公司 基于多维关联数据仓库切片表的数据回溯方法及装置
CN117520313B (zh) * 2024-01-02 2024-03-26 北京淇瑀信息科技有限公司 基于多维关联数据仓库切片表的数据回溯方法及装置

Also Published As

Publication number Publication date
CN105740365B (zh) 2019-02-05

Similar Documents

Publication Publication Date Title
US11907244B2 (en) Modifying field definitions to include post-processing instructions
Zhao et al. Modeling MongoDB with relational model
CN111382226B (zh) 一种数据库查询检索方法、装置和电子设备
CN105786808B (zh) 一种用于分布式执行关系型计算指令的方法与设备
CN103020301B (zh) 一种多维度数据查询和存储方法及系统
WO2015074477A1 (zh) 路径分析方法和装置
US9619492B2 (en) Data migration
CN106326429A (zh) 一种基于solr的Hbase秒级查询方案
CN102665231B (zh) 一种lte系统自动生成参数配置文件的方法
CN108228657B (zh) 一种关键字检索的实现方法及装置
CN103927331A (zh) 数据查询方法、装置及系统
US20170060977A1 (en) Data preparation for data mining
CN111506621A (zh) 一种数据统计方法及装置
CN103823846A (zh) 一种基于图论的大数据存储及查询方法
CN103778251A (zh) 面向大规模rdf图数据的sparql并行查询方法
CN105740365A (zh) 一种数据仓库快速查询方法和装置
CN111125199B (zh) 一种数据库访问方法、装置及电子设备
CN114820080A (zh) 基于人群流转的用户分群方法、系统、装置及介质
CN112580319A (zh) 数据处理的方法、装置、设备及计算机可读存储介质
CN110555034B (zh) 一种数据查询分页方法、装置、服务器及介质
CN108959439B (zh) 一种数据模板生成方法及系统
CN110175202A (zh) 用于数据库的表的外连接的方法和系统
CN108241709A (zh) 一种数据集成方法、装置和系统
CN107239568B (zh) 分布式索引实现方法及装置
CN106933844A (zh) 面向大规模rdf数据的可达性查询索引的构建方法

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190205