CN113901135A - 一种跨源异构数据智能可视化分析展示方法和设备 - Google Patents
一种跨源异构数据智能可视化分析展示方法和设备 Download PDFInfo
- Publication number
- CN113901135A CN113901135A CN202111074736.XA CN202111074736A CN113901135A CN 113901135 A CN113901135 A CN 113901135A CN 202111074736 A CN202111074736 A CN 202111074736A CN 113901135 A CN113901135 A CN 113901135A
- Authority
- CN
- China
- Prior art keywords
- data
- target
- memory database
- distributed memory
- visual
- 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
Links
- 230000000007 visual effect Effects 0.000 title claims abstract description 112
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000013507 mapping Methods 0.000 claims description 20
- 238000012800 visualization Methods 0.000 claims description 9
- 238000004519 manufacturing process Methods 0.000 abstract description 7
- 230000000875 corresponding effect Effects 0.000 description 30
- 238000012545 processing Methods 0.000 description 9
- 238000013079 data visualisation Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 101150072471 rdp1 gene Proteins 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (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 (10)
1.一种跨源异构数据智能可视化分析展示方法,其特征在于,应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的系统中,所述方法包括:
当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源;
在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接;
根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句;
根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表;
根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示;
其中,所述关联信息包括关联数据表、关联字段和关联类型。
2.如权利要求1所述的方法,其特征在于,根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示,具体为:
基于SQLAlchemy框架将所述关联数据表与所述目标数据表进行映射,并将所述目标数据表的目标表名记录在元数据库中;
在所述可视化数据智能平台中选择所述目标表名,并基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据;
将所述可视化数据返回前端,以对所述目标异构数据进行可视化展示。
3.如权利要求2所述的方法,其特征在于,基于所述目标表名从所述分布式内存数据库中获取与所述目标数据表对应的可视化数据,具体为:
基于所述目标表名生成SQL语句;
根据所述SQL语句到所述分布式内存数据库中进行查询,根据查询结果获取所述可视化数据。
4.如权利要求1所述的方法,其特征在于,根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表,具体为:
将所述SQL建表语句拆分为多条单表查询语句;
依次按照各所述单表查询语句通过各所述连接器将所述目标异构数据从各所述目标数据源抽取到所述分布式内存数据库中,并在分布式内存数据库中生成所述目标数据表。
5.如权利要求1所述的方法,其特征在于,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在目标数据源对应的连接器之后,所述方法还包括:
基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中。
6.如权利要求5所述的方法,其特征在于,基于连接器名、所述目标数据源的数据源名和所述关联数据表的表名将所述关联数据表的表名信息映射到所述分布式内存数据库中,具体为:
将所述连接器名作为所述分布式内存数据库的Catalog,将所述数据源名作为所述分布式内存数据库的Schema,将所述表名作为所述分布式内存数据库的Table;
基于Catalog.Schema.Table将所述表名信息映射到所述分布式内存数据库中。
7.如权利要求5所述的方法,其特征在于,在根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句之前,所述方法还包括:
在所述可视化数据智能平台中选择添加所述关联信息。
8.如权利要求7所述的方法,其特征在于,所述关联数据表是基于数据表关联映射添加到所述可视化数据智能平台中的,所述数据表关联映射是根据所述可视化数据智能平台与所述分布式内存数据库的连接名、所述连接器名和所述表名确定的。
9.一种跨源异构数据智能可视化分析展示设备,其特征在于,应用于包括可视化数据智能平台、分布式内存数据库和多个异构数据源的系统中,所述设备包括:
第一创建模块,用于当检测到对目标异构数据的可视化展示指令时,在所述分布式内存数据库中通过JDBC驱动创建与所述目标异构数据所在各目标数据源对应的连接器,并通过各所述连接器连接所述分布式内存数据库和各所述目标数据源;
第二创建模块,用于在所述可视化数据智能平台中通过所述分布式内存数据库的python驱动和SQLAlchemy框架创建所述可视化数据智能平台与所述分布式内存数据库的连接;
第一生成模块,用于根据与所述目标异构数据对应的关联信息在所述可视化数据智能平台中生成SQL建表语句;
第二生成模块,用于根据所述SQL建表语句在所述分布式内存数据库中通过各所述连接器从所述目标数据源获取所述目标异构数据,并生成多表关联的目标数据表;
展示模块,用于根据所述目标数据表在所述可视化数据智能平台中对所述目标异构数据进行可视化展示;
其中,所述关联信息包括关联数据表、关联字段和关联类型。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-8任一项所述的跨源异构数据智能可视化分析展示方法。
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 true CN113901135A (zh) | 2022-01-07 |
CN113901135B 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) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115422167A (zh) * | 2022-09-27 | 2022-12-02 | 北京柏睿数据技术股份有限公司 | 一种跨数据源数据库视图可视化构建方法及系统 |
WO2023040373A1 (zh) * | 2021-09-14 | 2023-03-23 | 北京柏睿数据技术股份有限公司 | 一种跨源异构数据智能可视化分析展示方法和设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116303730B (zh) * | 2023-05-18 | 2023-08-01 | 安徽泛联信息科技有限公司 | 一种数据可视化平台用异步数据源连接系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899295A (zh) * | 2015-06-09 | 2015-09-09 | 苏州国云数据科技有限公司 | 一种异构数据源数据关联分析方法 |
CN105205085A (zh) * | 2014-06-30 | 2015-12-30 | 中兴通讯股份有限公司 | 一种海量数据的多维分析方法及装置 |
CN107066499A (zh) * | 2016-12-30 | 2017-08-18 | 江苏瑞中数据股份有限公司 | 面向异构存储多源数据管理及可视化系统的数据查询方法 |
Family Cites Families (7)
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 |
US9805136B2 (en) * | 2014-09-30 | 2017-10-31 | International Business Machines Corporation | Virtualizing schema relations over a single database relation |
EP3522004A3 (en) * | 2018-01-31 | 2019-11-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 | 北京柏睿数据技术股份有限公司 | 一种跨源异构数据智能可视化分析展示方法和设备 |
-
2021
- 2021-09-14 CN CN202111074736.XA patent/CN113901135B/zh active Active
-
2022
- 2022-06-10 WO PCT/CN2022/098023 patent/WO2023040373A1/zh unknown
- 2022-06-10 US US18/265,537 patent/US11921742B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105205085A (zh) * | 2014-06-30 | 2015-12-30 | 中兴通讯股份有限公司 | 一种海量数据的多维分析方法及装置 |
CN104899295A (zh) * | 2015-06-09 | 2015-09-09 | 苏州国云数据科技有限公司 | 一种异构数据源数据关联分析方法 |
CN107066499A (zh) * | 2016-12-30 | 2017-08-18 | 江苏瑞中数据股份有限公司 | 面向异构存储多源数据管理及可视化系统的数据查询方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023040373A1 (zh) * | 2021-09-14 | 2023-03-23 | 北京柏睿数据技术股份有限公司 | 一种跨源异构数据智能可视化分析展示方法和设备 |
US11921742B2 (en) | 2021-09-14 | 2024-03-05 | Beijing Borrui Data Technology Co., Ltd. | Method and apparatus for intelligent visual analysis and display of cross-source heterogeneous data |
CN115422167A (zh) * | 2022-09-27 | 2022-12-02 | 北京柏睿数据技术股份有限公司 | 一种跨数据源数据库视图可视化构建方法及系统 |
CN115422167B (zh) * | 2022-09-27 | 2023-02-17 | 北京柏睿数据技术股份有限公司 | 一种跨数据源数据库视图可视化构建方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113901135B (zh) | 2022-07-19 |
US11921742B2 (en) | 2024-03-05 |
WO2023040373A1 (zh) | 2023-03-23 |
US20230394061A1 (en) | 2023-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113901135B (zh) | 一种跨源异构数据智能可视化分析展示方法和设备 | |
CN109299102B (zh) | 一种基于Elastcisearch的HBase二级索引系统及方法 | |
US10346397B2 (en) | System and method for querying data sources | |
US8655861B2 (en) | Query metadata engine | |
US20160092527A1 (en) | Data processing apparatus and data mapping method thereof | |
US11494395B2 (en) | Creating dashboards for viewing data in a data storage system based on natural language requests | |
CN104573022A (zh) | 一种HBase的数据查询方法及装置 | |
US10901811B2 (en) | Creating alerts associated with a data storage system based on natural language requests | |
WO2016046658A1 (en) | Simplifying invocation of import procedures to transfer data from data sources to data targets | |
US11461333B2 (en) | Vertical union of feature-based datasets | |
CN111984745B (zh) | 数据库字段动态扩展方法、装置、设备及存储介质 | |
Afzal et al. | OWLMap: fully automatic mapping of ontology into relational database schema | |
CN114218218A (zh) | 基于数据仓库的数据处理方法、装置、设备及存储介质 | |
CN105975489A (zh) | 一种基于元数据的在线sql代码补全方法 | |
CN110674163A (zh) | 一种基于bs构架的异构数据查询系统及其方法 | |
CN113779349A (zh) | 数据检索系统、装置、电子设备和可读存储介质 | |
CN113515564A (zh) | 基于j2ee的数据访问方法、装置、设备及存储介质 | |
CN113918605A (zh) | 数据查询方法、装置、设备以及计算机存储介质 | |
AGGOUNE et al. | A method for transforming object-relational to document-oriented databases | |
US9984108B2 (en) | Database joins using uncertain criteria | |
CN111125045B (zh) | 一种轻量级etl处理平台 | |
CN115481196A (zh) | 一种实现数据库数据同步的方法和系统 | |
CN114860851A (zh) | 数据处理方法、装置、设备及存储介质 | |
Gašpar et al. | Integrating Two Worlds: Relational and NoSQL | |
CN113672639B (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 |