狠狠撸

狠狠撸Share a Scribd company logo
高可用可扩展数据层
 - MySQL 架构实践

      简朝阳
    2010.12.15
个人介绍
简朝阳 (sky000)
MySQL / Oracle DBA (Alibaba)
Oracle ACE (Expertise MySQL)


http://isky000.com
http://twitter.com/sky000
mysqler@googlegroups.com
主题

●   高可用方案
●   可扩展架构
●   数据层扩展延伸
●   阿里目前典型架构示例
●   数据层架构展望
●   Q&A
高可用架构
◆ 硬件高可用
 ◇ 硬件冗余(冷备 / 热备)
 主机 (CPU/Disk...) 、存储、电源、网络 ...

◆ 数据高可用
 ◇ 共享
  基于共享数据存储的数据高可用
  SAN 、 NAS 、 iScsi 、 SAS…
 ◇ 冗余
  基于数据库本身的数据复制冗余
  MySQL Replication, Oracle Data Guard …
  基于第三方(或自行设计)的数据复制冗余
  Tungeten, DBMoto ...
高可用 - 共享




      iSky000.com
高可用架构 -   冗余 - 数据库复制
高可用架构 -    冗余 - 数据库复制




      iSky000.com
高可用 -   冗余 – MySQL Replication
高可用 -   冗余 – MySQL Replication
高可用 -   冗余 – MySQL Replication
高可用 -   冗余 – MySQL Replication
高可用 -   冗余 – MySQL Replication
高可用 -   冗余 – MySQL Replication
高可用 -   冗余 – MySQL Replication
高可用 -   冗余 – 第三方工具




              iSky000.com
高可用 -   冗余 – 第三方工具




              iSky000.com
可扩展架构
◆ 向上扩展 (Scale Up)
 ◇ 单机硬件升级 (扩展极限)
   增加(或升级) CPU ,存储设备升级,增加内存 ...
 ◇ 更换更高端硬件
   使用小型机和高端存储 (上贼船) ...

◆ 向外扩展 (Scale Out)
 ◇ 数据切分 (Sharding) - 分库、分表
    Hash 水平切分, Table 垂直切分 ...
 ◇ 数据拷贝复制多份 – 同步、异步
    读写分离,多点服务
 ◇ 利用 Cache 和 Search 等扩展数据层
  通过与 Cache 和 Search 的协作,增加数据层的扩展性
可扩展架构 - Scale Out - Sharding
可扩展架构 - Scale Out - Sharding




            iSky000.com
可扩展架构 - Scale Out - Sharding
可扩展架构 - Scale Out - Replication




           iSky000.com
可扩展架构 - Scale Out - Replication




                  iSky000.com
数据层扩展延伸
◆ 负载均衡路由控制 (DB/DS Proxy)
 ◇ 高可用 HA 切换
 ◇ 读写分离负载均衡
 ◇ 数据切分路由控制


◆ 数据访问加速 (Cache & Search)
 ◇ Cache 加速静态 / 热点数据 ,K/V 类访问
 ◇ Search 加速模糊匹配 / 全文搜索
数据层扩展 - App/Proxy/DataSource
数据层扩展 - App/Proxy/DataSource
数据层扩展 - DB + Cache - app_update




                     iSky000.com
数据层扩展 - DB + Cache - db_update




                    iSky000.com
数据层扩展 - DB + Cache + Search




                 iSky000.com
Ali 数据层典型架构
数据层架构展望




     iSky000.com
The End


         Q&A

   http://iSky000.com
mysqler@googlegroups.com

More Related Content

高可用可扩展数据层 - MySQL架构实践