18.1.5.1 NDB 및 InnoDB 스토리지 엔진의 차이
MySQL Cluster의 NDB
스토리지 엔진은 분산 공유 아무것도 아키텍처를 사용하여 구현되어 있기 때문에 InnoDB
는 여러 가지 동작이 다릅니다. NDB
작업에 익숙하지 않은 사용자에게는 NDB 가지는 분산의 성질에 따라 트랜잭션, 외래 키 테이블의 제한 및 기타 특성에 대해 예기치 않은 동작이 발생할 수 있습니다. 다음 표에 그들을 보여줍니다.
기능 | | MySQL Cluster |
---|---|---|
MySQL Server 버전 | 5.6 | 5.6 |
| | |
MySQL Cluster 버전 | N / A | |
스토리지 제한 | 64TB | 3TB (각각 64G 바이트의 RAM을 갖춘 48 개의 데이터 노드를 바탕으로 한 현실적인 상한 디스크 기반의 데이터와 BLOB에 따라 늘어날 수 있습니다) |
외부 키 | 예 | MySQL Cluster NDB 7.3 이전 버전 : 아니요. ( MySQL Cluster NDB 7.3에서 사용할 수 있습니다. |
트랜잭션 | 모든 표준 타입 | |
MVCC | 예 | 아니오 |
데이터 압축 | 예 | 아니오 (MySQL Cluster의 체크 포인트 및 백업 파일은 압축 할 수 있습니다) |
큰 행 지원 (> 14K) | | (이러한 형식을 사용하여 매우 많은 양의 데이터를 저장하면 MySQL Cluster의 성능이 저하 될 수 있습니다) |
복제 지원 | MySQL 복제를 이용한 비동기 및 준 동기 복제 | MySQL Cluster에서의 자동 동기화 복제. MySQL 복제를 이용한 MySQL Cluster 간의 비동기 복제 |
읽기 작업의 확장 | 예 (MySQL 복제) | 예 (MySQL Cluster의 자동 파티셔닝, MySQL 복제) |
쓰기 작업의 확장 | 응용 프로그램 레벨의 분할 (샤드)가 필요합니다 | 예 (MySQL Cluster의 자동 분할이 응용 프로그램에 투명하게 이루어집니다) |
고 가용성 (HA) | 추가 소프트웨어가 필요합니다 | 예 (99.999 %의 가동 시간을 제공하도록 설계되어 있습니다) |
노드 장애 복구 및 장애 조치 | 추가 소프트웨어가 필요합니다 | 자동 (MySQL Cluster 아키텍처의 중요한 요소) |
노드의 장애 복구 시간 | 30 초 이상 | 일반적으로 1 초 미만 |
실시간 성능 | 아니오 | 예 |
인 메모리 테이블 | 아니오 | 예 (필요에 따라 일부 데이터를 디스크에 저장할 수 있습니다. 인 메모리 및 디스크의 데이터 저장이 영구적입니다) |
스토리지 엔진에 NoSQL 액세스 | 기본 memcached 인터페이스가 개발 중입니다 (MySQL Dev Zone 기사 " MySQL Cluster 7.2 (DMR2) : NoSQL, Key / Value, Memcached "를 참조하십시오) | 예 Memcached, Node.js / JavaScript와 Java, JPA, C ++ HTTP / REST를 포함한 여러 API |
동시 및 병렬 쓰기 | 지원되지 않습니다 | 동시 쓰기 위해 최적화 된 최대 48 개의 라이터 |
충돌 감지 및 해결 (여러 복제 마스터) | 아니오 | 예 |
해시 인덱스 | 아니오 | 예 |
온라인 노드 추가 | MySQL 복제를 이용한 읽기 전용 복제본 | 예 (모든 노드 유형) |
온라인 업그레이드 | 아니오 | 예 |
온라인 스키마 변경 | 예 (MySQL 5.6의 일부로). | 예. |