移动基于Percona XTRADB Cluster的大数据解决方案

标签: 移动 percona xtradb | 发表时间:2014-05-17 00:38 | 作者:china_world
出处:http://blog.csdn.net
移动基于Percona XTRADB Cluster的大数据解决方案
    
    一、移动的去IOE之旅
    

       最近因为“棱镜门”事件的曝光,引起了国家对信息安全问题的注意,各大行业也开展起来去“IOE”的行动。对移动而言, 一方面是对信息安全的担心,另一方面是对降低成本的考量,对开源体系架构的引入也成为一种现实的方案。

       在互联网行业,MySQL的使用成为主流,但随着Oracle对Sun的收购,MySQL的控制权落入Oracle手中,对MySQL可能闭源的风险也成为业界的共识。 由此,产生了各种MySQL的分支。本文主要对其中的PerconaXtraDB作为数据库方案进行了分析。


     二、 Percona STRADB Cluster分析

Percona XtraDBCluster是MySQL高可用性和可扩展性的解决方案.

Percona XtraDBCluster提供的特性有:

1.同步复制,事务要么在所有节点提交或不提交。

2.多主复制,可以在任意节点进行写操作。

3.在从服务器上并行应用事件,真正意义上的并行复制。

4.节点自动配置。

5.数据一致性,不再是异步复制。

Percona XtraDBCluster完全兼容MySQL和Percona Server,表现在:

1.数据的兼容性

2.应用程序的兼容性:无需更改应用程序

集群特点:

Ø 集群是有节点组成的,推荐配置至少3个节点,但是也可以运行在2个节点上。

Ø 每个节点都是普通的mysql/percona服务器,可以将现有的数据库服务器组成集群,反之,也可以将集群拆分成单独的服务器。

Ø 每个节点都包含完整的数据副本。

优点如下:

1.当执行一个查询时,在本地节点上执行。因为所有数据都在本地,无需远程访问。

2.无需集中管理。可以在任何时间点失去任何节点,但是集群将照常工作。

3.良好的读负载扩展,任意节点都可以查询。

缺点如下:

1.加入新节点,开销大。需要复制完整的数据。

2.不能有效的解决写缩放问题,所有的写操作都将发生在所有节点上。

3.有多少个节点就有多少重复的数据。

架构图如下:

Percona XTRADB Cluster架构图

Percona XtraDB Cluster与MySQL Replication区别在于:

分布式系统的CAP理论:

C—一致性,所有节点的数据一致;

A—可用性,一个或多个节点失效,不影响服务请求;

P—分区容忍性,节点间的连接失效,仍然可以处理请求;

任何一个分布式系统,需要满足这三个中的两个。

 

MySQLReplication: 可用性和分区容忍性;

Percona XtraDBCluster: 一致性和可用性。

因此MySQL Replication并不保证数据的一致性,而Percona XtraDB Cluster提供数据一致性。

 

Percona XtraDBCluster组件:

Percona XtraDB Cluster基于XtraDB的PerconaServer以及包含写复制集补丁。使用Galera 2.xlibrary,事务型应用下的通用的多主同步复制插件。

 

Galera 2.x新特性有:

1.IST(IncrementalState Transfer)增量状态传输。对于WAN特别有用。

2.RSU(RollingSchema Update)旋转更新架构。不会阻止对表进行操作。


     三、基于Percona STRADB Cluster的系统架构
      munion_sysarch
      扩展性架构
  

垂直分片:

->多个Percona XTRADB Cluster;
->Spring配置多个数据源;

水平分片:

->多个PerconaXTRADB Cluster;
->Guzz实现数据水平切片和ORM;

    LVS+Keepalived扩展:
采用三层交换机的等价路由技术最多可配置8台LVS服务器,每台都是Master,LVS配置成DR模式,消除了LVS瓶颈。

     五、总结
     我们准备在移动某互联网项目中使用以上方案,经测算在5000万PV、10000并发的情况下,需要1,828,571tpmC 的服务器一台。按8台LVS服务器,每台转发100个Percona XTRADB集群,每个集群8台服务器计算(集群内每个节点数据相同),相当于8X100=800台服务器。每台服务器tpmC按1,807,347,支持5000万PV计算,即800X5000万=4000000万PV。足够满足该项目的需求了。
     
     以上方案还需在后续的持续运营中进行验证。请大家批评斧正!
     
作者:china_world 发表于2014-5-16 16:38:04 原文链接
阅读:89 评论:0 查看评论

相关 [移动 percona xtradb] 推荐:

移动基于Percona XTRADB Cluster的大数据解决方案

- - CSDN博客云计算推荐文章
移动基于Percona XTRADB Cluster的大数据解决方案.     一、移动的去IOE之旅.             最近因为“棱镜门”事件的曝光,引起了国家对信息安全问题的注意,各大行业也开展起来去“IOE”的行动. 对移动而言, 一方面是对信息安全的担心,另一方面是对降低成本的考量,对开源体系架构的引入也成为一种现实的方案.

Percona XtraDB Cluster 搭配 HAProxy

- - 小惡魔 - 電腦技術 - 工作筆記 - AppleBOY
本篇文章紀錄安裝 Percona XtraDB Cluster (簡稱 PXC) 及搭配 HAProxy 做分散流量系統,其實在業界已經很常看到 HAProxy + MySQL Cluster Database 解決方案,HAProxy 幫您解決負載平衡,並且偵測系統是否存活,管理者也就不用擔心 MySQL 服務是否會掛掉.

啟動 Percona XtraDB Cluster 注意事項

- - 小惡魔 - 電腦技術 - 工作筆記 - AppleBOY
在 Percona XtraDB Cluster 推出 5.5.28 以前,最簡單的啟動方式就是打開 my.cnf 設定 wsrep_urls 在 [mysqld_safe] section 內. 假設我們有三台 Node 分別為底下 IP:. 當啟動 MySQL 時,Percona 會先去偵測 Cluster 內的 192.168.1.100 是否存在,如果不存在就在往下找,最後偵測 192.168.1.102 也不存在時,這時候 MySQL 就是啟動失敗,為了避免這情形,也就是全部的 Node Crash 狀況下,還是可以將 Cluster 啟動,可以改成底下設定.

在 Percona XtraDB Cluster 裡使用 async replication 時人工 failover 的方式…

- - Gea-Suan Lin's BLOG
在使用 Galera Cluster 時還是可以架設一般的 slave server ( Percona XtraDB Cluster 則是 Percona 對 Galera Cluster 的封裝),像是這樣的架構:. 其中 node{1,2} 為 cluster,node3 則是傳統的 async replication,來源的 master 為 node1.

一次惊心动魄的Percona XTRADB Cluster数据修复过程【MySQL】

- - CSDN博客推荐文章
一次惊心动魄的Percona XTRA Cluster DB数据修复过程.         2014.12.27日中午约12:30,电话响起,是同事YI的电话,告之说库中出现大量死锁,用“service mysql restart”无法重启. 这里我先说明下:我们在移动音乐项目中使用的是. Percona XTRA Cluster DB,在生成环境中,建议最低是3个节点.

Percona Xtrabackup MySQL 全备

- - CSDN博客数据库推荐文章
作者:ylqmf 发表于2013-3-24 17:29:55 原文链接. 阅读:99 评论:0 查看评论.

Percona XtraBackup 1.6.7 发布

- - 开源中国社区最新新闻
Percona XtraBackup 1.6.7 发布,该版本主要是 bug 的修复,详细列表请看 这里. XtraBackup 是一个用来备份 MySQL 的 InnoDB 数据库的开源工具. 例如执行增量备份的命令是:.

Percona XtraBackup InnoDB 備份工具

- - 小惡魔 - 電腦技術 - 工作筆記 - AppleBOY
大家可以選擇透過 yum 或 apt Repository 方式安裝,下面介紹 apt 方式即可. 將 apt 伺服器寫入 /etc/apt/sources.list. VERSION 請至換 Ubuntu Server 版號,如果您想測試實驗性版本請加入底下連結. 根據不同的 MySQL 版本來選擇 XtraBackup 指令,可以參考 Choosing the Right Binary,所以大家不要用錯指令了.

使用Percona XtraBackup备份MySQL

- - searchdatabase
  Percona XtraBackup是一款开放源码,免费的MySQL热备份软件,以非阻塞方式执行备份InnoDB和XtraDB为存储引擎的数据库,是商业备份工具InnoDB Hotbackup的一个很好的替代品. 作者的前一家公司就花了不菲美元买了Hotbackup产品.     下载地址: http://www.searchdatabase.com.cn/softwaredownload_10241.htm.

Percona 的 MySQL High Availability 機制比較文

- - Gea-Suan Lin's BLOG
Percona 發了一篇「 High-availability options for MySQL, October 2013 update」,比較目前 MySQL 上常見的 High Availability 機制. 這些都是把 High Availability 做在 MySQL 上,讓前端的程式不需要操心的方式.