CN104408183A - 数据系统的数据导入方法和装置 - Google Patents

数据系统的数据导入方法和装置 Download PDF

Info

Publication number
CN104408183A
CN104408183A CN201410779196.9A CN201410779196A CN104408183A CN 104408183 A CN104408183 A CN 104408183A CN 201410779196 A CN201410779196 A CN 201410779196A CN 104408183 A CN104408183 A CN 104408183A
Authority
CN
China
Prior art keywords
dimension
data
attribute
key
corresponding 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
CN201410779196.9A
Other languages
English (en)
Other versions
CN104408183B (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 Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co 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 Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201410779196.9A priority Critical patent/CN104408183B/zh
Publication of CN104408183A publication Critical patent/CN104408183A/zh
Application granted granted Critical
Publication of CN104408183B publication Critical patent/CN104408183B/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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • 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/25Integrating or interfacing systems involving database management systems

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据系统的数据导入方法和装置。其中,该数据导入方法包括:获取导入数据的第一数据系统的第一维度属性和第一指标属性;接收第二数据系统的待导入数据;获取各个维度键值对与各个第一维度属性的第一对应关系,和各个指标键值对与第一指标属性的第二对应关系;按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表,并获取维度表的主键;按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表。通过本发明,解决了现有技术中OLAP数据仓库的维护成本和开发成本高的问题,降低了OLAP数据仓库与第三方数据进行数据交换的难度,进而实现了降低OLAP数据仓库的维护成本和开发成本的效果。

Description

数据系统的数据导入方法和装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据系统的数据导入方法和装置。
背景技术
随着信息化程度的高度发展,社会已经进入大数据时代。OLAP数据仓库可提供大规模数据的高性能查询和多维度切片与钻入,是一种成熟的主流数据分析方案,被各公司、企业、政府机关及社会团体广泛采用。
其中,OLAP为Online Analytical Processing,即联机分析处理,是共享多维信息的、针对特定问题的联机数据访问和分析的快速软件技术。
一般来说,OLAP数据仓库系统的设计都是为解决特定领域的问题所制定,未考虑与其他系统的融合和集成。然而,随着数据系统的数量变得越来越多,数据系统相互之间的数据交换需求也越来越迫切,由于系统设计的原因,OLAP数据仓库集成第三方数据的技术难度日益凸显,OLAP数据仓库与第三方数据进行数据交换时难度大。
典型的OLAP数据仓库往往包含一系列既有的维度和事实的定义,数据模式相对固定。当第三方数据的系统为异构系统时,OLAP数据仓库与第三方数据的数据实体的定义和属性各不相同是最突出的问题。现有技术中,解决该问题的方法是由OLAP数据仓库端提供面向特定某一种第三方数据的强类型API,由第三方数据直接进行推送,OLAP数据仓库在接收到第三方数据后,手动编写转换逻辑,将第三方数据转换为OLAP数据仓库所能接受的实体和维度信息。
其中,API为Application Programming Interface,即应用程序编程接口,是一些预先定义的函数,目的是提供应用程序与开发人员给予某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
在现有技术中,通过面向第三方数据的强类型API实现OLAP数据仓库与第三方数据的系统的数据对接,在面对不同种类的第三方数据时,需要分别针对不同类型的数据定义分别手动开发对接API和转换逻辑,导致OLAP数据仓库的维护成本和开发成本都很高。
针对现有技术中OLAP数据仓库的维护成本和开发成本高的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种数据系统的数据导入方法和装置,以解决现有技术中OLAP数据仓库的维护成本和开发成本高的问题。
为了实现上述目的,根据本发明实施例的一个方面,提供了一种数据系统的数据导入方法。
根据本发明的数据系统的数据导入方法包括:获取导入数据的第一数据系统的第一维度属性和第一指标属性;接收第二数据系统的待导入数据,其中,待导入数据中携带有多个维度键值对和多个指标键值对;获取各个维度键值对与各个第一维度属性的第一对应关系,和各个指标键值对与第一指标属性的第二对应关系;按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表,并获取维度表的主键;按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表。
进一步地,获取各个维度键值对与各个第一维度属性的第一对应关系,和各个指标键值对与第一指标属性的第二对应关系包括:计算各个第一维度属性的字符串与各个维度键值对中第二维度属性的字符串的第一距离;创建第三维度属性与第一维度属性的第一对应关系,其中,第三维度属性为第二维度属性中第一距离最小的维度属性;计算各个第一指标属性的字符串与各个指标键值对中第二指标属性的字符串的第二距离;创建第三指标属性与第一指标属性的第二对应关系,其中,第三指标属性为第二指标属性中第二距离最小的指标属性。
进一步地,按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表,并获取维度表的主键包括:读取与第二维度属性具有第一对应关系的第一维度属性的维度表;查询维度表中是否存在维度值;若维度表中不存在维度值,将维度值插入维度表;获取维度表的主键。
进一步地,按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表包括:读取与第二指标属性具有第二对应关系的第一指标属性的指标表;将指标值插入指标表中对应主键的位置。
进一步地,在按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表之后,数据导入方法还包括:重新生成第一数据系统。
为了实现上述目的,根据本发明实施例的另一方面,提供了一种数据系统的数据导入装置。
根据本发明的数据系统的数据导入装置包括:第一获取模块,用于获取导入数据的第一数据系统的第一维度属性和第一指标属性;接收模块,用于接收第二数据系统的待导入数据,其中,待导入数据中携带有多个维度键值对和多个指标键值对;第二获取模块,用于获取各个维度键值对与各个第一维度属性的第一对应关系,和各个指标键值对与第一指标属性的第二对应关系;第一导入模块,用于按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表,并获取维度表的主键;第二导入模块,用于按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表。
进一步地,第一获取模块包括:第一计算模块,用于计算各个第一维度属性的字符串与各个维度键值对中第二维度属性的字符串的第一距离;第一创建模块,用于创建第三维度属性与第一维度属性的第一对应关系,其中,第三维度属性为第二维度属性中第一距离最小的维度属性;第二计算模块,用于计算各个第一指标属性的字符串与各个指标键值对中第二指标属性的字符串的第二距离;第二创建模块,用于创建第三指标属性与第一指标属性的第二对应关系,其中,第三指标属性为第二指标属性中第二距离最小的指标属性。
进一步地,第一导入模块包括:第一读取模块,用于读取与第二维度属性具有第一对应关系的第一维度属性的维度表;查询模块,用于查询维度表中是否存在维度值;第一插入模块,用于在维度表中不存在维度值的情况下,将维度值插入维度表;第三获取模块,用于获取维度表的主键。
进一步地,第二导入模块包括:第二读取模块,用于读取与第二指标属性具有第二对应关系的第一指标属性的指标表;第二插入模块,用于将指标值插入指标表中对应主键的位置。
进一步地,数据导入装置还包括:生成模块,用于在按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表之后,重新生成第一数据系统。
采用本发明实施例,在获取第一数据系统的第一维度属性和第一指标属性之后,接收第二数据系统的待导入数据,并获取待导入数据的维度键值对与第一维度属性的第一对应关系以及待导入数据的指标键值对与第一指标属性的第二对应关系,然后按照第一对应关系将待导入数据的维度值导入第一数据系统的维度表并获取维度表的主键,按照第二对应关系和维度表的主键将待导入数据的指标值导入第一数据系统的指标表。在上述实施例中,在将待导入数据导入第一数据系统时,通过获取第一数据系统与第二数据系统的维度之间的第一对应关系和指标之间的第二对应关系,并按照第一对应关系和第二对应关系将待导入数据导入第一数据系统,无需手动开发数据对接专用的API和手动编写转换逻辑,降低了第一数据系统的维护成本和开发成本。通过本发明实施例,解决了现有技术中OLAP数据仓库的维护成本和开发成本高的问题,降低了OLAP数据仓库与第三方数据进行数据交换的难度,进而实现了降低OLAP数据仓库的维护成本和开发成本的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的数据系统的数据导入方法的流程图;以及
图2是根据本发明实施例的数据系统的数据导入装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供了一种数据系统的数据导入方法。
图1是根据本发明实施例的数据系统的数据导入方法的流程图。如图1所示,该数据导入方法可以包括步骤如下:
步骤S102,获取导入数据的第一数据系统的第一维度属性和第一指标属性。
步骤S104,接收第二数据系统的待导入数据。
其中,待导入数据中携带有多个维度键值对和多个指标键值对。
步骤S106,获取各个维度键值对与各个第一维度属性的第一对应关系,和各个指标键值对与第一指标属性的第二对应关系。
步骤S108,按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表,并获取维度表的主键。
步骤S110,按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表。
采用本发明实施例,在获取第一数据系统的第一维度属性和第一指标属性之后,接收第二数据系统的待导入数据,并获取待导入数据的维度键值对与第一维度属性的第一对应关系以及待导入数据的指标键值对与第一指标属性的第二对应关系,然后按照第一对应关系将待导入数据的维度值导入第一数据系统的维度表并获取维度表的主键,按照第二对应关系和维度表的主键将待导入数据的指标值导入第一数据系统的指标表。在上述实施例中,在将待导入数据导入第一数据系统时,通过获取第一数据系统与第二数据系统的维度之间的第一对应关系和指标之间的第二对应关系,并按照第一对应关系和第二对应关系将待导入数据导入第一数据系统,无需手动开发数据对接专用的API和手动编写转换逻辑,降低了第一数据系统的维护成本和开发成本。通过本发明实施例,解决了现有技术中OLAP数据仓库的维护成本和开发成本高的问题,降低了OLAP数据仓库与第三方数据进行数据交换的难度,进而实现了降低OLAP数据仓库的维护成本和开发成本的效果。
在上述的实施例中,第一数据系统可以为OLAP数据仓库;第二数据系统可以为除OLAP数据仓库之外的第三方数据系统;第一维度属性可以为OLAP数据仓库的维度属性,第一指标属性可以为OLAP数据仓库的指标属性,如,若OLAP数据仓库为记录订单信息的系统,那么第一维度属性可以包括商品维度和消费者维度,第一指标属性可以包括订单金额和订单数量。
其中,API为Application Programming Interface,即应用程序编程接口,是一些预先定义的函数,目的是提供应用程序与开发人员给予某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节;OLAP为Online AnalyticalProcessing,即联机分析处理,是共享多维信息的、针对特定问题的联机数据访问和分析的快速软件技术。
进一步地,接收第二数据系统的待导入数据可以通过接收第二数据系统经互联网发送的HTTP请求中携带的数据来实现。
具体地,HTTP请求中携带的数据可以为JSON格式的数据(即上述实施例中的待导入数据),一个HTTP请求中可以携带多条JSON格式的数据,每条JSON格式的数据可以包括一条第二数据系统的数据的维度键值对和对应的指标键值对。
其中,HTTP为Hypertext transfer Protocol,即超文本传送协议JSON为JavaScriptObject Notation,即JavaScript对象表示法,是一种轻量级的数据交换格式。
需要进一步说明的是,第一数据系统可以通过可接受JSON类型的数据的API来接收第二数据系统发送的HTTP请求。
根据本发明上述实施例,获取各个维度键值对与各个第一维度属性的第一对应关系,和各个指标键值对与第一指标属性的第二对应关系可以包括:计算各个第一维度属性的字符串与各个维度键值对中第二维度属性的字符串的第一距离;创建第三维度属性与第一维度属性的第一对应关系,其中,第三维度属性为第二维度属性中第一距离最小的维度属性;计算各个第一指标属性的字符串与各个指标键值对中第二指标属性的字符串的第二距离;创建第三指标属性与第一指标属性的第二对应关系,其中,第三指标属性为第二指标属性中第二距离最小的指标属性。
具体地,计算各个第一维度属性的字符串与各个维度键值对中的第二维度属性的字符串之间的第一距离,获取最小的第一距离对应的第二维度属性(即上述实施例中的第三维度属性)和第一维度属性,使用获取到的第三维度属性和对应的第一维度属性创建第一对应关系;计算各个第一指标属性的字符串与各个指标键值对中的第二指标属性的字符串的之间的第二距离,获取最小的第二距离对应的第二指标属性(即上述实施例中的第三指标属性)和第一指标属性,使用获取到的第三指标属性和对应的第一指标属性创建第二对应关系。
在一个可选的实施例中,可以获取JSON类型的数据(即上述实施例中的待导入数据)中的维度键值对和指标键值对,计算各个维度键值对中维度键的字符串和OLAP数据仓库(即上述实施例中的第一数据系统)的维度属性的字符串之间的字符串距离(即上述实施例中的第一距离),将与OLAP数据仓库中各个维度属性的字符串距离最近(即字符串距离最小)的维度键对应的维度键值对作为第三维度属性,并建立第三维度属性与OLAP数据仓库的维度属性之间的维度对应关系(即上述实施例中的第一对应关系)。
在该实施例中,计算各个指标键值对中指标键的字符串和OLAP数据仓库(即上述实施例中的第一数据系统)的指标属性的字符串之间的字符串距离(即上述实施例中的第二距离),将与OLAP数据仓库中各个指标属性的字符串距离最近(即字符串距离最小)的指标键对应的指标键值对作为第三指标属性,并建立第三指标属性与OLAP数据仓库的指标属性之间的指标对应关系(即上述实施例中的第二对应关系)。
在本发明的上述实施例中,按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表,并获取维度表的主键可以包括:读取与第二维度属性具有第一对应关系的第一维度属性的维度表;查询维度表中是否存在维度值;若维度表中不存在维度值,将维度值插入维度表;获取维度表的主键。
具体地,在按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表时,读取与第二维度属性具有对应关系的第一维度属性的维度表,查询该维度表中是否存在该维度键值对中的维度值,若维度表中存在该维度值,则忽略该维度值,继续读取下一维度值;若维度表中不存在该维度值,则将该维度值按照第一对应关系插入维度表中,并获取维度表的主键。
例如,若读取到的维度值为消费者的姓名,如张三,那么查询OLAP数据仓库的维度表中是否已存在张三,若维度表中存在张三,则继续读取下一个消费者的姓名;若维度表中不存在张三,则根据维度对应关系(即上述实施例中的第一对应关系)将张三插入维度表中存储消费者姓名的相应行中。
根据本发明上述实施例,按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表可以包括:读取与第二指标属性具有第二对应关系的第一指标属性的指标表;将指标值插入指标表中对应主键的位置。
具体地,在按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表时,读取与第二指标属性具有第二对应关系的第一指标属性的指标表,指标表中包括两种列,一种列为指标列,一种列为维度列,在讲指标值插入指标表中对应主键的位置时,将维度表中的主键值插入指标表中的维度列,并将指标值插入指标列中与对应主键值位于同一行的指标行。
例如,若读取到的指标值为姓名为张三的消费者的各个订单金额,根据指标对应关系(即上述实施例中的第二对应关系)和维度表的主键(即张三存储在维度表中的相应行的主键),将张三的各个订单金额存储在指标表(即事实表,该事实表为专用于存储指标的表)的相应行中。
通过本发明上述实施例,使用维度表的主键和第二对应关系(即指标对应关系)将第二数据系统(即第三方数据系统)的指标值存储在第一数据系统中,通过将第二数据系统的指标值对应的维度值的主键同时存储在指标表中,保证了指标值和维度值的对应关系,无需将第二数据系统的指标值对应的维度值在存储第一数据系统中,节省了存储指标值所需的存储空间。
在本发明的上述实施例中,在按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表之后,数据导入方法还可以包括:重新生成第一数据系统。
具体地,在将第二数据系统的维度值和指标值导入到第一数据系统中之后,重新生成第一数据系统(如,OLAP数据仓库),以更新第一数据系统存储的数据。
本发明实施例还提供了一种数据系统的数据导入装置。该数据导入装置可以通过上述实施例中的数据系统的数据导入方法实现其功能。
图2是根据本发明实施例的数据系统的数据导入装置的示意图。如图2所示,该数据导入装置可以包括:第一获取模块10,用于获取导入数据的第一数据系统的第一维度属性和第一指标属性;接收模块30,用于接收第二数据系统的待导入数据,其中,待导入数据中携带有多个维度键值对和多个指标键值对;第二获取模块50,用于获取各个维度键值对与各个第一维度属性的第一对应关系,和各个指标键值对与第一指标属性的第二对应关系;第一导入模块70,用于按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表,并获取维度表的主键;第二导入模块90,用于按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表。
采用本发明实施例,在获取第一数据系统的第一维度属性和第一指标属性之后,接收第二数据系统的待导入数据,并获取待导入数据的维度键值对与第一维度属性的第一对应关系以及待导入数据的指标键值对与第一指标属性的第二对应关系,然后按照第一对应关系将待导入数据的维度值导入第一数据系统的维度表并获取维度表的主键,按照第二对应关系和维度表的主键将待导入数据的指标值导入第一数据系统的指标表。在上述实施例中,在将待导入数据导入第一数据系统时,通过获取第一数据系统与第二数据系统的维度之间的第一对应关系和指标之间的第二对应关系,并按照第一对应关系和第二对应关系将待导入数据导入第一数据系统,无需手动开发数据对接专用的API和手动编写转换逻辑,降低了第一数据系统的维护成本和开发成本。通过本发明实施例,解决了现有技术中OLAP数据仓库的维护成本和开发成本高的问题,降低了OLAP数据仓库与第三方数据进行数据交换的难度,进而实现了降低OLAP数据仓库的维护成本和开发成本的效果。
在上述的实施例中,第一数据系统可以为OLAP数据仓库;第二数据系统可以为除OLAP数据仓库之外的第三方数据系统;第一维度属性可以为OLAP数据仓库的维度属性,第一指标属性可以为OLAP数据仓库的指标属性,如,若OLAP数据仓库为记录订单信息的系统,那么第一维度属性可以包括商品维度和消费者维度,第一指标属性可以包括订单金额和订单数量。
其中,API为Application Programming Interface,即应用程序编程接口,是一些预先定义的函数,目的是提供应用程序与开发人员给予某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节;OLAP为Online AnalyticalProcessing,即联机分析处理,是共享多维信息的、针对特定问题的联机数据访问和分析的快速软件技术。
进一步地,接收第二数据系统的待导入数据可以通过接收第二数据系统经互联网发送的HTTP请求中携带的数据来实现。
具体地,HTTP请求中携带的数据可以为JSON格式的数据(即上述实施例中的待导入数据),一个HTTP请求中可以携带多条JSON格式的数据,每条JSON格式的数据可以包括一条第二数据系统的数据的维度键值对和对应的指标键值对。
其中,HTTP为Hypertext transfer Protocol,即超文本传送协议JSON为JavaScriptObject Notation,即JavaScript对象表示法,是一种轻量级的数据交换格式。
需要进一步说明的是,第一数据系统可以通过可接受JSON类型的数据的API来接收第二数据系统发送的HTTP请求。
根据本发明上述实施例,第一获取模块可以包括:第一计算模块,用于计算各个第一维度属性的字符串与各个维度键值对中第二维度属性的字符串的第一距离;第一创建模块,用于创建第三维度属性与第一维度属性的第一对应关系,其中,第三维度属性为第二维度属性中第一距离最小的维度属性;第二计算模块,用于计算各个第一指标属性的字符串与各个指标键值对中第二指标属性的字符串的第二距离;第二创建模块,用于创建第三指标属性与第一指标属性的第二对应关系,其中,第三指标属性为第二指标属性中第二距离最小的指标属性。
具体地,计算各个第一维度属性的字符串与各个维度键值对中的第二维度属性的字符串之间的第一距离,获取最小的第一距离对应的第二维度属性(即上述实施例中的第三维度属性)和第一维度属性,使用获取到的第三维度属性和对应的第一维度属性创建第一对应关系;计算各个第一指标属性的字符串与各个指标键值对中的第二指标属性的字符串的之间的第二距离,获取最小的第二距离对应的第二指标属性(即上述实施例中的第三指标属性)和第一指标属性,使用获取到的第三指标属性和对应的第一指标属性创建第二对应关系。
在一个可选的实施例中,可以获取JSON类型的数据(即上述实施例中的待导入数据)中的维度键值对和指标键值对,计算各个维度键值对中维度键的字符串和OLAP数据仓库(即上述实施例中的第一数据系统)的维度属性的字符串之间的字符串距离(即上述实施例中的第一距离),将与OLAP数据仓库中各个维度属性的字符串距离最近(即字符串距离最小)的维度键对应的维度键值对作为第三维度属性,并建立第三维度属性与OLAP数据仓库的维度属性之间的维度对应关系(即上述实施例中的第一对应关系)。
在该实施例中,计算各个指标键值对中指标键的字符串和OLAP数据仓库(即上述实施例中的第一数据系统)的指标属性的字符串之间的字符串距离(即上述实施例中的第二距离),将与OLAP数据仓库中各个指标属性的字符串距离最近(即字符串距离最小)的指标键对应的指标键值对作为第三指标属性,并建立第三指标属性与OLAP数据仓库的指标属性之间的指标对应关系(即上述实施例中的第二对应关系)。
在本发明的上述实施例中,第一导入模块可以包括:第一读取模块,用于读取与第二维度属性具有第一对应关系的第一维度属性的维度表;查询模块,用于查询维度表中是否存在维度值;第一插入模块,用于在维度表中不存在维度值的情况下,将维度值插入维度表;第三获取模块,用于获取维度表的主键。
具体地,在按照第一对应关系将维度键值对中的维度值导入第一数据系统的维度表时,读取与第二维度属性具有对应关系的第一维度属性的维度表,查询该维度表中是否存在该维度键值对中的维度值,若维度表中存在该维度值,则忽略该维度值,继续读取下一维度值;若维度表中不存在该维度值,则将该维度值按照第一对应关系插入维度表中,并获取维度表的主键。
根据本发明上述实施例,第二导入模块可以包括:第二读取模块,用于读取与第二指标属性具有第二对应关系的第一指标属性的指标表;第二插入模块,用于将指标值插入指标表中对应主键的位置。
具体地,在按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表时,读取与第二指标属性具有第二对应关系的第一指标属性的指标表,并将该指标值插入指标表中对应维度表的主键的位置。
通过本发明上述实施例,使用维度表的主键和第二对应关系(即指标对应关系)将第二数据系统(即第三方数据系统)的指标值存储在第一数据系统中,通过将第二数据系统的指标值对应的维度值的主键同时存储在指标表中,保证了指标值和维度值的对应关系,无需将第二数据系统的指标值对应的维度值在存储第一数据系统中,节省了存储指标值所需的存储空间。
在本发明的上述实施例中,数据导入装置还可以包括:生成模块,用于在按照第二对应关系和维度表的主键将指标键值对中的指标值导入指标表之后,重新生成第一数据系统。
具体地,在将第二数据系统的维度值和指标值导入到第一数据系统中之后,重新生成第一数据系统(如,OLAP数据仓库),以更新第一数据系统存储的数据。
本实施例中所提供的各个模块与方法实施例对应步骤所提供的使用方法相同、应用场景也可以相同。当然,需要注意的是,上述模块涉及的方案可以不限于上述实施例中的内容和场景,且上述模块可以运行在计算机终端或移动终端,可以通过软件或硬件实现。
从以上的描述中,可以看出,本发明实现了如下技术效果:
采用本发明实施例,在获取第一数据系统的第一维度属性和第一指标属性之后,接收第二数据系统的待导入数据,并获取待导入数据的维度键值对与第一维度属性的第一对应关系以及待导入数据的指标键值对与第一指标属性的第二对应关系,然后按照第一对应关系将待导入数据的维度值导入第一数据系统的维度表并获取维度表的主键,按照第二对应关系和维度表的主键将待导入数据的指标值导入第一数据系统的指标表。在上述实施例中,在将待导入数据导入第一数据系统时,通过获取第一数据系统与第二数据系统的维度之间的第一对应关系和指标之间的第二对应关系,并按照第一对应关系和第二对应关系将待导入数据导入第一数据系统,无需手动开发数据对接专用的API和手动编写转换逻辑,降低了第一数据系统的维护成本和开发成本。通过本发明实施例,解决了现有技术中OLAP数据仓库的维护成本和开发成本高的问题,降低了OLAP数据仓库与第三方数据进行数据交换的难度,进而实现了降低OLAP数据仓库的维护成本和开发成本的效果。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种数据系统的数据导入方法,其特征在于,包括:
获取导入数据的第一数据系统的第一维度属性和第一指标属性;
接收第二数据系统的待导入数据,其中,所述待导入数据中携带有多个维度键值对和多个指标键值对;
获取各个所述维度键值对与各个所述第一维度属性的第一对应关系,和各个所述指标键值对与所述第一指标属性的第二对应关系;
按照所述第一对应关系将所述维度键值对中的维度值导入所述第一数据系统的维度表,并获取所述维度表的主键;
按照所述第二对应关系和所述维度表的主键将所述指标键值对中的指标值导入指标表。
2.根据权利要求1所述的数据导入方法,其特征在于,获取各个所述维度键值对与各个所述第一维度属性的第一对应关系,和各个所述指标键值对与所述第一指标属性的第二对应关系包括:
计算各个所述第一维度属性的字符串与各个所述维度键值对中第二维度属性的字符串的第一距离;创建第三维度属性与所述第一维度属性的所述第一对应关系,其中,所述第三维度属性为所述第二维度属性中所述第一距离最小的维度属性;
计算各个所述第一指标属性的字符串与各个所述指标键值对中第二指标属性的字符串的第二距离;创建第三指标属性与所述第一指标属性的所述第二对应关系,其中,所述第三指标属性为所述第二指标属性中所述第二距离最小的指标属性。
3.根据权利要求2所述的数据导入方法,其特征在于,按照所述第一对应关系将所述维度键值对中的维度值导入所述第一数据系统的维度表,并获取所述维度表的主键包括:
读取与所述第二维度属性具有所述第一对应关系的所述第一维度属性的所述维度表;
查询所述维度表中是否存在所述维度值;
若所述维度表中不存在所述维度值,将所述维度值插入所述维度表;
获取所述维度表的主键。
4.根据权利要求3所述的数据导入方法,其特征在于,按照所述第二对应关系和所述维度表的主键将所述指标键值对中的指标值导入指标表包括:
读取与所述第二指标属性具有所述第二对应关系的所述第一指标属性的所述指标表;
将所述指标值插入所述指标表中对应所述主键的位置。
5.根据权利要求1至4中任意一项所述的数据导入方法,其特征在于,在按照所述第二对应关系和所述维度表的主键将所述指标键值对中的指标值导入指标表之后,所述数据导入方法还包括:
重新生成所述第一数据系统。
6.一种数据系统的数据导入装置,其特征在于,包括:
第一获取模块,用于获取导入数据的第一数据系统的第一维度属性和第一指标属性;
接收模块,用于接收第二数据系统的待导入数据,其中,所述待导入数据中携带有多个维度键值对和多个指标键值对;
第二获取模块,用于获取各个所述维度键值对与各个所述第一维度属性的第一对应关系,和各个所述指标键值对与所述第一指标属性的第二对应关系;
第一导入模块,用于按照所述第一对应关系将所述维度键值对中的维度值导入所述第一数据系统的维度表,并获取所述维度表的主键;
第二导入模块,用于按照所述第二对应关系和所述维度表的主键将所述指标键值对中的指标值导入指标表。
7.根据权利要求6所述的数据导入装置,其特征在于,所述第一获取模块包括:
第一计算模块,用于计算各个所述第一维度属性的字符串与各个所述维度键值对中第二维度属性的字符串的第一距离;第一创建模块,用于创建第三维度属性与所述第一维度属性的所述第一对应关系,其中,所述第三维度属性为所述第二维度属性中所述第一距离最小的维度属性;
第二计算模块,用于计算各个所述第一指标属性的字符串与各个所述指标键值对中第二指标属性的字符串的第二距离;第二创建模块,用于创建第三指标属性与所述第一指标属性的所述第二对应关系,其中,所述第三指标属性为所述第二指标属性中所述第二距离最小的指标属性。
8.根据权利要求7所述的数据导入装置,其特征在于,所述第一导入模块包括:
第一读取模块,用于读取与所述第二维度属性具有所述第一对应关系的所述第一维度属性的所述维度表;
查询模块,用于查询所述维度表中是否存在所述维度值;
第一插入模块,用于在所述维度表中不存在所述维度值的情况下,将所述维度值插入所述维度表;
第三获取模块,用于获取所述维度表的主键。
9.根据权利要求8所述的数据导入装置,其特征在于,所述第二导入模块包括:
第二读取模块,用于读取与所述第二指标属性具有所述第二对应关系的所述第一指标属性的所述指标表;
第二插入模块,用于将所述指标值插入所述指标表中对应所述主键的位置。
10.根据权利要求6至9中任意一项所述的数据导入装置,其特征在于,所述数据导入装置还包括:
生成模块,用于在按照所述第二对应关系和所述维度表的主键将所述指标键值对中的指标值导入指标表之后,重新生成所述第一数据系统。
CN201410779196.9A 2014-12-15 2014-12-15 数据系统的数据导入方法和装置 Active CN104408183B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410779196.9A CN104408183B (zh) 2014-12-15 2014-12-15 数据系统的数据导入方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410779196.9A CN104408183B (zh) 2014-12-15 2014-12-15 数据系统的数据导入方法和装置

Publications (2)

Publication Number Publication Date
CN104408183A true CN104408183A (zh) 2015-03-11
CN104408183B CN104408183B (zh) 2018-05-15

Family

ID=52645814

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410779196.9A Active CN104408183B (zh) 2014-12-15 2014-12-15 数据系统的数据导入方法和装置

Country Status (1)

Country Link
CN (1) CN104408183B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682099A (zh) * 2016-12-01 2017-05-17 北京奇虎科技有限公司 一种数据的存储方法和装置
CN106933913A (zh) * 2015-12-31 2017-07-07 北京国双科技有限公司 数据处理方法和装置
CN106933904A (zh) * 2015-12-31 2017-07-07 北京国双科技有限公司 数据的过滤方法和装置
CN112307041A (zh) * 2020-10-29 2021-02-02 山东浪潮通软信息科技有限公司 指标维度建模方法、装置和计算机可读介质
CN113064897A (zh) * 2021-03-16 2021-07-02 北京沃东天骏信息技术有限公司 一种业务指标模型的生成方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101930464A (zh) * 2010-08-25 2010-12-29 华南理工大学 一种面向rfid物流应用的松散性异构数据交换系统及方法
US7970795B2 (en) * 2002-12-10 2011-06-28 Accenture Global Services Limited Data model development tool
CN103559272A (zh) * 2013-11-05 2014-02-05 北京国双科技有限公司 向维度表里导入数据的方法和装置
CN103853820A (zh) * 2014-02-20 2014-06-11 北京用友政务软件有限公司 一种数据处理方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7970795B2 (en) * 2002-12-10 2011-06-28 Accenture Global Services Limited Data model development tool
CN101930464A (zh) * 2010-08-25 2010-12-29 华南理工大学 一种面向rfid物流应用的松散性异构数据交换系统及方法
CN103559272A (zh) * 2013-11-05 2014-02-05 北京国双科技有限公司 向维度表里导入数据的方法和装置
CN103853820A (zh) * 2014-02-20 2014-06-11 北京用友政务软件有限公司 一种数据处理方法及系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933913A (zh) * 2015-12-31 2017-07-07 北京国双科技有限公司 数据处理方法和装置
CN106933904A (zh) * 2015-12-31 2017-07-07 北京国双科技有限公司 数据的过滤方法和装置
CN106933904B (zh) * 2015-12-31 2019-12-03 北京国双科技有限公司 数据的过滤方法和装置
CN106933913B (zh) * 2015-12-31 2020-05-08 北京国双科技有限公司 数据处理方法和装置
CN106682099A (zh) * 2016-12-01 2017-05-17 北京奇虎科技有限公司 一种数据的存储方法和装置
CN112307041A (zh) * 2020-10-29 2021-02-02 山东浪潮通软信息科技有限公司 指标维度建模方法、装置和计算机可读介质
CN113064897A (zh) * 2021-03-16 2021-07-02 北京沃东天骏信息技术有限公司 一种业务指标模型的生成方法、装置、设备及存储介质
CN113064897B (zh) * 2021-03-16 2024-05-17 北京沃东天骏信息技术有限公司 一种业务指标模型的生成方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN104408183B (zh) 2018-05-15

Similar Documents

Publication Publication Date Title
US10949447B2 (en) Blockchain-based data synchronizing and data block parsing method and device
US11281793B2 (en) User permission data query method and apparatus, electronic device and medium
CN111382174B (zh) 多方数据联合查询方法、装置、服务器和存储介质
CN105183735B (zh) 数据的查询方法及查询装置
US8874600B2 (en) System and method for building a cloud aware massive data analytics solution background
US9317557B2 (en) Answering relational database queries using graph exploration
CN111046237B (zh) 用户行为数据处理方法、装置、电子设备及可读介质
CN104408183A (zh) 数据系统的数据导入方法和装置
CN108958959B (zh) 检测hive数据表的方法和装置
CN108052635A (zh) 一种异构数据源统一联合查询方法
CN109388654A (zh) 一种查询数据表的方法和装置
CN111813804A (zh) 一种数据查询方法、装置、电子设备及存储介质
CN106547646B (zh) 一种数据备份及恢复方法、数据备份及恢复装置
CN110888930A (zh) 基于知识图谱的金融知识查询服务接口设计与实现方法
CN107480268A (zh) 数据查询方法及装置
CN110689268A (zh) 一种提取指标的方法和装置
CN105404974A (zh) 一种数据资产化方法、装置及管理平台
CN109901991A (zh) 一种分析异常调用的方法、装置和电子设备
Yu et al. A study on the application of coordinated TOPSIS in evaluation of robotics academic journals
US11531706B2 (en) Graph search using index vertices
CN111159192B (zh) 基于大数据的数据入库方法、装置、存储介质和处理器
CN111814020A (zh) 一种数据的获取方法和装置
CN113934729A (zh) 一种基于知识图谱的数据管理方法、相关设备及介质
CN106326295B (zh) 语义数据的存储方法及装置
CN113722315A (zh) 数据生成方法、装置、电子设备和计算机可读介质

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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Data import method and device of data system

Effective date of registration: 20190531

Granted publication date: 20180515

Pledgee: Shenzhen Black Horse World Investment Consulting Co.,Ltd.

Pledgor: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

Registration number: 2019990000503

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Patentee after: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Patentee before: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd.

PP01 Preservation of patent right

Effective date of registration: 20240604

Granted publication date: 20180515