CN113901135B - 一种跨源异构数据智能可视化分析展示方法和设备 - Google Patents

一种跨源异构数据智能可视化分析展示方法和设备 Download PDF

Info

Publication number
CN113901135B
CN113901135B CN202111074736.XA CN202111074736A CN113901135B CN 113901135 B CN113901135 B CN 113901135B CN 202111074736 A CN202111074736 A CN 202111074736A CN 113901135 B CN113901135 B CN 113901135B
Authority
CN
China
Prior art keywords
data
target
memory database
visual
distributed memory
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
CN202111074736.XA
Other languages
English (en)
Other versions
CN113901135A (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 Birui Data Technology Co ltd
Original Assignee
Beijing Birui Data 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 Birui Data Technology Co ltd filed Critical Beijing Birui Data Technology Co ltd
Priority to CN202111074736.XA priority Critical patent/CN113901135B/zh
Publication of CN113901135A publication Critical patent/CN113901135A/zh
Priority to US18/265,537 priority patent/US11921742B2/en
Priority to PCT/CN2022/098023 priority patent/WO2023040373A1/zh
Application granted granted Critical
Publication of CN113901135B publication Critical patent/CN113901135B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • 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
    • 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/2282Tablespace storage structures; Management thereof
    • 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/242Query formulation
    • G06F16/2433Query languages
    • 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/248Presentation of query results
    • 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
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • 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/26Visual data mining; Browsing structured data

Landscapes

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

Abstract

本发明公开了一种跨源异构数据智能可视化分析展示方法和设备,该方法包括:当检测到对目标异构数据的可视化展示指令时,在分布式内存数据库中通过JDBC驱动创建与目标异构数据所在各目标数据源对应的连接器;在可视化数据智能平台中通过分布式内存数据库的python驱动和SQLAlchemy框架创建可视化数据智能平台与分布式内存数据库的连接;根据与目标异构数据对应的关联信息在可视化数据智能平台中生成SQL建表语句;根据SQL建表语句在分布式内存数据库中生成多表关联的目标数据表;根据目标数据表在可视化数据智能平台中对目标异构数据进行可视化展示,从而在不改变生产数据库的数据和不影响业务代码的基础上实现跨源异构数据智能可视化分析展示。

Description

一种跨源异构数据智能可视化分析展示方法和设备
技术领域
本申请涉及计算机大数据智能分析技术领域,更具体地,涉及一种跨源异构数据智能可视化分析展示方法和设备。
背景技术
企业不同的业务***往往分散在不同的数据库中,且服从数据库三范式。而进行商业智能分析时,往往需要将不同业务***的数据表关联后形成宽表,再将表中的数据转换成相应的图形或表格,进行可视化展示,从而使枯燥的数据看起来更直观更容易理解。
要将不同业务***的数据表关联后形成宽表,就需要将不同数据库的数据进行跨库关联查询并进行分析,从而形成宽表。一般来说,传统的实现跨库关联查询分析的方式有两种:一种是通过单独ETL数据转换工具把不同数据库中的相关数据抽取到统一的库中,然后对该数据库中的数据进行查询分析操作,最终形成一个宽表,再进行数据可视化转换,从而进行可视化展示;二是对现有业务代码进行重构,在业务代码中进行join关联并查询数据。
第一种方式在抽取数据时会对生产数据库造成性能压力,也无法实时捕获生产数据库中的数据变更,同时将数据抽取到外部数据库,会存在数据安全问题。第二种方式会直接影响到业务***,依赖于业务***的接口改造,往往会涉及和厂商的接口费用。
因此,如何在不改变生产数据库的数据和不影响业务代码的基础上实现跨源异构数据可视化展示,是目前有待解决的技术问题。
发明内容
本发明提供一种跨源异构数据智能可视化分析展示方法,用以解决现有技术中无法在不改变生产数据库的数据和不影响业务代码的基础上实现跨源异构数据可视化展示的技术问题。
该方法应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,包括:
当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源;
在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接;
根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句;
根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表;
根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示;
其中,所述关联信息包括关联数据表,关联字段和关联类型。
在本申请一些实施例中,根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示,具体为:
基于SQLAlchemy框架将所述关联数据表与所述目标数据表进行映射,并将所述目标数据表的目标表名记录在元数据库中;
在所述可视化数据智能平台中选择所述目标表名,并基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据;
将所述可视化数据返回前端,以对所述目标异构数据进行可视化展示。
在本申请一些实施例中,基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据,具体为:
基于所述目标表名生成SQL语句;
根据所述SQL语句到所述分布式内存数据库中进行查询,根据查询结果获取所述可视化数据。
在本申请一些实施例中,根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表,具体为:
将所述SQL建表语句拆分为多条单表查询语句;
依次按照各所述单表查询语句通过各所述连接器将所述目标异构数据从各所述目标数据源抽取到所述分布式内存数据库中,并在分布式内存数据库中生成所述目标数据表。
在本申请一些实施例中,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在目标数据源对应的连接器之后,所述方法还包括:
基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中。
在本申请一些实施例中,基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中,具体为:
将所述连接器名作为所述分布式内存数据库的Catalog,将所述数据源名作为所述分布式内存数据库的Schema,将所述表名作为所述分布式内存数据库的Table;
基于Catalog.Schema.Table将所述表名信息映射到所述分布式内存数据库中。
在本申请一些实施例中,在根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句之前,所述方法还包括:
在所述可视化数据智能平台中选择添加所述关联信息。
在本申请一些实施例中,所述关联数据表是基于数据表关联映射添加到所述可视化数据智能平台中的,所述数据表关联映射是根据所述可视化数据智能平台与所述分布式内存数据库的连接名、所述连接器名和所述表名确定的。
相应的,本发明还提供了一种跨源异构数据智能可视化分析展示设备,应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,所述设备包括:
第一创建模块,用于当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源;
第二创建模块,用于在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接;
第一生成模块,用于根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句;
第二生成模块,用于根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表;
展示模块,用于根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示;
其中,所述关联信息包括关联数据表,关联字段和关联类型。
相应的,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如上所述的跨源异构数据智能可视化分析展示方法。
通过应用以上技术方案,在包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,当检测到对目标异构数据的可视化展示指令时,在分布式内存数据库中通过JDBC驱动创建与目标异构数据所在各目标数据源对应的连接器,并通过各连接器连接分布式内存数据库和各目标数据源;在可视化数据智能平台中通过分布式内存数据库的python驱动和SQLAlchemy框架创建可视化数据智能平台与分布式内存数据库的连接;根据与目标异构数据对应的关联信息在可视化数据智能平台中生成SQL建表语句;根据SQL建表语句在分布式内存数据库中通过各连接器从目标数据源获取目标异构数据,并生成多表关联的目标数据表;根据目标数据表在可视化数据智能平台中对目标异构数据进行可视化展示,在不改变生产数据库的数据和不影响业务代码的基础上实现跨源异构数据智能可视化分析展示,提高了数据处理效率和安全性,同时避免了接口改造引起的成本提高。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地 ,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例提出的一种跨源异构数据智能可视化分析展示方法的流程示意图;
图2示出了本发明实施例中包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***的结构示意图;
图3示出了本发明实施例提出的一种跨源异构数据智能可视化分析展示设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种跨源异构数据智能可视化分析展示方法,应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,如图1所示,所述方法包括以下步骤:
步骤S101,当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源。
本实施例中,目标异构数据包括至少两个分别存储在不同异构数据源的异构数据,举例来说,目标异构数据包括tableA.c1字段和tableB.c1字段,tableA.c1字段存储在MySQL数据库中的数据表dbA.tableA,而tableB.c1字段存储在PostgreSQL数据库中的数据表dbB.tableB。
本实施例的方法应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,当需要对目标异构数据进行可视化展示时,如饼图展示、直方图展示等,用户可在可视化数据智能平台的前端输入相应的可视化展示指令,在检测到该可视化展示指令时,在分布式内存数据库中通过JDBC(Java Database Connectivity,Java数据库连接)驱动创建与目标异构数据所在各目标数据源对应的连接器,各连接器是用于连接分布式内存数据库与各目标数据源的进程,通过各连接器可连接分布式内存数据库和各目标数据源。
为了进一步提高数据处理效率,在本申请优选的实施例中,所述分布式内存数据库采用全内存分布式MPP架构,MPP (Massively Parallel Processing),即大规模并行处理。
步骤S102,在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接。
本实施例中,通过分布式内存数据库的python驱动和SQLAlchemy框架创建可视化数据智能平台与所述分布式内存数据库的连接。
SQLAlchemy 是 Python 中一个通过 ORM 操作数据库的框架。SQLAlchemy对象关系映射器提供了一种方法,用于将用户定义的Python类与数据库表相关联,并将这些类(对象)的实例与其对应表中的行相关联。它包括一个透明地同步对象及其相关行之间状态的所有变化的***,称为工作单元,以及根据用户定义的类及其定义的彼此之间的关系表达数据库查询的***。
步骤S103,根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句。
本实施例中,所述关联信息包括关联数据表,关联字段和关联类型,举例来说,若目标异构数据包括上述的tableA.c1字段和tableB.c1字段,关联数据表为数据表dbA.tableA和数据表dbB.tableB,关联字段为tableA.c1字段和tableB.c1字段,关联类型可以为内连接。
根据该关联信息可在可视化数据智能平台中生成SQL建表语句,并可将该SQL建表语句传递给分布式内存数据库,在本申请具体的应用场景中,可按照create table <table_name1_table_name2> as select * from <table_name1> <join_method> <table_name2> on <column1>=<column2>的方式拼接SQL建表语句。
为了提高数据处理效率,在本申请一些实施例中,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在目标数据源对应的连接器之后,所述方法还包括:
基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中。
本实施例中,在创建连接器之后,对各连接器进行命名,基于连接器名、数据源名和关联数据表的表名将关联数据表的表名信息映射到分布式内存数据库中。
为了提高数据处理效率,在本申请一些实施例中,基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中,具体为:
将所述连接器名作为所述分布式内存数据库的Catalog,将所述数据源名作为所述分布式内存数据库的Schema,将所述表名作为所述分布式内存数据库的Table;
基于Catalog.Schema.Table将所述表名信息映射到所述分布式内存数据库中。
本实施例中,举例来说,上述的数据表dbA.tableA对应的连接器名为connA,数据表dbA.tableA对应的数据源名为MySQL,数据表dbA.tableA的表名为tableA。因此,对于数据表dbA.tableA,将connA作为分布式内存数据库的Catalog,将MySQL作为分布式内存数据库的Schema,将tableA作为分布式内存数据库的Table。对于数据表dbB.tableB,以此类推。
为了可靠的创建SQL建表语句,在本申请一些实施例中,在根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句之前,所述方法还包括:
在所述可视化数据智能平台中选择添加所述关联信息。
本实施中,在可视化数据智能平台可从多种关联信息中选择与目标异构数据对应的关联信息,可在可视化数据智能平台的前端选择添加该关联信息。
为了提高数据处理效率,在本申请一些实施例中,所述关联数据表是基于数据表关联映射添加到所述可视化数据智能平台中的,所述数据表关联映射是根据所述可视化数据智能平台与所述分布式内存数据库的连接名、所述连接器名和所述表名确定的。
本实施例中,基于数据表关联映射将关联数据表添加到可视化数据智能平台中,数据表关联映射由可视化数据智能平台与分布式内存数据库的连接名、连接器名和表名确定,举例来说,对于上述数据表dbA.tableA,可视化数据智能平台与分布式内存数据库的连接名为rdp1,连接器名为connA,表名为tableA,在可视化数据智能平台中选择添加rdp1.connA.tableA。
步骤S104,根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表。
本实施例中,在分布式内存数据库中执行SQL建表语句,通过各连接器从目标数据源获取目标异构数据,并生成多表关联的目标数据表。举例来说,对于上述数据表dbA.tableA和数据表dbB.tableB,tableA和tableB关联生成目标数据表,目标数据表可命名为tableA_tableB。
为了提高数据处理效率,在本申请一些实施例中,根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表,具体为:
将所述SQL建表语句拆分为多条单表查询语句;
依次按照各所述单表查询语句通过各所述连接器将所述目标异构数据从各所述目标数据源抽取到所述分布式内存数据库中,并在分布式内存数据库中生成所述目标数据表。
本实施例中,先将SQL建表语句拆分为多条单表查询语句,分别按顺序将数据按照单表查询语句从目标数据源抽取至分布式内存数据库中,再在分布式内存数据库中生成目标数据表。
需要说明的是,以上实施例的方案仅为本申请所提出的一种具体实现方案,其他根据SQL建表语句在分布式内存数据库中通过各连接器从目标数据源获取目标异构数据,并生成多表关联的目标数据表的方式均属于本申请的保护范围。
步骤S105,根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示。
为了可靠的对目标异构数据进行可视化展示,在本申请一些实施例中,根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示,具体为:
基于SQLAlchemy框架将所述关联数据表与所述目标数据表进行映射,并将所述目标数据表的目标表名记录在元数据库中;
在所述可视化数据智能平台中选择所述目标表名,并基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据;
将所述可视化数据返回前端,以对所述目标异构数据进行可视化展示。
本实施例中,先基于SQLAlchemy框架将关联数据表与目标数据表进行映射,将目标数据表的目标表名(如tableA_tableB)记录在元数据库中,然后再可视化数据智能平台中选择目标表名,并基于目标表名从分布式内存数据库中获取对应的可视化数据,再将可视化数据返回前端进行展示。
为了可靠的对目标异构数据进行可视化展示,在本申请一些实施例中,基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据,具体为:
基于所述目标表名生成SQL语句;
根据所述SQL语句到所述分布式内存数据库中进行查询,根据查询结果获取所述可视化数据。
本实施例中,先基于目标表名生成SQL语句,将SQL语句传递到分布式内存数据库中进行查询,并将查询结果作为可视化数据。
可以理解的是,步骤S101和步骤S102的顺序可以互换。
如图2所示为一实施例中包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***的结构示意图,图中,可视化数据智能平台通过python驱动和SQLAlchemy框架连接分布式内存数据库,分布式内存数据库中包括SQL解析器和优化器、以及MPP执行引擎,分布式内存数据库通过连接器连接各数据源,连接器包括MOXE连接器、RDBMS连接器、JDBC连接器、Hadoop连接器,数据源包括MOXE数据存储、RDBMS数据存储、JDBC兼容数据存储、HIVE及HDFS。
通过应用以上技术方案,在包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,当检测到对目标异构数据的可视化展示指令时,在分布式内存数据库中通过JDBC驱动创建与目标异构数据所在各目标数据源对应的连接器,并通过各连接器连接分布式内存数据库和各目标数据源;在可视化数据智能平台中通过分布式内存数据库的python驱动和SQLAlchemy框架创建可视化数据智能平台与分布式内存数据库的连接;根据与目标异构数据对应的关联信息在可视化数据智能平台中生成SQL建表语句;根据SQL建表语句在分布式内存数据库中通过各连接器从目标数据源获取目标异构数据,并生成多表关联的目标数据表;根据目标数据表在可视化数据智能平台中对目标异构数据进行可视化展示,在不改变生产数据库的数据和不影响业务代码的基础上实现跨源异构数据智能可视化分析展示,提高了数据处理效率和安全性,同时避免了接口改造引起的成本提高。
为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。
在本实施例中,使用MySQL数据库和PostgreSQL数据库作为数据源,MySQL数据库中有数据表dbA.tableA,PostgreSQL数据库中有数据表dbB.tableB。对这两张表的tableA.c1字段和tableB.c1字段进行内连接,并实现一个饼图的展示。具体步骤如下:
1. 在分布式全内存数据库中创建MySQL 和PostgreSQL的连接器,分别名为connA和connB,将分布式全内存数据库与上述两个异构数据源MySQL 和PostgreSQL分别同时进行连接,代码如下:
create connector connA type mysql with database=’dbA’, host=’127.0.0.1’, port=’3306’, user=’root’, password=’root’ NODE * CATALOG * SCHEMA* TABLE *;
create connector connB type postgres with database=’dbB’, host=’127.0.0.1’, port=’5432, user=’root’, password=’root’ NODE * CATALOG * SCHEMA* TABLE *;
2. 在可视化数据智能平台中通过SQLAlchemy URI连接到分布式全内存数据库,连接名为rdp1。
3. 在可视化数据智能平台中选择添加rdp1.connA.tableA 和rdp1.connB.tableB, 建立数据表关联映射;其中,关联方式为内连接,关联字段为tableA.c1和tableB.c1。
4. 可视化数据智能平台在接收到前端传来的关联信息后,创建一个SQL建表语句,该SQL建表语句如下:
create table tableA_tableB as select * from connA.dbA.tableA innerjoin connB.dbB.tableB on connA.tableA.c1=connB.tableB.c1;
5. 通过分布式全内存数据库的python 驱动将上述SQL建表语句传给分布式全内存数据库,从而在该分布式全内存数据库的内存库中创建一个名为tableA_tableB的数据表,作为多表关联的目标数据表。
6. 可视化数据智能平台通过SQLAlchemy获取新创建的目标数据表的目标表名,并记录在元数据库中。
7. 在可视化数据智能平台的界面中选择tableA_tableB 表,并生成计算字段c2个数的饼图。在前端配置好后,会传递如下的SQL语句到分布式全内存数据库中进行查询,并将查询结果作为可视化数据返回。
SQL语句如下:
select c2 as c2, count(*) as count from rdp.tableA_tableB group by c2order by count DESC;
与本申请实施例中的一种跨源异构数据智能可视化分析展示方法相对应,本申请实施例还提出了一种跨源异构数据智能可视化分析展示设备,应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,如图3所示,所述设备包括:
第一创建模块301,用于当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源;
第二创建模块302,用于在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接;
第一生成模块303,用于根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句;
第二生成模块304,用于根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表;
展示模块305,用于根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示;
其中,所述关联信息包括关联数据表、关联字段和关联类型。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (9)

1.一种跨源异构数据智能可视化分析展示方法,其特征在于,应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,所述方法包括:当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源;在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接;根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句;根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表;根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示;其中,所述关联信息包括关联数据表、关联字段和关联类型;
根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示,具体为:基于SQLAlchemy框架将所述关联数据表与所述目标数据表进行映射,并将所述目标数据表的目标表名记录在元数据库中;在所述可视化数据智能平台中选择所述目标表名,并基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据;将所述可视化数据返回前端,以对所述目标异构数据进行可视化展示。
2.如权利要求1所述的方法,其特征在于,基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据,具体为:基于所述目标表名生成SQL语句;根据所述SQL语句到所述分布式内存数据库中进行查询,根据查询结果获取所述可视化数据。
3.如权利要求1所述的方法,其特征在于,根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表,具体为:将所述SQL建表语句拆分为多条单表查询语句;依次按照各所述单表查询语句通过各所述连接器将所述目标异构数据从各所述目标数据源抽取到所述分布式内存数据库中,并在分布式内存数据库中生成所述目标数据表。
4.如权利要求1所述的方法,其特征在于,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在目标数据源对应的连接器之后,所述方法还包括:基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中。
5.如权利要求4所述的方法,其特征在于,基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中,具体为:将所述连接器名作为所述分布式内存数据库的Catalog,将所述数据源名作为所述分布式内存数据库的Schema,将所述表名作为所述分布式内存数据库的Table;基于Catalog.Schema.Table将所述表名信息映射到所述分布式内存数据库中。
6.如权利要求4所述的方法,其特征在于,在根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句之前,所述方法还包括:在所述可视化数据智能平台中选择添加所述关联信息。
7.如权利要求6所述的方法,其特征在于,所述关联数据表是基于数据表关联映射添加到所述可视化数据智能平台中的,所述数据表关联映射是根据所述可视化数据智能平台与所述分布式内存数据库的连接名、所述连接器名和所述表名确定的。
8.一种跨源异构数据智能可视化分析展示设备,其特征在于,应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的***中,所述设备包括:第一创建模块,用于当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源;第二创建模块,用于在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接;第一生成模块,用于根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句;第二生成模块,用于根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表;展示模块,用于根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示;其中,所述关联信息包括关联数据表、关联字段和关联类型;
根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示,具体为:基于SQLAlchemy框架将所述关联数据表与所述目标数据表进行映射,并将所述目标数据表的目标表名记录在元数据库中;在所述可视化数据智能平台中选择所述目标表名,并基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据;将所述可视化数据返回前端,以对所述目标异构数据进行可视化展示。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-7任一项所述的跨源异构数据智能可视化分析展示方法。
CN202111074736.XA 2021-09-14 2021-09-14 一种跨源异构数据智能可视化分析展示方法和设备 Active CN113901135B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202111074736.XA CN113901135B (zh) 2021-09-14 2021-09-14 一种跨源异构数据智能可视化分析展示方法和设备
US18/265,537 US11921742B2 (en) 2021-09-14 2022-06-10 Method and apparatus for intelligent visual analysis and display of cross-source heterogeneous data
PCT/CN2022/098023 WO2023040373A1 (zh) 2021-09-14 2022-06-10 一种跨源异构数据智能可视化分析展示方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111074736.XA CN113901135B (zh) 2021-09-14 2021-09-14 一种跨源异构数据智能可视化分析展示方法和设备

Publications (2)

Publication Number Publication Date
CN113901135A CN113901135A (zh) 2022-01-07
CN113901135B true CN113901135B (zh) 2022-07-19

Family

ID=79028236

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111074736.XA Active CN113901135B (zh) 2021-09-14 2021-09-14 一种跨源异构数据智能可视化分析展示方法和设备

Country Status (3)

Country Link
US (1) US11921742B2 (zh)
CN (1) CN113901135B (zh)
WO (1) WO2023040373A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113901135B (zh) 2021-09-14 2022-07-19 北京柏睿数据技术股份有限公司 一种跨源异构数据智能可视化分析展示方法和设备
CN115422167B (zh) * 2022-09-27 2023-02-17 北京柏睿数据技术股份有限公司 一种跨数据源数据库视图可视化构建方法及***
CN116303730B (zh) * 2023-05-18 2023-08-01 安徽泛联信息科技有限公司 一种数据可视化平台用异步数据源连接***

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9411864B2 (en) * 2008-08-26 2016-08-09 Zeewise, Inc. Systems and methods for collection and consolidation of heterogeneous remote business data using dynamic data handling
US8438177B2 (en) * 2008-12-23 2013-05-07 Apple Inc. Graphical result set representation and manipulation
CN105205085A (zh) * 2014-06-30 2015-12-30 中兴通讯股份有限公司 一种海量数据的多维分析方法及装置
US9805136B2 (en) * 2014-09-30 2017-10-31 International Business Machines Corporation Virtualizing schema relations over a single database relation
CN104899295B (zh) * 2015-06-09 2018-08-03 苏州国云数据科技有限公司 一种异构数据源数据关联分析方法
CN107066499A (zh) * 2016-12-30 2017-08-18 江苏瑞中数据股份有限公司 面向异构存储多源数据管理及可视化***的数据查询方法
US10970049B2 (en) * 2018-01-31 2021-04-06 Palantir Technologies Inc. Code execution and data processing pipeline
CN110032590A (zh) 2019-04-15 2019-07-19 重庆天蓬网络有限公司 一种数据可视化***、方法、服务器及存储介质
CN111857659A (zh) 2020-06-30 2020-10-30 太极计算机股份有限公司 一种异构数据源拖拽的数据可视化设计平台
CN113901135B (zh) 2021-09-14 2022-07-19 北京柏睿数据技术股份有限公司 一种跨源异构数据智能可视化分析展示方法和设备

Also Published As

Publication number Publication date
US20230394061A1 (en) 2023-12-07
WO2023040373A1 (zh) 2023-03-23
US11921742B2 (en) 2024-03-05
CN113901135A (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
CN113901135B (zh) 一种跨源异构数据智能可视化分析展示方法和设备
US8655861B2 (en) Query metadata engine
US20160092527A1 (en) Data processing apparatus and data mapping method thereof
US20230177078A1 (en) Conversational Database Analysis
US20210256079A1 (en) Adapting database queries for data virtualization over combined database stores
US10042849B2 (en) Simplifying invocation of import procedures to transfer data from data sources to data targets
CN104573022A (zh) 一种HBase的数据查询方法及装置
US9824128B1 (en) System for performing single query searches of heterogeneous and dispersed databases
US11494395B2 (en) Creating dashboards for viewing data in a data storage system based on natural language requests
US11461333B2 (en) Vertical union of feature-based datasets
US11748264B1 (en) Approximate unique count
Afzal et al. OWLMap: fully automatic mapping of ontology into relational database schema
CN114218218A (zh) 基于数据仓库的数据处理方法、装置、设备及存储介质
CN110674163A (zh) 一种基于bs构架的异构数据查询***及其方法
CN113934750A (zh) 基于编译方式的数据血缘关系分析方法
CN113918605A (zh) 数据查询方法、装置、设备以及计算机存储介质
US10901811B2 (en) Creating alerts associated with a data storage system based on natural language requests
AGGOUNE et al. A method for transforming object-relational to document-oriented databases
US20180060404A1 (en) Schema abstraction in data ecosystems
CN113515564A (zh) 基于j2ee的数据访问方法、装置、设备及存储介质
US20160179857A1 (en) Database joins using uncertain criteria
CN111125045B (zh) 一种轻量级etl处理平台
CN111984745A (zh) 数据库字段动态扩展方法、装置、设备及存储介质
CN103902651A (zh) 一种基于MongoDB的云端代码查询方法与装置
CN114860851A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 701, floor 7, building 3, courtyard 6, lizexi street, Chaoyang District, Beijing 100102

Applicant after: Beijing birui Data Technology Co.,Ltd.

Address before: Room 701, floor 7, building 3, courtyard 6, lizexi street, Chaoyang District, Beijing 100102

Applicant before: WEIXUN BORAY DATA TECHNOLOGY (BEIJING) Co.,Ltd.

GR01 Patent grant
GR01 Patent grant