Todos a Galera !!!


Buenas a todos,

Os traigo una de las herramientas que mas me han gustado en el año 2015. Todagaleracluster_logo la gente de BI tiene siempre un cierto cariño a MySQL ya sea por que nos gusta, por que nos hemos acostumbrado a ella o por que es la base de datos Open Source mas extendida.

Yo cada vez mas estoy mas cerca de posgreSQL que de MySQL ya que tiene mejor rendimiento para el DWH.

Bueno vamos al tema. Galera que tiene de bueno esta herramienta.

Galera Cluster es una verdadero sistema Cluster Multimaster basado en replicación asíncrona.

Galera es una solución fácil de usar, de alta disponibilidad, sin pérdida de datos y escalabilidad.

Features

  • Replicaciòn Asincrona.
  • Active-active multi-master topology
  • Lectura y Escritura en cualquier cluster
  • Control automaticos de los nodos, cuando un nodo cae se le saca del cluster
  • Añadir un nodo en caliente
  • Replicaciòn paralela a nivel de row
  • Conexiones a cliete de manera nativa

Beneficios Ocultos

  • Sin latencia de esclavos
  • Sin perdidas de transacciones
  • Escalabilidad en lectura y escritura

La replicación de Galera es asíncrona , multi-master y tiene un plug-in para InnoDB. Es muy diferente de la replicación normal de MySQL, y aborda una serie de temas, incluyendo los conflictos de escritura al escribir en varios Masters, retraso de replicación y esclavos están fuera de sincronía con el maestro.

Los usuarios no tienen que saber qué servidor puede escribir en (el maestro) y que los escalvos se pueden leer (los esclavos).

galera_replication1Una aplicación puede escribir en cualquier nodo de replicación del clúster Galera y la transacción se compromete (eventos RBR) a continuación, se aplica en todos los servidores, a través de una replicación basada en la certificación.

Replicación basada en certificación es un enfoque alternativo para la replicación de bases de datos sincrónizada utilizando la comunicación de grupo y técnicas de transacción .

Un grupo mínimo de 3 nodos de Galera. La razón es que, debería haber un problema al aplicar una transacción en un nodo (por ejemplo, un problema de red o la máquina no responde), los otros dos nodos tendrán un quórum (es decir, una mayoría) y serán capaces de proceder ha cometer la transacción.

La replicaciòn de MySQL es parte de la base de datos estándar de MySQL, y es principalmente de naturaleza asíncrona. Las actualizaciones siempre se realizan en un maestro y éstos se propagan a los esclavos. Es posible crear una topología de anillo con múltiples maestros, sin embargo esto no es recomendable ya que es muy fácil para los servidores salir de la sincronización en caso de una fallo principal. No hay conmutación automática por error  o resincronización en estos casos.

La replicación es un plug-in de MySQL, y permite una configuración maestro-maestro para InnoDB. En una clúster de replicación todos los nodos son maestros y las aplicaciones pueden leer y escribir desde cualquier nodo. Las transacciones se han comprometido de forma sincrónica en todos los nodos. En caso de fallo de un nodo, los demás nodos seguirán funcionando y se mantiene hasta la fecha. Cuando el nodo que ha fallado vuelve a aparecer, se sincroniza automáticamente con los otros nodos antes de que se le permita añadirse de nuevo en el clúster, es decir,no se pierden datos cuando falla un nodo.

Aunque la  replicación es sincróna, es posible implementar una replicación a través de los centros de datos. La replicación síncrona se implementa tradicionalmente a través de 2-fase de confirmación, donde los mensajes se envían a todos los nodos de un clúster en una fase de ‘preparar’, y otro conjunto de mensajes se envían en una fase de “comprometerse”. Este enfoque es por lo general no es bueno para los nodos geográficamente lejanos o en distintos CPDS, debido a las latencias en el envío de mensajes entre los nodos.

Para recordar un poco las diferencias entre los motores

Funcionalidades específicas de InnoDB

  • transacciones ACID
  • bloqueo a nivel de registro (MyISAM sólo ofrece bloqueo a nivel de tabla)
  • restricciones de clave externa (foreign key constraints)
  • recuperación automática en caso de crash
  • compresión de tablas con posibilidad de lectura/escritura
  • tipos de datos espaciales(pero no índices espaciales)
  • Los datos son guardados en páginas en orden de clave primaria

Funcionalidades específicas de MyISAM

  • ejecución rápida de COUNT(*)s (cuando no se utilizan WHERE, GROUP BY, o JOIN)
  • indexación “full text”
  • ocupan menos espacio en disco que las tablas InnoDB
  • compresión elevada de tablas, pero las tablas comprimidas son de sólo lectura
  • tipos de datos e índices espaciales (R-tree)

Para los que la tengais que usar en pentaho os recomiendo  que mireis el driver jdbc que vais a usar, yo he tenido problemas con estos. Pero tengo que decir que con este sistema la (HA+Galera+MySQL 5.6) hemos sido capaces de mover una catidad muy grande de datos con un rendimiento aceptable.

[instalaciòn]

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s