Database MySQL su più server


11

Ok, davvero non so come chiedere cosa sto cercando di scoprire, che è probabilmente il motivo per cui la mia lettura e ricerca altrimenti non stanno dando nulla di relativo per dire. Quindi quello che ho attualmente è un singolo database MySQL, e so che prima o poi i dati si accumuleranno e finirò lo spazio su questo server. Quindi, prima che ciò accada, voglio mettere le cose in linea in modo da poter avere il database distribuito su più macchine una per il bilanciamento del carico e due puro fattore di archiviazione.

Quindi la mia domanda è: come funziona? Forse sto pensando anche a 1 dimensione qui ma non riesco a capire come funzionerebbe, è un DB che si riversa sulla macchina successiva e il successivo man mano che i dati crescono o sono singoli DB con lo stesso schema per ciascuno, in entrambi i casi non riesco proprio a immaginare nella mia testa figuriamoci entrare in una logica per prove future su cosa si sta attualmente lavorando. Dato che non vogliamo colpire il muro e fermarci tutto nel caso in cui i dati siano troppo per una macchina.

Quindi cosa devo leggere, ricercare, metodi, pratiche, ecc. Per mettermi sulla buona strada con questo?


Questo mi ha aiutato, sono un principiante quando si tratta di (mio) servizio sql su più macchine. Ho avuto qualche difficoltà a trovare le domande giuste da porre per entrare in questo spazio. +1 sia domande che risposte. ;)
James T Snell

Risposte:


8

Puoi davvero, è MySQL Clustering che ti serve.

Una caratteristica in particolare - " auto-sharding " - diffonderà i tuoi dati su più macchine. Il "ridimensionamento online" consente di aggiungere nuovi nodi se è necessaria maggiore capacità mentre il db è in esecuzione. Abbastanza bello Puoi scaricarlo qui .

Tuttavia, ci sono alcune altre cose che puoi considerare per risolvere il problema, che potrebbero essere più facili da ottenere:

Ottieni un disco rigido più grande!

Sembra un po 'ovvio, ma se potessi dire con sicurezza che un disco rigido da xxxGb ti durerebbe Y anni, allora potrebbe valere la pena farlo. È possibile acquisire un'immagine dell'unità e installarla su quella nuova oppure installarla come unità aggiuntiva e spostare i file di dati MySQL nella nuova unità. <

Dividi le tabelle su più database.

Dividere le tabelle su più database, che possono quindi essere archiviati su più unità. Windows Azure ha limiti di dimensione nei suoi database e Microsoft consiglia questo approccio. Migliora anche un po 'le prestazioni.

Puoi archiviare i dati?

Sei in grado di archiviare tabelle di grandi dimensioni su un'altra unità? I dati sono davvero necessari? Se è storico e richiesto solo come riferimento, è possibile impostare un processo di archiviazione che lo spinga in file su un'altra unità o in tabelle di archivio in un altro database che punta a file di dati su un'altra unità?


Questo è inteso come un sistema di produzione, in cui sì un certo tipo di archiviazione può essere effettuata nel tempo, ma in generale i dati previsti che verranno regolarmente richiamati da una manciata di tabelle saranno facilmente pochi terabyte. Tutto ciò nonostante il Clustering bit sia di grande aiuto. Dovrò fare qualche pesante lettura sull'argomento, grazie. L'HD più grande è purtroppo uscito, anche se, per me, molti dati su un singolo punto di errore rappresentano un grave rischio.
chris
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.