More Related Content
Similar to Percona server for MySQL 제품 소개 (20)
Percona server for MySQL 제품 소개
- 1. 표지, 목차, 간지
템플릿
© 2021 NeoClova Co.,LTD
Next Opensource Cloud Value
Percona Server for MySQL
㈜네오클로바
Update : 2021. 2. 8
소개자료
- 2. 표지, 목차, 간지
템플릿
목차
© 2021 NeoClova Co.,LTD
Ⅱ. Percona Server 5.7
1. New feature
2. Performance
3. Scalability
4. Flexibility
5. Reliability
6. Management
7. Diagnostics
Ⅰ. Percona Server for MySQL
1. Introduction
2. Storage Engine
3. Percona Server’s History
4. DBMS Comparison
5. Benchmark
Ⅲ. Percona Server 구축사례
1. Reference
- 3. 표지, 목차, 간지
템플릿
© 2021 NeoClova Co.,LTD
I. Percona Server for MySQL
1. Introduction
2. Storage Engine
3. Percona Server’s History
4. DBMS Comparison
5. Benchmark
- 4. © 2021 NeoClova Co.,LTD
4
1. All Percona Software is 100% Free and Open Source
2. No Restricted “Enterprise” version
3. MySQL과 기본적으로 구조 및 사용 방법 동일
4. GPL v2 License
5. Oracle로부터 자유로울 수 있음
https://www.percona.com/ http://www.neoclova.co.kr
Ⅰ. Percona Server for MySQL
1. Introduction
- 5. © 2021 NeoClova Co.,LTD
5
OPERATING SYSTEM / FILE SYSTEM / SAN / CLOUD
Application
CONNECTORS C JDBC ODBC
STORAGE LAYER EXTENSIBILITY
KERNEL EXTENSIBILITY
KERNEL
SQL Parser Optimizer
Cache/Buffer
Connection Pool
Locking
REPLICATION
BinLog API
Parallel Slave
GTID
Multi-Source
Transactional In-Memory Interoperability Scalability
CONNECT
Federated
PerconaFT TokuDB
RocksDB
WiredTiger
NoSQL
Search
Percona Server For MySQL
Authentication
Monitoring
Audit
PAM
PRODUCTION PLUG-INS
MyISAM
Memory
InnoDB
XtraDB
SQL
NoSQL
CRUD API
Archive
NET
Ⅰ. Percona Server for MySQL
1. Introduction
- 6. © 2021 NeoClova Co.,LTD
6
1. InnoDB(XtraDB)
InnoDB를 대체 하는 MVCC기반의 Storage Engine
멀티코어 시스템에서 더 나은 성능과 높은 워크로드를 가짐, 5.6이상 XtraDB = InnoDB
2. TokuDB
TokuTek사에서 개발한 Fractal-Tree Index구조의 Storage Engine
Index Data의 비단편화, 고효율적인 Data Compression, SSD최적화, Fast Data Recovery, Online DDL
+----------------------------+-----------+------------------+------+--------------+
| ENGINE | SUPPORT | TRANSACTIONS | XA | SAVEPOINTS |
+----------------------------+-----------+------------------+------+--------------+
| PERFORMANCE_SCHEMA | YES | NO | NO | NO |
| MRG_MYISAM | YES | NO | NO | NO |
| CSV | YES | NO | NO | NO |
| BLACKHOLE | YES | NO | NO | NO |
| MEMORY | YES | NO | NO | NO |
| TokuDB | YES | YES | YES | YES |
| MyISAM | YES | NO | NO | NO |
| ARCHIVE | YES | NO | NO | NO |
| InnoDB | DEFAULT | YES | YES | YES |
| FEDERATED | NO | NULL | NULL | NULL |
+----------------------------+-----------+------------------+------+--------------+
Ⅰ. Percona Server for MySQL
2. Storage Engine
- 7. © 2021 NeoClova Co.,LTD
7
Ⅰ. Percona Server for MySQL
3. Percona Server’s History
- 8. © 2021 NeoClova Co.,LTD
8
Feature MySQL Percona Server MariaDB
GA versions 5.5, 5.6, 5.7 5.5, 5.6, 5.7 5.5, 10.0, 10.1
License GPL, commercial(OEM) GPL GPL,LGPL, BSD
Storage Engines
Archive, Blackhole, CSV, Federated,
InnoDB(default),
Memory, MyISAM
Archive, Blackhole, CSV, Federated,
InnoDB(default),
Memory, MyISAM, TokuDB
Archive, Aria, Blackhole, Cassandra,
CSV, FederatedX, InnoDB(default),
Memory, MyISAM, OQGraph,
Sphinx-SE, TokuDB
Plugins
Auth, Auth Socket,
MemcacheD, SemiSync Repl
Auth PAM, Auth Socket,
Handlersocket, MemcacheD,
SemiSync Repl
Auth PAM, Auch Socket,
Connect SE, Handlersocket,
Sequence, Sphinx, Spider,
QueryCache Info,
SemiSync Repl
Thread Pool 5.5 Commercial ~ 5.5~ 5.1~
Backup
Mysqldump
mysqlbackup
Mysqldump
xtrabackup
Mysqldump
xtrabackup
Parallel Replication 5.6 (Per Schema) 5.6 (Per Schema) 10.0 (Per Instance)
GTID MySQL Style MySQL Style MariaDB Style
4. DBMS Comparison(MySQL based)
Ⅰ. Percona Server for MySQL
- 9. © 2021 NeoClova Co.,LTD
9
Feature MariaDB Oracle Percona Server PostgreSQL Tibero
GA version 5.5, 10.0, 10.1 10g, 11g, 12c 5.5, 5.6, 5.7 9.4, 9.5, 9.6 4, 5, 6
License GPL2 commercial GPL2 BSD commercial
Supports OS
Linux, Solaris,
FreeBSD, Windows
Linux, Solaris,
FreeBSD, Windows,
AIX, HP-UX, z/OS
Linux
Linux, Solaris,
FreeBSD, Windows,
Unix, HP-UX, *BSD
Linux, Solaris,
Windows, AIX,
HP-UX
표준 SQL 지원 지원 지원 지원 지원
Server Side Script
(SP)
지원 지원 지원 지원 지원
Replication
Master-Master,
Master-Slave
Master-Master
Master-Slave
Master-Master
Master-Slave
XtraDB Cluster
Master-Slave
Master-Master
Master-Slave
Partitioning
HASH,KEY,
RANGE,LIST
COMPOSITE
(only Local Index)
HASH,KEY,
RANGE,LIST,
INTERVAL
COMPOSITE
HASH,KEY,
RANGE,LIST
COMPOSITE
(only Local Index)
Control with Trigger
HASH,KEY,
RANGE,LIST
COMPOSITE
DB Link
FEDERATEDX
CONNECT
DBLINK
FEDERATED
CONNECT
Database Wrapper
(Beta)
DBLINK
HA
MHA,MMM,
Galera Cluster
RAC
MHA,MMM,
XtraDB Cluster
Streaming&pgpool TAC
Limit
Per Table(64T)
No M-View
No Connect by
Tablespace(64T)
No M-View
No Connect by
Per Table(32T)
4. DBMS Comparison
Ⅰ. Percona Server for MySQL
General
- 10. © 2021 NeoClova Co.,LTD
10
Functions
기능 MairaDB Oracle Percona Server PostgreSQL Tibero
Hint 기능 지원 지원 지원 지원 지원
In-line View (서브쿼리) 지원 지원 지원 지원 지원
Join 지원 지원 지원 지원 지원
Outer Join 지원 지원 지원 지원 지원
계층적 질의 미지원 지원 미지원 지원 지원
Array Processing 지원 지원 지원 지원 지원
분석 함수 지원 지원 지원 지원 지원
비용기반 옵티마이저 지원 지원 지원 지원 지원
내장 함수 지원 지원 지원 지원 지원
SQL 지원
기능 MairaDB Oracle Percona Server PostgreSQL Tibero
표준 SQL 지원 지원 지원 지원 지원
변형 SQL 지원 지원 지원 지원 지원
JDBC Driver 지원 지원 지원 지원 지원
ODBC Driver 지원 지원 지원 지원 지원
PHP Driver 지원 지원 지원 지원 지원
Embedded SQL 미지원 지원(PROC) 미지원 지원(C) 지원(tbESQL)
CLI Interface 지원 지원 지원 지원 지원
XA Transactions 지원 지원 지원 지원 지원
Threaded Application 지원 지원 지원 지원 지원
4. DBMS Comparison
Ⅰ. Percona Server for MySQL
- 11. © 2021 NeoClova Co.,LTD
11
가용성
기능 MariaDB Oracle Percona Server PostgreSQL Tibero
Auto Crash Recovery 지원 지원 지원 지원 지원
Log Mirroring 지원 지원 지원 지원 지원
Online Backup 지원(XtraBackup) 지원 지원(XtraBackup) 지원(PITR) 지원
Active Cluster 지원(Galera Cluster) 지원(Oracle RAC) 지원(XtraDB Cluster)
지원
(Streaming&pgpool)
지원(Tibero TAC)
Disaster Recovery MHA, MMM Oracle DataGuard MHA, MMM Log Shipping Tibero Standby
Online DDL 지원 지원 지원 지원 지원
Two-phase Commit 지원 지원 지원 지원 지원
4. DBMS Comparison
Ⅰ. Percona Server for MySQL
Management Tools
기능 MairaDB Oracle Percona Server PostgreSQL Tibero
Admin Tool Webyog (GUI) OEM (GUI) Percona Toolkit(CLT) pgAdmin(GUI) tbAdmin
Interactive SQL 수행
MariaDB Command-
Line Tool
SQLPlus
MySQL Command-Line
Tool
psql tbSQL
Data Loader Load Data SQL*Loader Load Data pgloader tbLoader
Data 추출 및 적재 Tool mysqldump Export/Import mysqldump Data wizard Export/Import
마이그레이션 툴 서드파티에서 지원
Oracle Migration
WorkBench
서드파티에서 지원 Pg_dump tbMigrator
C Pre-compiler 미지원 proc 미지원 c tbpc
- 12. © 2021 NeoClova Co.,LTD
12
기능 MairaDB Oracle 11g Percona Server PostgreSQL Tibero
테이블 지원 지원 지원 지원 지원
복합 인덱스 지원 지원 지원 지원 지원
뷰 지원 지원 지원 지원 지원
시퀀스 지원 지원 지원 지원 지원
DB 링크 제한적 지원 지원 제한적 지원 지원 지원
Synonym(동의어 ) 미지원 지원 미지원 지원 지원
권한관리 지원 지원 지원 지원 지원
Role(권한 부여) 지원 지원 지원 지원 지원
프로시저 지원 지원 지원 지원 지원
저장 함수 지원 지원 지원 지원 지원
패키지 미지원 지원 미지원 지원 지원
트리거 지원 지원 지원 지원 지원
4. DBMS Comparison
Ⅰ. Percona Server for MySQL
Object 지원
- 13. © 2021 NeoClova Co.,LTD
13
기능 MairaDB Oracle Percona Server PostgreSQL Tibero
Thread Pool 지원 지원 지원 미지원 지원
Multi-Version
Concurrency Control
(MVCC)
지원(InnoDB) 지원 지원(InnoDB) 지원 지원
로우 레벨 잠금 지원 지원 지원 지원 지원
Lock Escalation 회피 통한
Table Lock 방지
지원 지원 지원 지원 지원
Index
B-Tree 지원 지원 지원 지원 지원
Fractal-Tree 지원 미지원 지원 미지원 미지원
시스템 모니터링 View 지원 지원 지원 지원 지원
SQL Trace(추적) 기능 지원 지원 지원 지원 지원
복잡한 트랜잭션 처리 지원 지원 지원 지원 지원
Partitioning
Range 지원 지원 지원 지원 지원
List 지원 지원 지원 지원 지원
Hash 지원 지원 지원 지원 지원
Composite
(서브파티션)
지원 지원 지원 지원 지원
4. DBMS Comparison
Ⅰ. Percona Server for MySQL
고성능
- 14. © 2021 NeoClova Co.,LTD
14
1) Throughput : Bench Mark MySQL-5.6 vs. Percona 5.6
https://www.percona.com/blog/2013/10/08/a-closer-look-at-percona-server-5-6/
5. Benchmark
Ⅰ. Percona Server for MySQL
- 15. © 2021 NeoClova Co.,LTD
15
2) Response Time : Bench Mark MySQL-5.6 vs. Percona 5.6
https://www.percona.com/blog/2013/10/08/a-closer-look-at-percona-server-5-6/
5. Benchmark
Ⅰ. Percona Server for MySQL
- 16. © 2021 NeoClova Co.,LTD
16
https://www.percona.com/blog/2016/03/17/percona-server-5-7-performance-improvements/
3) OLTP R/W : Bench Mark MySQL-5.7 vs. Percona 5.7
innodb_thread_concurrency 조정후에도
Percona Server 25~30% 처리량 높음
5. Benchmark
Ⅰ. Percona Server for MySQL
- 17. © 2021 NeoClova Co.,LTD
17
4) Throughput & Latency : Bench Mark MySQL-5.7 vs. Percona 5.7
innodb_thread_concurrency 조정후에도
Percona Server 15~25% 대기시간 감소
https://www.percona.com/blog/2016/03/17/percona-server-5-7-performance-improvements/
5. Benchmark
Ⅰ. Percona Server for MySQL
- 18. 표지, 목차, 간지
템플릿
© 2021 NeoClova Co.,LTD
Ⅱ. Percona Server 5.7
1. New feature
2. Performance
3. Scalability
4. Flexibility
5. Reliability
6. Management
7. Diagnostics
- 19. © 2021 NeoClova Co.,LTD
19
1. Merged Features and Functionality from MySQL 5.7
2. Performance
3. Scalability
4. Flexibility
5. Reliability
6. Management
7. Diagnostics
http://www.percona.com
1. New feature
Ⅱ. Percona Server 5.7
- 20. © 2021 NeoClova Co.,LTD
20
1. Query Cache
show processlist에서 mutex waiting 확인가능,
comment 무시 가능(query_cache_strip_comments).
2. NUMA support
mysqld_safe 옵션에 flush_caches 통해서 Node간 균등성 보장.
3. Thread Pool
connectio의 우선순위 스케줄링, 우선순위 낮은 대기큐 제어, 긴 NW 대기처리.
4. Multi-threaded LRU flusher
기존 Percona Server 5.6에서 제한된 형태로 제공하던 이 기능을
Page Cleaner Thread에서 LRU Flusher Thread로 분리하여 I/O 부하 성능을 개선
1) LRU flushing을 위한 Multi Thread , 2) 독립적인 LRU Thread 구성
5. Parallel double-write buffer
하나의 double-wirte buffer에서 Disk Wirte작업시 병목현상 해소하기 위해서
각 buffer_pool_instance 마다 double-write buffer 배치해서 뮤텍스 경합해소
1) innodb_parallel_doublewrite_path 추가
2) 기존 system tablespace와 분리되어 있어서 인스턴스 버전간 호환성 제공
3) innodb_flush_method 와의 상호작용
2. Performance
Ⅱ. Percona Server 5.7
- 21. © 2021 NeoClova Co.,LTD
21
1. Buffer Pool 개선
버퍼풀의 뮤텍스 경합을 줄이기 위해서 Single 뮤텍스를 6개의 기능별 뮤텍스로 분할.
2. Buffer Pool Mutex 경합 확인
show engine innodb status의 SEMAPHORES sectio통해서 확인 가능.
3. InnoDB IO 확장성
innodb_use_global_flush_log_at_trx_commit 통한 innodb_flush_log_at_trx_commit의 제어가능.
3. Scalability
Ⅱ. Percona Server 5.7
- 22. © 2021 NeoClova Co.,LTD
22
1. log_warnings_suppress 통한 경고메시지 표시안함
5.7.11에서 log_statements_unsafe_for_binlog로 대체됨.
2. 향상된 MEMORY 스토리지 엔진
고정길이 로우포맷 에서 가변길이 로우포맷을 지원하도록 개선됨.
3. Binlog 파일수의 제한 (max_binlog_files)
4. 확장된 SELECT INTO OUTFILE/DUMPFILE 통해 NW 또는 다른파티션으로의 IO작업 가능
5. 개별쿼리를 위한 변수문 제공.
Ex) SET STATEMENT max_execution_time=1000 FOR SELECT name FROM name ORDER BY name;
6. Mysqlbinlog에 압축과 SSL옵션 지원.
7. Slow Query Log에 대한 Rotation and Expiration지원
max_slowlog_size , max_slowlog_files 통한 slow query log에 용량관리.
8. Proxy Protocol 지원 (proxy_protocol_networks)
9. 세션당 server_id부여해서 다중마스터 복제의 루프감지기능 제공(pseudo_server_id)
10. 사전적 압축된 컬럼 지원.
Ex) ,b BLOB COLUMN_FORMAT COMPRESSED WITH COMPRESSION_DICTIONARY xxx )
4. Flexibility
Ⅱ. Percona Server 5.7
- 23. © 2021 NeoClova Co.,LTD
23
1. 너무 많은 Connection 연결 경고
log_error_verbosity >2 경우 표시함(log_warnings대신 사용할 것을 권고)
2. 손상된 테이블의 처리
손상이 수정되는 동안 DB사용가능하도록 함.(innodb_corrupt_table_action)
5. Reliability
Ⅱ. Percona Server 5.7
- 24. © 2021 NeoClova Co.,LTD
24
1. Percona Toolkit UDF
3개의 빠른 checksum hashing UDF를 제공. (fnv_udf, fnv1a_udf, murmur_udf)
2. 유휴 트랜잭션의 종료
innodb_kill_idle_transaction(kill_idle_transaction)을 통한 임계값이상의 idle상태면 트랜잭션 종료
3. Storage Engine의 강제적용
enforce_storage_engine 옵션을 통해서 sql_mode=NO_ENGINE_SUBSTITUTION시 명시적 제어가능
4. Utility User 기능
시스템 접근권한은 있고, 사용자 스키마에 제한적 접근이 가능한 유저 부여가능
5. 페이지 추적기능
6. PAM 인증 / Audit Log Plugins
7. 빠른 인덱스 생성
8. 백업의 잠금처리
9. 확장된 SHOW GRANTS
6. Management
Ⅱ. Percona Server 5.7
- 25. © 2021 NeoClova Co.,LTD
25
Ⅱ. Percona Server 5.7
1. User Statistics 진단
userstat, thread_statistics 변수와 INFORMATION_SCHEMA의 테이블들로 사용자별 session 진단 가능
2. Slow Query Log
pt-query-digest도구를 통해서 유사쿼리집계, 필터링, 세부적인 제어가 가능
3. 확장된 SHOW ENGINE INNODB STATUS
4. Thread기반 프로파일링 지원(OS지원 경우)
5. 확장성 측정을 위한 매트릭스
추가 플러그인 기능을 통해서 서버성능에 대한 Insight를 제공
mysql>INSTALL PLUGIN scalability_metrics SONAME ‘scalability_metrics.so’;
mysql>show global variables ‘scalability_metrics%’;
6. 응답시간 분포정보 제공
수행 query 에 대한 정확한 분포정보를 제공.
7. Diagnostics
- 27. © 2021 NeoClova Co.,LTD
27
More than 3000 customers
Ⅲ. Percona Server 구축사례