写点什么

DDM 的前世今生——浅析分布式数据库中间件

  • 2019-10-22
  • 本文字数:1204 字

    阅读完需:约 4 分钟

DDM的前世今生——浅析分布式数据库中间件

DDM 是什么?这是华为云 Paas 推出的分布式数据库中间件,DDM(Distributed Database Middleware)是一个实现了 Mysql 协议栈的服务器,前端用户可以把它看做一个数据库代理,用 Mysql 客户端工具和命令行访问,而 DDM 后端连接一到多个 Mysql Server。因此,DDM 本身并不存储数据,数据是在后端连接的 Mysql Server 上存储的。简单来说,DDM 就是 Mysql 的最佳伴侣,一定程度上让 Mysql 拥有了跟 Oracle PK 的能力。这样听起来 DDM 好像是 Mysql 的辅助大神,这里有必要对八卦下 DDM 发展背景,了解下 DDM 的前世历程。

NoSQL 与 SQL 之争

目前,互联网常有海量数据高并发和存储的场景,对于数据的存储,目前有基于 SQL (Structured Query Language)的关系型数据库和 NoSQL(Not Only SQL)的非关系型数据库。SQL 数据存在特定结构的表中;而 NoSQL 则更加灵活和可扩展,存储方式可以是 JSON 文档、哈希表或者其他方式,比如键值存储(redis,ROMA,Memcached)数据库应用在排行更新,会话保存,面向文档的数据库(mongoDB、couchDB)应用在日志记录,面向列的数据库(Cassandra、HBase)在博客中的应用。而且速度极高。


虽然在云计算时代,传统数据库存在着先天性的弊端,但是 NoSQL 数据库只能在特定场景下有奇效,只能作为传统数据的补充而不能将其替代。

关系型数据库性能瓶颈

目前绝大多数数据库不具备自动扩展,自动迁移的能力,对于单库单表性能瓶颈明显,当单表超过 1000W 数据量,性能会出现比较明显的下降。为了解决该难题,常见的做法就是进行分库分表来规避。


垂直分库:可按照业务模块进行划分,把数据分在不同的库中。



水平分库:我们发现某些表的数据量已经超过 1000W,QPS 显著下降,这里可以对这种表进行进一步水平拆分,做成多个分片表。大多数电商企业会按照日期分片,但又衍生出来一些问题,在固定时段中对某个分片压力很大,其他分片此时处于空闲状态,在电商企业高并发的场景下,会产生大量数据,此时又产生短时间内单库 QPS 瓶颈的问题。



拆分规则优化:可以根据拆分字段,进行取模的方式来做到数据大致平均分布到多个分片上。可以保证整体系统的 QPS 得到提升,但又衍生出来一些问题:分片数量不够需要扩容的问题,跨分片事务一致性无法保证的问题。

数据库中间件

为了减少对应用的侵入性,并且要将压力打在中间件上,该中间件负责和上层应用打交道,对应用可表现为一个独立的数据库,而屏蔽底层复杂的系统细节。分布式数据库中间件除了基本的分表分库功能,还可以丰富一下,比如讲读写分离或者水平扩容功能集成在一起,或者比如读写分离本身也可以作为一个独立的中间件。(DDM,Cobar,MyCAT, TDDL 等)。


上述提到的分片数量不够的扩容以及分布式事务一致性的问题,在华为云的 DDM 已经得到解决,并且中间件的功能在不断丰富,已经成为高并发应用的绝对利器。


本文转载自公众号中间件小哥(ID:huawei_kevin)。


原文链接:


https://mp.weixin.qq.com/s/VWp6kdtupva90sTxi9FX8Q


2019-10-22 23:251773

评论

发布
暂无评论
发现更多内容

零刻发起NAS用户共创活动,征集创新理念共塑未来产品形态

财见

干货推荐:分钟级定位 IO 瓶颈,多租户云环境下的智能诊断

OpenAnolis小助手

阿里云操作系统控制台

RedisTemplate和StringRedisTemplate的区别及个人见解

刘大猫

人工智能 云计算 算法 物联网 大模型

DotNetGuide突破了 9.5K + Star,一份全面的C#/.NET/.NET Core学习、工作、面试指南知识库!

追逐时光者

C# .net 微软

宝尊将于2025年11月25日发布2025年三季度未经审计财务业绩

财见

别再把DevOps当工具!90%企业都在做假DevOps,文化才是根本,很多团队都搞反了!

六边形架构

DevOps CI/CD 团队文化 自动化运维

从同步耦合到异步解耦:消息中间件如何重塑系统间的通信范式?

poemyang

消息中间件 高并发架构

RPA这么多,到底该选谁?2026 企业自动化选型全攻略

Techinsight

Rathbones呼吁紧急增加区域投资以推动英国增长

财见

沙特阿拉伯将于11月主办第11届最不发达国家问题部长级会议

财见

TÜV莱茵为开立威尔逊多款消化内科手术器械颁发MDR公告机构证书

财见

进入职场第四课—产出

老李说技术

职场 职场发展

ONES 重磅升级|全新内核,深度可配置,适配复杂业务流

万事ONES

项目管理 研发管理 ONES 全新升级

纳斯达克上市公司Pinnacle Food宣布新战略计划,旨在扩展其智慧农业创新平台

财见

转转客服IM聊天系统背后的技术挑战和实践分享

JackJiang

websocket 即时通讯 im开发 Web端即时通讯

赋能华中企业数智转型破局前行:「AI共创 三生万物」司马阅2025企业AI落地应用峰会武汉站圆满落幕

司马阅

企业智能体中台落地指南:蓝凌 LanBots.AI 赋能新质生产力实践

极客天地

收藏!2025 龙蜥操作系统大会闯关攻略来啦

OpenAnolis小助手

龙蜥操作系统大会

分钟级定位 IO 瓶颈:多租户云环境下的智能诊断

阿里云基础软件

阿里云 操作系统控制台 IO异常

Weblate审计日志IP泄露漏洞分析

qife122

网络安全 Weblate

工业管理 项目管理经验总结(30)

万里无云万里天

项目管理 工业 工厂运维

干货推荐:OOM 杀进程 or 应用卡顿?该如何抉择

OpenAnolis小助手

操作系统 阿里云操作系统控制台

Meta AI 推出全语种语音识别系统,支持 1600+语言;谢赛宁、李飞飞、LeCun 联手发布「空间超感知」AI 框架丨日报

RTE开发者社区

工业设计 自控设计经验总结(18)

万里无云万里天

设计师 工业 工厂运维

干货推荐:看阿里云操作系统控制台如何一招擒拿网络丢包

OpenAnolis小助手

技术干货 阿里云操作系统控制台

一场论坛捕捉 26 年语音 AI 关键词:思考机制、专有模型、低功耗、超低帧率、多语种、语音增强……丨RTE2025 回顾

RTE开发者社区

Inspira在PEAK Matrix®评估中获评领导者

财见

软硬协同!RISC-V 生态分论坛精彩议程公布 | 2025 龙蜥大会

OpenAnolis小助手

龙蜥操作系统大会

第五届 RTE 年度 Demo Day 三强公布!看到对话式 AI 的 N 种未来

RTE开发者社区

Intigriti Bug Bytes

qife122

网络安全 漏洞挖掘

DDM的前世今生——浅析分布式数据库中间件_文化 & 方法_张译文_InfoQ精选文章