How to create high available Pycon application with MySQL techniques

Language

Chinese talk w. Chinese slides

Category

Databases

Python Level

Intermediate

Abstract

資料庫要維持資料的一致性和持久性,資料層的高可用和擴展性一向是應用系統架構設計的一個重要課題。MySQL 為使用者們提供自最容易實施的複製技術到能達,到5個9可用度的MySQL Cluster等各種高可用方案。同時您的Python應用使用MySQL的Python驅動程式-Connector/Python時也能配合各種資料庫高可用架構,只要在連結資料庫的參數上做一些簡單的設定,輕易的就能在不更改程式的狀況下使能的Python應用使用這些高可用解決方案,而成為真正的高可應用系統。

Description

要設計一個高可用Python應用系統時,除了要在執行環境使用叢集等技術支持高可用外,為其資料庫選擇適當的高可用解決方案,並使Python能善用這些架構也是至關重要。本演講將為會眾們介紹MySQL的高可用及高擴容技術和各種技術的適用場景,包括: * 以最簡易實施的MySQL Replication支持不掉資料的故障移轉 * 各類主備架構(包括共用磁碟,Clusterware,虚擬IP,DRBD和虛擬機等), * MySQL Fabric-支援在多台MySQL單機伺服器間自動故障移轉和資料庫分片,同時MySQL Connecto/Python也能使Python程式幾近透通的將Python對資料庫的操作送到適當的資料庫instance上。在資料庫發生故障時,自動將中斷的交易由發生故障的伺服務移轉到適當的伺服器 * MySQL Cluster - 提供5個9的高擴充性之分散式資料庫 * MySQL Group Replication-多主複製,提供寫的高可用 * MySQL Router-使Python應用只需將對資料庫操作要求送到一個節點(MySQL Router),由Router當做負載均衡器送到其下的多台MySQ。也能使Python做透通的故障移轉,在MySQL資料庫發生故障時自動將中斷節交易移到另一台MySQL 同時也介紹Python程式如何使用MySQL所提供的驅動器-MySQL Connecto/Python以設定參數的方式使用上述的高可用方案,使您的Python程式以幾近資料層透通的方式完成您所期望的高可用系統。

杜修文

Ivan Tu (杜修文)
Mr. Tu is an IT veteran with 30 years experience, since 2010 he work at Oracle MySQL Japan&APAC Sales Consultant team, he helps Greater China MySQL users implement MySQL, and promoting MySQL techniques , he also organize MySQL Community in Taiwan, please refer to https://www.facebook.com/groups/taiwanmysqlusergroup/ for MySQL Community details.