CN117539912A - 一种加速异构数据源访问的系统、方法及设备 - Google Patents
一种加速异构数据源访问的系统、方法及设备 Download PDFInfo
- Publication number
- CN117539912A CN117539912A CN202311582065.7A CN202311582065A CN117539912A CN 117539912 A CN117539912 A CN 117539912A CN 202311582065 A CN202311582065 A CN 202311582065A CN 117539912 A CN117539912 A CN 117539912A
- Authority
- CN
- China
- Prior art keywords
- data source
- acceleration
- sql
- equipment
- acceleration equipment
- 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
- 238000000034 method Methods 0.000 title claims abstract description 17
- 230000001133 acceleration Effects 0.000 claims abstract description 62
- 239000000872 buffer Substances 0.000 claims description 29
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 8
- 230000010354 integration Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- 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/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- 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/258—Data format conversion from or to a database
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种加速异构数据源访问的系统、方法及设备,系统包括:主机端、数据源服务器和加速设备;所述主机端与所述加速设备通过网络连接;所述数据源服务器与所述主机端通过网络连接;所述加速设备与所述数据源服务器通过网络连接;方法为:主机端直接对异构数据源发送SQL语句访问;利用加速设备增加SQL语句执行的并行度;利用加速设备或主机端返回结果;设备为基于CXL协议中,三个子协议组合的不同类设备;本发明对跨不同数据源的数据查询语句进行分解组合,利用CXL协议设备主动发起查询,增加并行查询机会,提高跨不同数据源查询数据的性能,又降低编程难度,由此并降低成本。
Description
技术领域
本发明涉及加速异构数据源访问的领域,尤其涉及一种加速异构数据源访问的方法、设备及存储介质。
背景技术
异构数据源集成访问正给企业、医院、军事等不同领域带来巨大挑战。
首先,随着数字化、信息化、智能化技术的发展,这些领域已经基本完成了基础业务系统的建设,而对聚合不同业务系统的数据处理实现更智能业务处理的数据集成访问需求越来越多,因此对跨不同业务系统的数据库进行数据访问需求也越来越多。
其次,跨不同业务系统的数据访问需要对已有业务系统的数据库结构和技术有清楚的理解才能实现。为了解决这个问题,通过前期研究发现,跨不同数据源的数据集成访问主要通过增加中间数据处理层提高数据访问性能,例如利用web services和SOA等技术,加速数据集成访问和提高访问性能。但这不仅增加了程序实现的难度,而且使得数据访问的性能完全依赖于程序员水平的高低,降低了加速数据集成的可扩展性,增加了实现的成本。
发明内容
为了提高跨不同数据源数据访问性能,本发明提出了一种加速异构数据源访问的系统、方法及设备。具体地,本发明设计了一个基于CXL协议的加速数据集成查询方法。本发明的CXL是指compute express link,即计算互联协议,通过对其三个子协议的不同组合,为计算机与加速器等外部设备提供了高速互联的数据交换方式,本发明所用CXL设备不特指某类设备,而是基于三个子协议组合的不同类设备。
本发明是对跨不同数据源的数据查询语句进行分解组合,利用CXL协议设备主动发起查询,增加并行查询机会,提高跨不同数据源查询数据的性能,又降低编程难度,由此并降低成本。
具体的,系统包括:
主机端、数据源服务器和加速设备;
所述主机端与所述加速设备通过网络连接;
所述数据源服务器与所述主机端通过网络连接;
所述加速设备与所述数据源服务器通过网络连接;
所述网络连接的方式包括:基于CXL协议的网络连接、插入主机端的基于CXL协议的加速器和独立于主机通过与基于CXL协议CXL Switch相连接的独立加速设备。
一种加速异构数据源访问的方法,应用于一种加速异构数据源访问的系统,包括以下步骤:
S1、加速设备或加速设备利用主机端直接对异构数据源发送SQL语句访问;
S2、利用加速设备增加SQL语句执行的并行度;
S3、利用加速设备或主机端返回结果。
一种加速设备,所述加速设备为基于CXL协议中,三个子协议组合的不同类设备。
本发明提供的有益效果是:对跨不同数据源的数据查询语句进行分解组合,利用CXL协议设备主动发起查询,增加并行查询机会,提高跨不同数据源查询数据的性能,又降低编程难度,由此并降低成本。
附图说明
图1是本发明系统结构的示意图;
图2是主机端工作示意图;
图3是加速设备示意图;
图4是本发明方法具体示意图;
图5是本发明实施例示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地描述。
请参考图1,图1是本发明系统的结构示意图。
本发明提供了加速异构数据源访问的系统,包括:
主机端、数据源服务器和加速设备;
所述主机端与所述加速设备通过网络连接;
所述数据源服务器与所述主机端通过网络连接;
所述加速设备与所述数据源服务器通过网络连接。
一种加速异构数据源访问的方法,应用于一种加速异构数据源访问的系统,包括以下步骤:
S1、加速设备或加速设备利用主机端直接对异构数据源发送SQL语句访问;
此处无须增加额外的数据层代码,直接运用SQL语句向数据源发起语句访问;
S2、利用加速设备增加SQL语句执行的并行度;
S3、利用加速设备或主机端返回结果。
请参考图2,图2是主机端工作示意图;步骤S1具体如下:
S11、直接运用SQL语句向异构数据源发起语句访问;
S12、对异构数据源访问的SQL语句被分解为对单一数据源访问的语句及格式;
S13、对访问语句的访问条件进行分解,生成参数序列和执行序列;
S14、根据所述参数序列和执行序列,按顺序将SQL语句放置在加速设备或指定的SQL内存缓冲区。
所述加速设备为基于CXL协议中,三个子协议组合的不同类设备。
需要说明的是,本发明的CXL是指compute express link,即计算互联协议,通过对其三个子协议的不同组合,为计算机与加速器等外部设备提供了高速互联的数据交换方式。
本发明所用的CXL加速设备不特指某类设备,而是基于三个子协议组合的不同类设备。
所述加速设备与指定的SQL内存缓冲区保存内存一致性,或从指定的SQL内存缓冲区读取SQL语句。加速设备从SQL语句缓冲区取出SQL语句,并根据其数据源发布到指定数据源服务器;
所述加速设备将数据源服务器返回的结果写入到CXL扩展内存设备或者其他指定的结果存放内存区;主机或加速设备可将根据返回结果生成新的SQL语句,放入到上面指定的SQL语句缓冲区或新SQL语句缓冲区;
所述加速设备可根据返回缓冲区的情况调整调度程序,将新生成的SQL语句的发布增加到当前的队列中;
所述加速设备执行完成所有SQL缓冲区语句结束;
所述加速设备将相同源的相同查询语句写入到相同结果存放缓冲区,并保持结果的一致性。
请参考图3,图3是加速设备示意图。
加速设备从SQL缓冲区取SQL语句,同时可以根据返回的结果生成新的SQL语句,并将其同步至指定的SQL语句缓冲区或新SQL语句缓冲区;
所述加速设备还将所有返回结果中的同源查询结果存放至同一缓冲区;
步骤S3具体如下:
若所述数据源服务器支持CXL协议,则数据源服务器直接将返回结果写入加速设备指定的结果缓存区;
若所述数据源服务器不支持CXL协议,则主机端将返回结果写入加速设备指定的结果缓存区。
请参考图4,图4是本发明方法具体示意图。
服务主机端完成分解SQL、生成条件、组合新SQL语句的功能,并将组合后的SQL语句存入指定SQL缓冲区;
加速设备从指定缓冲区中读取SQL语句,同时根据结果发布SQL语句,此时若内存缓冲区不够,可通过扩展内存的形式进行上述操作。
图4中,最下方的DB,表示数据源服务器中不同来源的数据库。
所述加速设备访问所有结果缓存区,并查询要求结果缓存区中的结果,返回指定的查询内容至主机端。
作为一种实施例而言,请参考图5,图5是本发明实施例示意图。
假如有一个查询需要跨三个不同的主机或数据进行查询,A为应用服务器主机,B、C、D三个主机属于数据库服务器;常见查询语句:
Select B.a,B.b,B.c,C.a,C.b,C.c,D.a,D.b,D.c from B inner join C on B.a=C.c inner join C.b=D.a where D.c>1000;将其进行分解后如下:
①Select B.a,B.b,B.c from B where B.a=@cc;
②Select C.a,C.b,C.c from C where C.b=@da;
③Select D.a,D.b,D.c from D where D.c>1000;
根据查询优化和条件组合得知:三者的执行顺序为③②①;
上述分解的条件集合是[1001,1002,1003,1004,……];
CXL加速设备发起查询后,可以通过SQL语句执行顺序和执行结果的共享,提高SQL执行的并行度,以提高效率,同时也不需要额外的数据处理层,降低了编程难度。
本发明的有益效果是:对跨不同数据源的数据查询语句进行分解组合,利用CXL协议设备主动发起查询,增加并行查询机会,提高跨不同数据源查询数据的性能,又降低编程难度,由此并降低成本。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种加速异构数据源访问的系统,其特征在于:包括:
主机端、数据源服务器和加速设备;
所述主机端与所述加速设备通过网络连接;
所述数据源服务器与所述主机端通过网络连接;
所述加速设备与所述数据源服务器通过网络连接;
所述网络连接的方式包括:基于CXL协议的网络连接、插入主机端的基于CXL协议的加速器和独立于主机通过与基于CXL协议CXLSwitch相连接的独立加速设备。
2.一种加速异构数据源访问的方法,应用于如权利要求1所述的一种加速异构数据源访问的系统,其特征在于:方法包括以下步骤:
S1、加速设备或加速设备利用主机端直接对异构数据源发送SQL语句访问;
S2、利用加速设备增加SQL语句执行的并行度;
S3、利用加速设备或主机端返回结果。
3.如权利要求2所述的一种加速异构数据源访问的方法,其特征在于:步骤S1具体如下:
S11、直接运用SQL语句向异构数据源发起语句访问;
S12、对异构数据源访问的SQL语句被分解为对单一数据源访问的语句及格式;
S13、对访问语句的访问条件进行分解,生成参数序列和执行序列;
S14、根据所述参数序列和执行序列,按顺序将SQL语句放置在加速设备或指定的SQL内存缓冲区。
4.一种加速设备,其特征在于:所述加速设备为基于CXL协议中,三个子协议组合的不同类设备。
5.如权利要求4所述的一种加速设备,其特征在于:所述加速设备与指定的SQL内存缓冲区保存内存一致性,或从指定的SQL内存缓冲区读取SQL语句。
6.如权利要求5所述的一种加速设备,其特征在于:所述加速设备将读取的SQL语句发布至数据源服务器,并从数据源服务器得到返回结果。
7.如权利要求6所述的一种加速设备,其特征在于:所述加速设备根据返回结果,生成新的SQL语句,并将新的SQL语句放置指定的SQL内存缓冲区,直至SQL内存缓存区的所有语句执行完毕,得到所有返回结果。
8.如权利要求7所述的一种加速设备,其特征在于:所述加速设备将所有返回结果中的同源查询结果存放至同一缓冲区。
9.如权利要求2所述的一种加速异构数据源访问的方法,其特征在于:步骤S3具体如下:
若所述数据源服务器支持CXL协议,则数据源服务器直接将返回结果写入加速设备指定的结果缓存区;
若所述数据源服务器不支持CXL协议,则主机端将返回结果写入加速设备指定的结果缓存区。
10.如权利要求7所述的一种加速设备,其特征在于:所述加速设备访问所有结果缓存区,并查询要求结果缓存区中的结果,返回指定的查询内容至主机端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311582065.7A CN117539912B (zh) | 2023-11-23 | 2023-11-23 | 一种加速异构数据源访问的系统、方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311582065.7A CN117539912B (zh) | 2023-11-23 | 2023-11-23 | 一种加速异构数据源访问的系统、方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117539912A true CN117539912A (zh) | 2024-02-09 |
CN117539912B CN117539912B (zh) | 2024-06-14 |
Family
ID=89783944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311582065.7A Active CN117539912B (zh) | 2023-11-23 | 2023-11-23 | 一种加速异构数据源访问的系统、方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117539912B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102163195A (zh) * | 2010-02-22 | 2011-08-24 | 北京东方通科技股份有限公司 | 一种基于分布式、异构数据库统一视图的查询优化方法 |
CN107066499A (zh) * | 2016-12-30 | 2017-08-18 | 江苏瑞中数据股份有限公司 | 面向异构存储多源数据管理及可视化系统的数据查询方法 |
CN108052635A (zh) * | 2017-12-20 | 2018-05-18 | 江苏瑞中数据股份有限公司 | 一种异构数据源统一联合查询方法 |
CN114064684A (zh) * | 2021-10-13 | 2022-02-18 | 中国电子科技集团公司第十五研究所 | 一种异构数据源的统一访问方法 |
CN115269630A (zh) * | 2022-06-30 | 2022-11-01 | 启明信息技术股份有限公司 | 基于自定义sql脚本进行多源异构数据库联合查询的方法 |
WO2023040056A1 (zh) * | 2021-09-14 | 2023-03-23 | 威讯柏睿数据科技(北京)有限公司 | 基于多解析器的异构数据源操作资源解析定位方法和设备 |
CN116541415A (zh) * | 2022-02-02 | 2023-08-04 | 三星电子株式会社 | 用于加速的装置、系统和方法 |
CN116627892A (zh) * | 2023-05-31 | 2023-08-22 | 中国人民解放军国防科技大学 | 一种数据近存储计算方法、装置和存储介质 |
CN116708579A (zh) * | 2023-08-04 | 2023-09-05 | 浪潮电子信息产业股份有限公司 | 数据访问方法、装置、电子设备及计算机可读存储介质 |
US20230325265A1 (en) * | 2023-06-13 | 2023-10-12 | Susanne M. Balle | Hardware acceleration in a network interface device |
CN116886751A (zh) * | 2023-09-04 | 2023-10-13 | 浪潮(北京)电子信息产业有限公司 | 一种异构设备的高速通信方法、装置和异构通信系统 |
-
2023
- 2023-11-23 CN CN202311582065.7A patent/CN117539912B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102163195A (zh) * | 2010-02-22 | 2011-08-24 | 北京东方通科技股份有限公司 | 一种基于分布式、异构数据库统一视图的查询优化方法 |
CN107066499A (zh) * | 2016-12-30 | 2017-08-18 | 江苏瑞中数据股份有限公司 | 面向异构存储多源数据管理及可视化系统的数据查询方法 |
CN108052635A (zh) * | 2017-12-20 | 2018-05-18 | 江苏瑞中数据股份有限公司 | 一种异构数据源统一联合查询方法 |
WO2023040056A1 (zh) * | 2021-09-14 | 2023-03-23 | 威讯柏睿数据科技(北京)有限公司 | 基于多解析器的异构数据源操作资源解析定位方法和设备 |
CN114064684A (zh) * | 2021-10-13 | 2022-02-18 | 中国电子科技集团公司第十五研究所 | 一种异构数据源的统一访问方法 |
CN116541415A (zh) * | 2022-02-02 | 2023-08-04 | 三星电子株式会社 | 用于加速的装置、系统和方法 |
CN115269630A (zh) * | 2022-06-30 | 2022-11-01 | 启明信息技术股份有限公司 | 基于自定义sql脚本进行多源异构数据库联合查询的方法 |
CN116627892A (zh) * | 2023-05-31 | 2023-08-22 | 中国人民解放军国防科技大学 | 一种数据近存储计算方法、装置和存储介质 |
US20230325265A1 (en) * | 2023-06-13 | 2023-10-12 | Susanne M. Balle | Hardware acceleration in a network interface device |
CN116708579A (zh) * | 2023-08-04 | 2023-09-05 | 浪潮电子信息产业股份有限公司 | 数据访问方法、装置、电子设备及计算机可读存储介质 |
CN116886751A (zh) * | 2023-09-04 | 2023-10-13 | 浪潮(北京)电子信息产业有限公司 | 一种异构设备的高速通信方法、装置和异构通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117539912B (zh) | 2024-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4675174B2 (ja) | データベース処理方法、システム及びプログラム | |
EP3857400B1 (en) | Data storage apparatus, translation apparatus, and database access method | |
CN102073540B (zh) | 分布式事务提交方法和装置 | |
US7475058B2 (en) | Method and system for providing a distributed querying and filtering system | |
WO2015062444A1 (en) | System and method for creating a distributed transaction manager supporting repeatable read isolation level in a mpp database | |
US20050216282A1 (en) | System and method for business object discovery | |
US20070255711A1 (en) | Method and system for property-based indexing and/or querying of web service resources | |
US10452655B2 (en) | In-memory cursor duration temp tables | |
US10574750B2 (en) | Aggregation and federation of distributed service entities and associations | |
CN111597160A (zh) | 分布式数据库系统、分布式数据处理方法和装置 | |
US10397317B2 (en) | Boomerang join: a network efficient, late-materialized, distributed join technique | |
WO2022247201A1 (zh) | 一种数据查询方法及装置 | |
CN104468299A (zh) | 基于用户规则的企业服务总线系统 | |
US20050165752A1 (en) | Synchronizing and consolidating information from multiple source systems of a distributed enterprise information system | |
CN113032421A (zh) | 基于MongoDB的分布式事务处理系统及方法 | |
CN115114296A (zh) | 一种基于TemplateB+Tree的索引结构布局方法 | |
WO2022127866A1 (zh) | 数据处理方法、装置、电子设备、存储介质 | |
CN113190528B (zh) | 一种并行分布式大数据架构构建方法及系统 | |
CN117539912B (zh) | 一种加速异构数据源访问的系统、方法及设备 | |
WO2024021808A1 (zh) | 数据查询请求的处理方法、装置、设备及存储介质 | |
Yuan et al. | VDB-MR: MapReduce-based distributed data integration using virtual database | |
CN114328466A (zh) | 一种数据冷热存储的方法、装置及电子设备 | |
CN111294383B (zh) | 物联网服务管理系统 | |
CN114385684A (zh) | 一种BaaS平台数据服务发布方法及其系统 | |
Gao et al. | Achieving Transparent and Real-time Collaboration in Co-AutoCAD Application. |
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 | ||
GR01 | Patent grant |