DBMS Maria DB HA Solution Maria DB Galera
오픈소스 DBMS Maria. DB와 HA Solution
목차 Ⅰ. Maria. DB Ⅲ. Galera Cluster Ⅰ-1. Maria. DB Ⅰ-2. Maria. DB 특징 Ⅰ-3. My. SQL vs Maria. DB Ⅱ. MHA Ⅱ-1. Ⅱ-2. Ⅱ-3. Ⅱ-4. MHA MHA Ⅲ-1. Ⅲ-2. Ⅲ-3. Ⅲ-4. Galera Cluster 개요 Architecture Feature limitation Ⅳ. Tungsten Replicator 개요 Architecture 장애 처리 구조 0. 56 New Feature Ⅳ-1. Ⅳ-2. Ⅳ-3. Ⅳ-4. Ⅳ-5. Tungsten Oracle to Replicator 개요 Replicator Architecture Replicator 적용 환경 Replicator VS OGG My. SQL Replication
Ⅰ. Maria. DB 1. Maria. DB 2. Maria. DB 특징 3. My. SQL vs Maria. DB
Ⅰ. Maria. DB 2. Maria. DB 특징 My. SQL과 호환성 § § 데이터와 테이블 정의 파일(. frm)이 바이너리 호환이 된다. 모든 클라이언트 API, 프로토콜, 구조가 동일하다. 모든 파일이름과 바이너리, 경로, 포트, 소켓 등이 동일하다. 모든 My. SQL 커넥터(PHP, Perl, 파이썬, 자바, . NET, My. ODBC, Ruby, My. SQL C Connector 등)가 Maria. DB와 동일 하게 작용 § 또한 Maria. DB도 동일한 커넥터를 제공 성능 개선 § § § 옵티마이저의 향상 (서브쿼리 사용 가능) 2배 이상 빠르고 안전한 복제 My. ISAM engine 속도 개선 (4배 이상) _v 5. 2 Memory 엔진 용 인덱스 속도 개선 Built in Thread pool _v 5. 5 New Feature New Storage Engine § § § § § Aria Storage Engine (v 5. 1) Xtra. DB Storage Engine (v 5. 1) §Vritual Column (v 5. 2) Federated. X Storage Engine (v 5. 1) OQGRAPH Storage Engine (v 5. 2) Sphinx. SE Storage Engine (v 5. 2) Cassandra Storage Engine (v 10. 0) Connect Storage Engine (v 10. 0) Sequence Storage Engine (v 10. 0) Spider Storage Engine (v 10. 0) Tuku. DB Storage Engine (v 10. 0) §Faster join and subquery (v 5. 3) §Microseconds in Maria. DB (v 5. 3) §GIS 기능 지원 (v 5. 3) §Pool of Thread (thread pool 제공) (v 5. 5) §Dynamic Column (v 10. 0) §Role (v 10. 0) §Global Transaction ID (v 10. 0) §Multi source replication (v 10. 0) §Parallel replication (v 10. 0) §SHOW EXPLAIN (v 10. 0) §Insert, update EXPLAIN (v 10. 0)
Ⅰ. Maria. DB 3. My. SQL vs Maria. DB Compare Products My. SQL 5. 6 Maria. DB 10 Parallel Slave Replication Single threaded per database V Multi-source Replication V Limited V Sharding - Spider Storage Engine 3 rd party V Toku. DB Storage Engine 3 rd party V V V 3 rd party V Engine Independent Table Statistics V Subquery Optimizations V Histogram Stats for Non-Indexed Columns V Fusion-io specific enhancements V Performance Schema V V Improved thread pool My. SQL Enterprise only V SCALABILITY Global Transaction ID Table Partitioning: Improvements PERFORMANCE Toku. DB Storage Engine
Ⅰ. Maria. DB 3. My. SQL vs Maria. DB Compare Products My. SQL 5. 6 Maria. DB 10 CONNECT storage engine V Sequence storage engine V No. SQL Cassandra Storage Engine V Dynamic Columns V No. SQL Handlersocket interface V No. SQL memcache interface V Improved table discovery V SHOW PLUGINS SONAME V SHUTDOWN Command V Kill query by query ID V SHOW EXPLAIN Command V Per-thread Memory Statistics V Improved Error Messages V Online ALTER TABLE V V V Audit Plugin My. SQL Enterprise only V PAM Authentication Plugin My. SQL Enterprise only V NOSQL CAPABILITIES OPERATIONS SECURITY & COMPLIANCE Role-based access control
Ⅱ. MHA 1. MHA 개요 2. MHA Architecture 3. MHA 장애 처리 순서 4. MHA 0. 56 New Feature
Ⅱ. MHA 2. MHA Architecture - Basic Architecture Application Server MHA Zone Replication Zone Master 감지 … MHA Manager 장애 처리를 위한 파일 Active Master 장 애 발 생 Slave #1 Slave #n Application Server MHA Zone Replication Zone Binary log Copy … Save_binary_logs Apply_diff_relay_logs MHA Manager Active Master Relay log 적용 Slave #1 Slave #n
Ⅱ. MHA 2. MHA Architecture - MHA & Pacemaker Architecture Application Server MHA Zone Replication Zone Pacemaker Zone Noninteractive Master Failover Fencing … MHA Manager Active Master Slave #1 Slave #n § MHA는 Pacemaker와 같이 사용 가능하며, 이 경우 MHA는 My. SQL의 Failover를 담당하고 Pacemaker는 Server 또는 IP 등을 관리 § MHA의 Auto Failover를 사용하지 않고 수동 Failover를 이용하여 Pacemaker에 의해 수행
Ⅱ. MHA 3. MHA 장애 처리 순서 - MHA 장애 처리 5단계 1. Configuration Check 1 -1. Check Connect to server 1 -2. Find Dead Server and Alive Server 2. Dead Master Shutdown 2 -1. Stop Slave IO Thread 2 -2. Run master_ip_failover and shutdown script 3. Master Recovery 3 -1. Getting Lastest Slaves 3 -2. Saveing Dead Master’s binlog file 3 -3. Determining New Master 3 -4. New Master Diff Log Generation 3 -5. New Master Log Apply 3 -6. Run Master_ip_failover script 4. Slaves Recovery 4 -1. Starting Parallel Slave Diff Log Generation 4 -2. Starting Parallel Slave Log Apply 5. New Master Cleanup 5 -1. Resetting Slave info on the New Master 5 -2. Clearing Slave info 데이터 동기화 시점 총 4번의 connection Check
Ⅱ. MHA 4. MHA 0. 56 New Feature § My. SQL 5. 6 GTID 지원 § My. SQL 5. 6 Multi-Thread Slave 지원 § My. SQL 5. 6 Binlog checksum 지원 § mysqlbinlog streaming host 지원 § mysqlbinlog 위치 지원 § ping_type=Select / Connect 이외 insert 추가 § master_ip_online_change_scrip에 --orig_master_is_new_slave, --orig_master_ssh_user and --new_master_ssh_user option 추가
Ⅲ. Galera Cluster 1. Galera Cluster 개요 2. Galera Cluster Architecture 3. Galera Cluster Feature 4. Galera Cluster limitation
Ⅲ. Galera Cluster 1. Galera Cluster 개요 § Codership에서 2007년부터 개발되기 시작한 Galera Cluster는 Synchronous Mulit Master Cluster 제품으로 My. SQL Cluster와는 달리 NDB를 사용하지 않고 My. SQL(Inno. DB), Maria. DB, Percona (Xtra. DB)를 지원 § My. SQL은 Codership Site(http: //www. galeracluster. com)에서 galera wsrep provider와 My. SQL Server Version(5. 5, 5. 6)을 다운 받으실 수 있으며 Maria. DB는 Maria. DB Site(www. mariadb. org)에서 Maria. DB Galera Cluster 5. 5 Series를 다운로드 가능하고, Percona는 Percona Xtra. DB Cluster로 불리고 있으며 Percona Site(www. percona. com)에서 다운로드 가능
Ⅲ. Galera Cluster 2. Galera Cluster Architecture § wsrep API – DBMS 및 Replication provider를 관리하는 API - wsrep hooks – DBMS 엔진 안에서 작동하는 wsrep API. - Galera provider – Galera Library를 통해 구현된 wsrep API § certification – write set을 준비하고 인증 수행을 담당하는 layer § replication – replication protocol을 관리하고 통합 순서화 기능을 제공 § GCS framework – Group Communication 시스템을 위한 Architecture 제공
Ⅳ. Tungsten Replicator 1. Tungsten Replicator 개요 2. Tungsten Replicator Architecture 3. 적용 환경 4. Tungsten Replicator Vs OGG 5. Oracle to My. SQL Replication
Ⅳ. Tungsten Replicator 1. Tungsten Replicator 개요 § Tungsten Replicator는 Continunet에서 개발한 Open source로서 기본 솔루션을 통해 높은 성능과 향상된 Replication 기능 을 제공 § Tungsten Replicator는 GTIDs 기반의 향상된 기능과 필더를 포함한 파이프라인 처리 등을 통해 Multi-Master, Star, Fan-In 방식의 다양한 Topology를 제공 § 온라인 백업과 복제를 통해 간단하게 Slave를 추가 하거나 문제가 있는 Slave 복구가 가능 § My. SQL, Oracle, Postgre. SQL 등에서 사용이 가능하며, Extractor(My. SQL, Oracle, Postgre. SQL)에서 Applier(My. SQL, Oracle, Postgre. SQL, Mongo. DB, Vertica, etc)로 데이터 전송이 가능
Ⅳ. Tungsten Replicator 2. Tungsten Architecture My. SQL to My. SQL
Ⅳ. Tungsten Replicator 2. Tungsten Architecture Oracle to My. SQL
Ⅳ. Tungsten Replicator 3. Tungsten Replicator 적용 환경 적용 가능 구성
Ⅳ. Tungsten Replicator 4. Tungsten Replicator vs OGG 지원 OS Tungsten Replicator Oracle Golden Gate Linux – Red. Hat, Centos, Ubuntu, etc (Primary platform) Linux Solaris (Secondary platform) Windows Mac OS X (Secondary platform) Solaris Windows (Limited platform) HPUX BSD (Limited platform) AIX 지원 DBMS Tungsten Replicator Oracle Golden Gate My. SQL (Primary platform) Oracle 10 g. R 2, 11 g (Primary platform) My. SQL Postgre. SQL (Primary platform) Sybase Drizzle (Secondary platform) SQL Server Mongo. DB (Limited platform) DB 2
Ⅳ. Tungsten Replicator 4. Tungsten Replicator vs OGG Topology Tungsten Replicator Oracle Golden Gate
Ⅳ. Tungsten Replicator 5. Oracle to My. SQL Replication 제약 사항 § Oracle의 Change DATA Contorl(CDC) System을 이용해 변경 데이터를 수집하므로 Oracle Edition에 따라 CDC모드가 제한 Edition Synchronous CDC Asynchronous CDC Standard Edition (SE) YES NO Enterprise Edition (EE) YES § CDC Model에 따라 다음의 Data Type은 미지원 Synchronous CDC Asynchronous CDC BFILE LONG ROWID UROWID object types (for example, XMLType) BLOB CLOB NCLOB § CDC를 이용하여 데이터를 수집하기 때문에 하나의 Tablespace 당 변경 정보를 저장하기 위한 1개의 CDC Tablespace가 필요함
Ⅴ. Customer customer
감사합니다. For the Better Open Source World!! Service Call : 02 -866 -2179 Email : Support@osskorea. co. kr
- Slides: 30