京东技术开放日-分布式MYSQL数据库实践-秦波.pptx

京东技术开放日-分布式MYSQL数据库实践-秦波.pptx

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

秦波京东MYSQL分布式数据库

集群系统技术交流

介绍架构展望功能说明内容大纲

介绍

目前技术痛点业务驱动运维需要1自主开发的蓝海豚分布式MYSQL集群系统集群系统,支持高并发、高可用、高扩展性进度可控,迭代开发目前分布式中间件的一些开源实现功能简单,不满足需求非自主开发难维护

GroupN……架构–拓扑Group1M1S1-1S1-2MNSN-1SN-2SN-M……S1-MLVSJDBDproxyJDBDproxy……JDBDproxyMYSQLmetaserverApplicationApplicationMYSQLclient/JDBCMYSQLclient/JDBC应用层数据库集群系统2BlueDolphinProxyClusterClusterManagerCLI/WEBClientMn:GROUPnMASTERSn-m:GROUPnSLAVE:QUERY交互:系统元数据信息交互:主备同步:分布式数据库维护用

Front-endCommunication架构–系统实现MYSQLMYSQLMYSQLMYSQLConnectionPoolApplicationMYSQLMYSQLProtocolMYSQLMYSQLClusterManagerMetaserverMYSQLMYSQLSQLExecutorsSQLRouterSQLParserResult

ProcessorMYSQLProtocolMYSQLProtocolMYSQLProtocolMYSQLProtocolSQLAuth3

架构–SEDA并行处理框架4SEDA:StagedEventDrivenArchitectureThreadpoolThreadpoolThreadpoolSQLExecutorSQLRouterSQLParserResult

ProcessorSQLAuthEventqueueEventqueueEventqueueOutgoingEventsSQLExecutorSQLExecutor………ClientI/O线程池连接池3个线程池;可伸缩连接池;两者无绑定关系;

功能5跨机分库分表consistent-hashrangeSQL支持DDLDML(JOIN)DCL表级权限控制GRANTSELECTONT.TBLTO…在线数据扩展/自动迁移以分片为单位的数据迁移和自动扩展支持数据重构HAJDBDProxy层HA数据库层HA(Group内自维护)meta信息在线更新JDBDProxy节点在线更新meta信息

分库分表6IDMEMBE_IDINFO1Blue…3Dolphin…4Test1…5Test1…9Dolphin…分片1分片2拆分键f(Blue)=分片1f(Test1)=分片1f(Dolphin)=分片2路由算法拆分键主键拆分键可不等同于主键,目前单表支持指定一个列作为拆分键;支持自增键可作为拆分键分片MYSQLSERVER

分片可以理解为子表;是分布式系统管理库表的最小单位;在SERVER上分散分布。IDMEMBE_IDINFO3Dolphin…9Dolphin…IDMEMBE_IDINFO1Blue…4Test1…5Test1…

分库分表目前支持两种分库分表路由算法consistenthash路由RANGE路由按范围进行分片7例:1)表tt,拆分键id,设定的分片数128分片表明为tt_0~tt_127每个分片对应一致性HASH余数段2)执行INSERTINTOtt(id,name)VALUES(10240,‘BlueDolphin’)3)locate分片10240%CONSISTANT_HASH_VALUE=1010位于中;#当前代码中CONSISTANT_HASH_MAX_VALUE值固定为1024*1024#tt_0对应范围0~CONSISTANT_HASH_VALUE%1284)改写insert语句并发送到tt_0所在的GROUPmasterserver中执行SQL:INSERTINTOtt_0(id,name)VALUES(10240,‘BlueDolphin’)

SQL处理SQL解析词法/语法解析器通过flex/bison实现,可灵活定制,处理结

文档评论(0)

金华 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档