Continuiamo la nostra serie sull'ottimizzazione di MySQL concentrandoci sulle differenze e le somiglianze tra MariaDB e MySQL. MariaDB è un'alternativa popolare all'utilizzo di MySQL tradizionale per l'hosting di database. Il libero mercato dell'hosting consente ad altri attori di competere con la soluzione di database di lunga data, MySQL. MariaDB è l'alternativa più importante a MySQL ed è una delle preferite dai giganti del settore come Google, Craigslist, Wikipedia, Arch Linux, RedHat, CentOS, Fedora e cPanel. In un confronto diretto delle prestazioni, MariaDB balza in testa al gruppo grazie all'ottimizzazione delle prestazioni, alla facilità di conversione e alla compatibilità.
Perché passare a MariaDB?
MariaDB è principalmente un clone di MySQL, ma fornisce anche numerosi miglioramenti rispetto all'esecuzione dell'istanza MySQL standard. MariaDB punta a una sostituzione drop-in di MySQL, il che rende il passaggio indolore e semplice. Combinando la semplicità del passaggio con un lungo elenco di miglioramenti, MariaDB porta in tavola sia prestazioni che funzionalità all'avanguardia. Di seguito sono riportati alcuni dei suoi punti di forza rispetto a MySQL standard.
Altre opzioni per i motori di archiviazione: Ci sono 12 nuovi storage engine integrati in MariaDB. Tra questi ci sono CONNECT, Spider e SphinxSE. Visita la loro pagina sui motori di archiviazione per un elenco completo di questi motori, come funzionano e come sfruttarli per ottimizzare il database.
Miglioramenti alla velocità: MariaDB mette in mostra molti nuovi miglioramenti della velocità rispetto direttamente a MySQL standard. Queste prestazioni migliorate fanno sì che MariaDB si distingua dalle prestazioni di base dei tradizionali server MySQL. Come MySQL, MariaDB ha dozzine di funzionalità per l'ottimizzazione della velocità, inclusi l'accesso al disco, miglioramenti JOIN e EXPLAIN, sottoquery, tabelle/viste derivate, controllo dell'esecuzione e controllo dell'ottimizzatore.
Indici/Cache più veloci: Quando si utilizza il motore di archiviazione MEMORY, MariaDB può completare le istruzioni INSERT fino al 24% più velocemente rispetto ai tradizionali server MySQL, oltre a CHECKSUM TABLE e MyISAM Segment Key Cache 4 volte più veloci.
Pool di connessione più veloce e più grande: MariaDB beneficia di un pool migliorato di thread che funzionano più velocemente e supportano fino a oltre 200.000 connessioni dove MySQL standard non è all'altezza.
Replica migliorata: MariaDB offre una replica più rapida e sicura con aggiornamenti fino a 2 volte più veloci rispetto alle tradizionali configurazioni di replica MySQL. Ora possibile, la replica parallela consente l'esistenza di configurazioni Attivo/Attivo o Master/Master. La replica di MariaDB è compatibile con le versioni precedenti con i server MySQL, quindi è possibile migrare il tuo cluster su MariaDB utilizzando un nodo alla volta.
Nuove estensioni/funzionalità: Ci sono diverse nuove estensioni e funzionalità, solo per citarne alcune, le istruzioni WITH, JSON e KILL. DECIMAL vede un aumento da 30 a 38 decimali mentre KILL ALL interroga per un utente specificato.
Elenco delle funzionalità: Il sito Web di MariaDB disponibile è un elenco completo di miglioramenti e funzionalità, che si trova qui:MariaDB e funzionalità di MySQL.
Qual è lo svantaggio dell'utilizzo di MariaDB?
Il progetto MariaDB è interamente open source e gratuito, a differenza di MySQL che utilizza la doppia licenza per mantenere proprietarie le funzionalità specifiche dell'edizione Enterprise. Gli sviluppatori di MariaDB aggiornano e migliorano attivamente con funzionalità all'avanguardia che MySQL standard non offre.
Caratteristiche mancanti: MySQL utilizza del codice proprietario nella sua Enterprise Edition. MariaDB non ha accesso a questo contenuto proprietario ed è un closed source, il che significa che le funzionalità sono disponibili solo per gli utenti di MySQL Enterprise.
Mitigazione: MariaDB ha affrontato questa preoccupazione consentendo plug-in alternativi open source praticabili per MariaDB, fornendo le stesse funzionalità offerte da MySQL Enterprise Edition. Ciò consente alla stragrande maggioranza degli utenti standard di MySQL e MySQL Enterprise Edition di passare a MariaDB, sfruttando le sue solide funzionalità di miglioramento delle prestazioni.
Compatibilità MySQL ritardata: MariaDB originariamente è stato biforcato da MySQL 5.5, quindi questo è il punto di partenza di base per il codice sorgente di MariaDB. Ciò significa che le funzionalità più recenti e le correzioni di bug sviluppate per MySQL standard dopo la versione 5.5 non fanno parte del codice sorgente MariaDB esistente.
Mitigazione: MariaDB effettua unioni mensili del codice sorgente MySQL standard per garantire sia la compatibilità che l'adozione di funzionalità/correzioni di bug. Questo tipo di normale fusione del codice consente a MariaDB di mantenere il suo fascino come sostituto immediato di praticamente qualsiasi versione esistente di MySQL standard. Tuttavia, ci sarà sempre un ritardo che farà sì che MariaDB rimanga indietro rispetto alle nuove funzionalità e alle patch di bug di MySQL.