Quais são os benefícios de usar o MySQL Cluster?

15

Eu nunca mergulhei minhas mãos no MySQL Cluster e quero saber como isso pode me beneficiar. Quando é melhor usá-lo e possui benefícios de desempenho?

RPK
fonte

Respostas:

5

O MySQL Cluster é projetado em torno de três princípios básicos:

  • Alta disponibilidade (nada compartilhado, replicação local e geográfica, batimento cardíaco integrado, failover automático e recuperação automática, etc.)

  • Escalabilidade de gravação e desempenho em tempo real (compartilhamento automático, otimizações na memória etc.)

  • Múltiplas interfaces de banco de dados (SQL e NoSQL)

Estes são discutidos em mais detalhes no documento a seguir (nota: é necessário registro): http://mysql.com/why-mysql/white-papers/mysql_wp_scaling_web_databases.php

A Localização de Consultas Adaptativa é um recurso da atual versão de desenvolvimento do MySQL Cluster 7.2 e melhora rapidamente o desempenho das operações JOIN, empurrando-as para os nós de dados, reduzindo significativamente o tráfego de rede - para abordar o ponto que Rolando enfatiza acima. Você pode ler mais sobre isso aqui: http://dev.mysql.com/tech-resources/articles/mysql-cluster-labs-dev-milestone-release.html

O MySQL Cluster está licenciado sob a GPL e pode ser baixado em dev.mysql.com, com ajuda on-line através dos fóruns: forums.mysql.com/list.php?25

Mat Keep
fonte
11
Ei @Mat, obrigado por se concentrar no lado positivo do MySQL Cluster. Prós e contras precisam ser destacados. Eu já fiz os contras. Você fez os profissionais. Dessa forma, experimentar as recompensas, alegrias, tristezas e ansiedades do MySQL Cluster é totalmente a critério daqueles que decidem implementar seu uso. Mesmo sendo GPL, o princípio ainda se aplica: DEIXE O COMPRADOR CUIDAR. +1 para sua resposta.
RolandoMySQLDBA 29/07
11
Olá Rolando - thx pela sua análise. Como você aponta, toda tecnologia tem seus casos de uso - alguns são adequados para o MySQL Cluster, outros não. Esta parte da documentação do MySQL compara o InnoDB (o mecanismo de armazenamento padrão do MySQL) com o MySQL Cluster e pode ajudar a identificar o que usar quando e onde: dev.mysql.com/doc/refman/5.1/en/mysql-cluster-compared.html
Mat Mantenha
5

Quando eu queria obter informações sobre o MySQL Cluster , o MySQL (antes da Sun o comprar) enviava um breve questionário, que eu gostaria de ter ainda. Uma das perguntas foi feita se suas tabelas tinham apenas chaves inteiras.

Embora o MySQL Cluster seja uma reclamação de ACID, ele não fornece um mecanismo de armazenamento adequado para dados com chaves compostas. Em alguns aspectos, você deve planejar seu uso como o de um MongoDB ou Cassandra em termos de layout e sharding de dados.

Você também deve considerar a parte mais irritante do MySQL Cluster: Comunicação de Rede. O NDB Cluster tende a ser falador entre os servidores. Até o Gig-E pode ficar de joelhos se fizer consultas de intervalo ou varreduras completas da tabela. Você deve ser disciplinado o suficiente para usar chaves primárias e chaves exclusivas, especialmente se seu aplicativo prosperar nessas chaves.

A menos que você siga essas simples observações, o MySQL Cluster fará muito mais mal do que bem.

RolandoMySQLDBA
fonte
> "ele não fornece um mecanismo de armazenamento adequado para dados com chaves compostas" @RolandoMySQLDBA, por que isso? Eu tenho esse problema e gostaria de saber algumas soluções alternativas.
Xer0x