Base de datos MySQL en múltiples servidores

11

Ok, realmente no sé cómo preguntar qué estoy buscando para averiguar cuál es la razón por la cual mi lectura e investigación de otra manera no están dando nada relativo por decir. Entonces, lo que tengo actualmente es una sola base de datos MySQL, y sé que tarde o temprano los datos se acumularán y me quedaré sin espacio en este servidor. Entonces, antes de que eso suceda, quiero alinear las cosas para poder tener la base de datos distribuida en varias máquinas, una para el equilibrio de carga y dos factores de almacenamiento puro.

Entonces mi pregunta es, ¿cómo funciona eso? Tal vez estoy pensando también en 1 Dimensional aquí, pero no puedo entender cómo funcionaría, es un DB que se extiende a la siguiente máquina y la siguiente a medida que crecen los datos o son DB individuales con el mismo esquema para cada uno, De cualquier manera, no puedo imaginar en mi cabeza y mucho menos entrar en una lógica para futuras pruebas en las que se está trabajando actualmente. Como no queremos golpear la pared y detener todo en caso de que los datos sean demasiado para una máquina.

Entonces, ¿qué tengo que leer, investigar, métodos, prácticas, etc. para ponerme en el camino correcto con esto?

Chris
fuente
Esto me ayudó, soy un novato cuando se trata de (mi) servicio sql que abarca varias máquinas. He tenido un poco de dificultad para encontrar las preguntas correctas que hacer para entrar en este espacio. +1 preguntas y respuestas. ;)
James T Snell

Respuestas:

8

De hecho, puede usar MySQL Clustering .

Una característica en particular - " auto-sharding " - distribuirá sus datos a través de múltiples máquinas. La "escala en línea" le permite agregar nuevos nodos si necesita más capacidad mientras se ejecuta la base de datos. Muy genial. Puedes descargarlo aquí .

Sin embargo, hay algunas otras cosas que puede considerar para resolver el problema, que pueden ser más fáciles de lograr:

¡Consigue un disco duro más grande!

Suena un poco obvio, pero si pudiera decir con seguridad que un disco duro de xxxGb le duraría Y años, entonces valdría la pena. Puede tomar una imagen de la unidad e instalarla en la nueva, o puede instalarla como una unidad adicional y mover los archivos de datos MySQL a la nueva unidad. <

Dividir las tablas en múltiples bases de datos.

Tablas divididas en varias bases de datos, que luego se pueden almacenar en varias unidades. Windows Azure tiene limitaciones de tamaño en sus bases de datos y Microsoft recomienda este enfoque. También mejora un poco el rendimiento.

¿Puedes archivar datos?

¿Puede archivar tablas grandes en otra unidad? ¿Se necesitan realmente los datos? Si es histórico y solo se requiere como referencia, ¿puede configurar un proceso de archivo que lo inserte en archivos en otra unidad o en tablas de archivo en otra base de datos que apunte a archivos de datos en otra unidad?

greg84
fuente
Se pretende que sea un sistema de producción, en el que sí se puede hacer un poco de archivado con el tiempo, pero en general los datos esperados a los que recurrirán regularmente un puñado de tablas serán fácilmente de unos pocos terabytes. Aunque la parte de Agrupación ayuda mucho, tendré que leer mucho sobre el tema, gracias. Sin embargo, desafortunadamente, el HD más grande está fuera, esa cantidad de datos sobre un solo punto de falla para mí es un gran riesgo.
Chris