数据库中间件的相关介绍 - SEO - 新闻资讯 - 数据库中间件的相关介绍
新闻资讯

数据库中间件的相关介绍

发布时间:2021-07-15 浏览次数:2

什么是数据库中间件‍,它能够干什么?这个问题说来话长,简单地说中间件就是连接数据库与各种系统应用程序的一种分布式软件,它的主要作用就是减少一些庞大的数据库的结构复杂性,使应用或者系统有着更快更稳定的速度,今天我们详细说一下这种分布式软件。

QQ截图20210711201909.png

一.解决的主要问题

随着业务的发展MySQL数据库里的表越来越大,一两年以后千万甚至上亿记录的表就会出现了(一般可以简单认为表比较复杂的时候MySQL几百万上千万的时候就会出现复杂查询或变更有性能问题),这时候可能会导致复杂的查询慢插入和修改数据慢,修改表的DDL执行太慢导致无法修改列类型或者加索引或者加字段等等。怎么办呢?这时候轮到我们中间件登场了。

二.原理

处理执行慢的常见方法主要是,历史表:按时间拆分历史表出去降低数据量;垂直拆分:按列将上百列的宽表拆分成多个列少(也就是每条记录数据量小)的表不降低记录数但是降低整个表的数据量和索引量大小;水平拆分:按某个或某些个列的值哈希后均匀的将数据拆分到多个同样的库or表里这样就直接降低了单库单表的数据量,这些业务也是于侵入型的。怎么能对业务变得透明这就需要一个中间件帮我们自动的把SQL1变成SQL2,从而使得我们分不分库分不分表分多少个代码都差不多不用太多修改。另外还有一种读写分离:比如MySQL的TPS/QPS都已经很高了且已经做了1主3从的时候我们希望这4个实例都能分担一些压力特别是读多写少的情况,如果把读的压力大家平分就可以降低主库的读压力让主库关注与写。这时候也需要一个中间件来把数据请求路由到不同的库上。

当我们的业务发展到一定水平数据库单库单表压力变大不可避免,如果我们自己没有处理这方面问题的经验或者无暇处理。那么引入专门的数据库中间件‍无疑是一种很为经济很为方便的方法,并且相对一些开源中间件其安全性还有体验度可靠性要高上很多。


相关推荐

产品试用 产品试用
400-820-6580 免费电话