MySQL Cluster CGE
- MySQL Cluster 7.5
데이터 노드 당 128 TB + 이상 사용 가능 - 99.999 Availability
- In-Memory Database Delivering 200 Million QPS
- Auto-sharding for Write-scalability
- SQL & NoSQL APIs
- Multi-site Clusters with Active Active Geographical Replication
- Online Scaling & Schema Upgrades
- MySQL Cluster Auto-Installer
- MySQL Cluster Manager
- 24*7 Technical Support
Architecture
Features
샤딩
새로운 노드는 온라인중에 추가할 수 있으며, 높은 읽기 로드 중에도 데이터베이스 가용성과 성능의 스케일링이 가능합니다.
또한 이는 Application 에 무관하게 Cluster 내에서 구현 가능합니다.
사용자의 요청은 어떤 노드에서도 받을 수 있으며, 이 요청은 데이터가 존재하는 위치로 전파됩니다.
Memory - Optimized table
memory optimized tables 의 경우, 지연에 민감한 app 에 대해 MySQL Cluster 는 20억 QPS 의 응답속도를 지원합니다.
더불어 Async 쓰기로 디스크 I/O 의 병목을 조정할 수 있습니다.
Sub-Second Failover and Self-Healing Recovery
발견 된 실패는 자동으로 감지하여 다른 정상 노드로 페일오버 됩니다.
이후 실패가 발생한 노드는 자동 리커버 과정을 통해 클러스터로 복귀합니다.
이러한 일련의 과정이 전부 자동으로 이루어지어 유지보수의 부담을 경감하고 있습니다.
On-Line Operations : Scaling, Repartitioning and Maintenance
Re-sharding, backups, patching, upgrades 와 같은 유지보수 작업들을 온라인중에 수행할 수 있습니다.
Cross Data Center Deployment : Reaching a Global Audience
Geographic Replication 을 지원하여 Data center 에 문제가 생겨도 다른 Data center 의 Replication 으로 서비스를 지속할 수 있습니다.
SQL and NoSQL Interfaces for Developer Agility
개발 유연성을 위해 다음의 기술을 제공하고 있습니다.
- Relational queries using the SQL API
- Key/Value and Key/Object web services using the JavaScript, Memcached or REST/HTTP APIs
- Enterprise applications using the ORM ClusterJ and JPA APIs
- Real-time services using the C++ NDB API
Schemaless Data Structures with the Memcached API
Benchmarking
듀얼 소켓 ( 2.6 GHz , 8 core Intel servers ) , RAM : 64 GB, LUNUX ( 인피니밴드로 연결 )
8 노드 구성을 한다면 초당 500 만 건의 업데이트가 처리 가능합니다.
다른 벤치마킹 결과는 https://www.mysql.com/why-mysql/white-papers/guide-to-scaling-web-databases-with-mysql-cluster/
Requirements
- OS : Linux, Oracle Solaris, Microsoft Windows
- HDD : 18 GB + ( 3GB minimum )
- MEMORY : 16 GB + ( 1 GB minimum )
- NETWORK : minimum - Gigabit Ethernet
참고
MySQL Cluster CGE : https://www.mysql.com/products/cluster/