一种基于JDBC的数据库直查方法、装置及系统制造方法及图纸

技术编号:23315101 阅读:26 留言:0更新日期:2020-02-11 17:47
本发明专利技术公开了一种基于JDBC的数据库直查方法、装置及系统,首先用户通过平台在数据集中通过数据处理节点操作数据源。系统会根据用户配置的数据源及处理节点动态生成适配各个关系型数据库的sql语句然后系统采用jdbc形式将sql提交到数据库,由数据库解析,处理并返回数据,中间过程所产生的内存消耗远远低于目前内存计算型查询引擎,且效率往往是内存计算型查询引擎的数倍。解决了Presto,Impala可高效对Hive,HBase等大数据产品进行快速检索,但是对传统关系型数据库效率低下的问题。

A method, device and system of database direct query based on JDBC

【技术实现步骤摘要】
一种基于JDBC的数据库直查方法、装置及系统
本专利技术涉及数据库领域,特别涉及一种基于JDBC的数据库直查方法、装置及系统。
技术介绍
数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则查询的效率会很低。当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。在数据库的发展历史上,数据库先后经历了层次数据库、网状数据库和关系数据库等各个阶段的发展,数据库技术在各个方面的快速的发展。特别是关系型数据库已经成为目前数据库产品中最重要的一员,80年代以来,几乎所有的数据库厂商新出的数据库产品都支持关系型数据库,即使一些非关系数据库产品也几乎都有支持关系数据库的接口。这主要是传统的关系型数据库可以比较好的解决管理和存储关系型数据的问题。现有的系统如申请号:CN201710009824.9名称为一种统计数据的即席查询方法及系统所述,采用Presto,Impala等(内存计算型)对数据分析系统进行查询处理,Presto,Impala可高效对Hive,HBase等大数据产品进行快速检索,但是对传统关系型数据库效率低下。
技术实现思路
本专利技术的目的在于:提供了一种基于JDBC的数据库直查方法、装置及系统,解决了现有的系统采用Presto,Impala等对数据分析系统进行查询处理,Presto,Impala可高效对Hive,HBase等大数据产品进行快速检索,但是对传统关系型数据库效率低下的问题。本专利技术采用的技术方案如下:一种基于JDBC的数据库直查方法,包括数据库和数据分析平台,还包括以下步骤:S1、用户通过数据分析平台对数据源进行操作;S2、数据分析平台根据用户的操作生成对应的SQL语句;S3、数据分析平台将步骤S2生成的SQL语句提交到数据库;S4、数据库对数据分析平台提交的SQL语句进行解析,处理后返回数据到数据分析平台。本方案区别于现有使用Presto引擎进行数据查询,省去了Presto集群和对Presto引擎进行操作,减小了服务器负担,基于JDBC的数据分析平台数据直查功能,用户在使用数据分析平台对数据源进行操作的过程产生不同数据库SQL,平台通过JDBC形式将SQL提交到客户数据库,利用数据库对SQL良好的处理能力实现应用层减少内存占用,快速检索数据的能力。进一步的,所述步骤S1中用户通过数据分析平台在数据集中通过数据处理节点操作数据源。进一步的,所述步骤S2中,数据分析平台根据用户的操作生成对应的SQL方言语句。进一步的,所述SQL方言语句的生成包括以下步骤:S5、数据分析平台上预录入数据库类型和与数据库类型匹配的SQL方言;S6、步骤S1中用户通过数据分析平台对数据源进行操作时,数据分析平台根据数据源可以判断需要查询的数据库类型;S7、数据分析平台根据需要查询的数据库类型调取与数据库类型匹配的SQL方言生成对应的SQL方言语句。采用上述方法,由于数据库类型较多,对应的SQL方言也包括mysql、hivesql、sparksql和oracle等方言,由于本方案省略了Presto集群而由数据分析平台直接发送对应的数据库进行查询,因此数据分析平台需要生成与数据库匹配的SQL方言,本方案采取上述方案生成与数据库匹配的SQL方言,首先,在数据分析平台上录入客户指定的或现有的所有数据库类型,由于SQL语句是结构化查询语言,均包括数据查询语言(DQL)、数据操作语言(DML)、事务控制语言(TCL)、数据控制语言(DCL)、数据定义语言(DDL)和指针控制语言(CCL)6类查询语言,因此,还在数据分析平台上录入与数据库匹配的6类查询语言,步骤S1中用户通过数据分析平台对数据源进行操作时,数据分析平台根据数据源可以判断需要查询的数据库类型,然后数据分析平台根据需要查询的数据库类型及用户的操作调取与数据库类型匹配的6类查询语言生成对应的SQL方言语句。进一步的,所述步骤S3中,数据分析平台采用JDBC形式将步骤S2生成的SQL语句提交到数据库。一种基于JDBC的数据库直查装置,包括:存储器,用于存储可执行指令;多核处理器,用于执行所述存储器中存储的可执行指令,装载有数据分析平台实现上述的一种基于JDBC的数据库直查方法。进一步的,还包括用于展示数据库返回数据的显示设备。一种基于JDBC的数据库直查系统,包括上述的数据库直查装置,还包括装载有上述数据库的装置。综上所述,由于采用了上述技术方案,本专利技术的有益效果是:1.本专利技术一种基于JDBC的数据库直查方法、装置及系统,可以减少查询引擎服务器数量,以前往往为了提升查询效率和增加查询内存都是多台服务器进行presto集群,降低应用内存消耗,提高查询效率,提升用户感知;2.本专利技术一种基于JDBC的数据库直查方法、装置及系统,解决了现有的系统采用Presto,Impala等对数据分析系统进行查询处理,Presto,Impala可高效对Hive,HBase等大数据产品进行快速检索,但是对传统关系型数据库效率低下的问题。3.本专利技术一种基于JDBC的数据库直查方法、装置及系统,相比于现有方案,节约了系统资源,简化了步骤,加快了查询速度。附图说明本专利技术将通过例子并参照附图的方式说明,其中:图1是本专利技术的计算流程示意图;图2是现有数据库查询计算流程示意图;图3是现有本方案与现有技术相比查询时间和系统资源占用对比图。具体实施方式本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。为了使本专利技术的目的、技术方案和优点更加清楚,下面将结合图1至图3对本专利技术作进一步地详细描述,所描述的实施例不应视为对本专利技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。除非另有定义,本文所使用的所有的技术和科学术语与属于本专利技术的
的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本专利技术实施例的目的,不是旨在限制本专利技术。对本专利技术实施例进行进一步详细说明之前,对本专利技术实施例中涉及的名词和术语进行说明,本专利技术实施例中涉及的名词和术语适用于如下的解释。JDBC:(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。SQL:结构化查询语言(Structur本文档来自技高网
...

【技术保护点】
1.一种基于JDBC的数据库直查方法,包括数据库和数据分析平台,其特征在于:还包括以下步骤:/nS1、用户通过数据分析平台对数据源进行操作;/nS2、数据分析平台根据用户的操作生成对应的SQL语句;/nS3、数据分析平台将步骤S2生成的SQL语句提交到数据库;/nS4、数据库对数据分析平台提交的SQL语句进行解析,处理后返回数据到数据分析平台。/n

【技术特征摘要】
1.一种基于JDBC的数据库直查方法,包括数据库和数据分析平台,其特征在于:还包括以下步骤:
S1、用户通过数据分析平台对数据源进行操作;
S2、数据分析平台根据用户的操作生成对应的SQL语句;
S3、数据分析平台将步骤S2生成的SQL语句提交到数据库;
S4、数据库对数据分析平台提交的SQL语句进行解析,处理后返回数据到数据分析平台。


2.根据权利要求1所述的一种基于JDBC的数据库直查方法,其特征在于:所述步骤S1中用户通过数据分析平台在数据集中通过数据处理节点操作数据源。


3.根据权利要求1所述的一种基于JDBC的数据库直查方法,其特征在于:所述步骤S2中,数据分析平台根据用户的操作生成对应的SQL方言语句。


4.根据权利要求3所述的一种基于JDBC的数据库直查方法,其特征在于:所述SQL方言语句的生成包括以下步骤:
S5、数据分析平台上预录入数据库类型和与数据库类型匹配的SQL方言;
S6、步骤S...

【专利技术属性】
技术研发人员:王纯斌赖文文其他发明人请求不公开姓名
申请(专利权)人:成都四方伟业软件股份有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1