基于同构型分布式数据库一体化CRUD操控适配解析器的方法与流程

文档序号:18267244发布日期:2019-07-27 09:17阅读:383来源:国知局
基于同构型分布式数据库一体化CRUD操控适配解析器的方法与流程

本发明涉及分布式数据库解析器技术领域,具体来说,涉及一种基于同构型分布式数据库一体化crud操控适配解析器的方法。



背景技术:

同构型分布式数据库是解决数据库容量不足或分散的数据存储下数据统一操控的有效解决方式之一,其中分布式数据库的主数据源负责对其下多个数据源节点数据的操控。一般情况下,后台传来的crud(增加,读取,更新,删除)操作语句都必须通过主数据源对其下节点进行操作。但在数据量日益增长的背景下,主数据源的运行压力不断增大,需要通过解析器分散主数据源的运行压力。



技术实现要素:

为解决现有技术中存在的问题,本发明的目的是提供一种基于同构型分布式数据库一体化crud操控适配解析器的方法,具有减轻主数据源运行压力的优点。

为实现上述目的,本发明采用的技术方案是:一种基于同构型分布式数据库一体化crud操控适配解析器的方法,包括以下步骤:

s1、配置分布式数据库系统,该分布式数据库系统由主数据源和多个数据源节点构成;

s2、通过适配解析器拦截调用方传来的字符串,解析crud的关联数据源和定向sql;

s3、根据解析结果获取所要连接的数据源,与对应的主数据源或数据源节点连接,定向执行相关命令;

s4、将定向数据源执行的crud运行结果经由适配器合并规范后返回调用方。

优选的,步骤s2中还包括以下步骤:

s21、根据不同的crud操作,将sql语句进行分类;

s22、将参数字符串中的每一个参数值放入sql中对应的占位符中,得到完整的sql语句;

s23、从完整的sql语句中,截取分片关键字。

优选的,步骤s3中还包括以下步骤:

s31、根据分片关键字,对不同的crud操作分别通过适配解析器进行路由。

优选的,步骤s31中还包括以下步骤:

s311、将只涉及到一个分片关键字或多个相同的分片关键字的操作由分片关键字通过路由直接得到对应的数据源节点的别名,从而与对应的数据源连接,进行添加数据的操作。

优选的,步骤s31中还包括以下步骤:

s312、读取、修改、删除操作涉及到多个不同的分片关键字的操作,通过路由得到主数据源的别名,从而获得主数据源的连接,进行相应的读取、修改、删除操作。

本发明的有益效果是:

(1)本发明将获得后台的crud操作语句,经过适配解析器路由到分布式数据库系统的主数据源或其下的数据源节点,对于单个分片关键字或多个相同分片关键字的crud作,可直接与对应的数据源节点相连接,而不经过主数据源,这样有效地减轻了主数据源的运行压力,避免了全部crud操作都通过主数据源,缓解了主数据源的运行压力;

(2)本发明通过适配解析器截取完整sql语句中的分片关键字,得到其对应的数据源别名,通过数据源别名获得对应数据源的连接,进行crud操作;

(3)全部crud操作都通过主数据源,整个系统中任意一处发生故障将导致整个系统瘫痪,通过适配解析器与对应的数据源节点直接连接,系统中的一处发生故障也不会影响到系统中的其他操作,避免了整个系统瘫痪带来的损失;

(4)通过适配解析器优化了后台传来的操作语句,截取了操作语句中的分片关键字,节省了数据资源,有效地减轻了后续操作的运行压力。

附图说明

图1是本发明实施例一种基于同构型分布式数据库一体化crud操控适配解析器的方法示意图。

具体实施方式

下面结合附图对本发明的实施例进行详细说明。

实施例1:

如图1所示,一种基于同构型分布式数据库一体化crud操控适配解析器的方法,包括以下步骤:

s1、配置分布式数据库系统,该分布式数据库系统由主数据源和多个数据源节点构成;

s2、通过适配解析器拦截调用方传来的字符串,解析crud的关联数据源和定向sql;

s3、根据解析结果获取所要连接的数据源,与对应的主数据源或数据源节点连接,定向执行相关命令;

s4、将定向数据源执行的crud运行结果经由适配器合并规范后返回调用方。

本发明将获得后台的crud操作语句,经过适配解析器路由到分布式数据库系统的主数据源或其下的数据源节点,根据分片关键字的crud操作,可直接与对应的数据源节点相连接,而不仅经过主数据源,这样有效地减轻了主数据源的运行压力,避免了全部crud操作都通过主数据源,缓解了主数据源的运行压力。

实施例2:

如图1所示,本实施例在实施例1的基础上进行改进,步骤s2中还包括以下步骤:

s21、根据不同的crud操作,将sql语句进行分类;

s22、将参数字符串中的每一个参数值放入sql中对应的占位符中,得到完整的sql语句;

s23、从完整的sql语句中,截取分片关键字。

通过适配解析器优化了后台传来的操作语句,截取了操作语句中的分片关键字,节省了数据资源,有效地减轻了后续操作的运行压力。

实施例3:

如图1所示,本实施例在实施例1的基础上进行改进,步骤s3中还包括以下步骤:

s31、根据分片关键字,对不同的crud操作分别通过适配解析器进行路由。

实施例4:

如图1所示,本实施例在实施例1的基础上进行改进,步骤s31中还包括以下步骤:

s311、将只涉及到一个分片关键字或多个相同的分片关键字的操作由分片关键字通过路由直接得到对应的数据源节点的别名,从而与对应的数据源连接,进行添加数据的操作。

因crud中的单个添加数据的操作不涉及多个数据库,可由分片关键字通过路由直接得到对应的数据源节点的别名,从而获得对应的数据源连接,进行添加数据的操作,避免与主数据源连接,消耗主数据源的资源。对于crud中的多个添加数据的操作,因每次操作只涉及一个数据库,所以它的添加数据的操作与单个添加数据的操作相同。

实施例5:

如图1所示,本实施例在实施例1的基础上进行改进,步骤s31中还包括以下步骤:

s312、读取、修改、删除操作涉及到多个不同的分片关键字的操作,通过路由得到主数据源的别名,从而获得主数据源的连接,进行相应的读取、修改、删除操作。

因crud中的读取、修改、删除操作不确定涉及单个或多个数据库,所以将涉及到多个不同的分片关键字的操作,通过路由得到主数据源的别名,从而获得主数据源的连接,进行相应的读取、修改、删除操作,将只涉及到一个分片关键字或多个相同的分片关键字的操作,通过路由得到对应的数据源节点的别名,从而获得对应的数据源连接,而不经过主数据源,这样有效地减轻了主数据源的运行压力。

以上所述实施例仅表达了本发明的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1