나는 MySQL Cluster에 손을 담그지 않았으며 그것이 어떻게 나에게 도움이되는지 알고 싶다. 언제 사용하는 것이 가장 좋으며 성능상의 이점이 있습니까?
답변
MySQL Cluster는 3 가지 핵심 원칙에 따라 설계되었습니다.
-
고 가용성 (공유 없음, 로컬 및 지리적 복제, 통합 심장 박동, 자동화 된 장애 조치 및 자체 복구 복구 등)
-
쓰기 확장 성 및 실시간 성능 (자동 샤딩, 인 메모리 최적화 등)
-
다중 데이터베이스 인터페이스 (SQL 및 NoSQL)
이에 대해서는 다음 백서에서 자세히 설명합니다 (참고, 등록 필요).
http://mysql.com/why-mysql/white-papers/mysql_wp_scaling_web_databases.php
Adaptive Query Localization은 현재 MySQL Cluster 7.2 개발 릴리스의 기능으로, JOIN 작업을 데이터 노드로 푸시 다운하여 네트워크 트래픽을 크게 줄여 Rolando가 앞서 언급 한 지점을 해결함으로써 JOIN 작업의 성능을 빠르게 향상시킵니다. 자세한 내용은 여기를 참조 하십시오 :
http://dev.mysql.com/tech-resources/articles/mysql-cluster-labs-dev-milestone-release.html
MySQL Cluster는 GPL에 따라 라이센스가 부여되며 포럼을 통해 온라인 도움말을 통해 dev.mysql.com에서 다운로드 할 수 있습니다. forums.mysql.com/list.php?25
답변
MySQL Cluster 에 대한 정보를 얻고 싶을 때 , MySQL은 (Sun이 구입하기 전에) 간단한 설문지를 보냈는데, 여전히 그래도 좋겠다. 질문 중 하나에 테이블에 정수 키만 있는지 묻습니다.
MySQL 클러스터는 ACID 규격이지만 복합 키가있는 데이터에 적합한 스토리지 엔진을 제공하지는 않습니다. 어떤 측면에서는 데이터 레이아웃 및 샤딩 측면에서 MongoDB 또는 Cassandra와 같은 사용량을 계획해야합니다.
또한 MySQL Cluster의 가장 성가신 부분 인 네트워크 통신을 고려해야합니다. NDB 클러스터는 서버간에 혼잡 한 경향이 있습니다. 범위 쿼리 또는 전체 테이블 스캔을 수행하는 경우 Gig-E도 무릎을 꿇을 수 있습니다. 기본 키와 고유 키를 사용할 수 있도록, 특히 응용 프로그램에서 이러한 키를 사용하는 경우 충분히 훈련을 받아야합니다.
이 간단한 관찰 사항을 준수하지 않으면 MySQL 클러스터는 좋은 것보다 더 해를 끼칩니다.