MariaDB
 sql >> Database >  >> RDS >> MariaDB

Una panoramica del nuovo DBaaS di MariaDB - SkySQL

MariaDB ha recentemente lanciato la sua nuova offerta DBaaS, SkySQL. Potrebbe essere una sorpresa per alcuni, ma questa è stata una mossa anticipata da parte di MariaDB poiché negli ultimi anni ha spinto attivamente prodotti all'avanguardia per i servizi aziendali e ha gareggiato attivamente con i grandi fornitori del mercato.

Prima del lancio di SkySQL, MariaDB ha lavorato su container e grafici Helm fin dal 2018. SkySQL offre la disponibilità del database a più regioni durante la configurazione e l'avvio dell'istanza del database.

Cos'è MariaDB SkySQL?

MariaDB SkySQL è un'offerta DBaaS, il che significa che è un servizio di database completamente gestito ed è gestito su un servizio cloud utilizzando Google Cloud Platform (GCP). Si noti che il database offerto da MariaDB non è l'edizione della community. In effetti, è MariaDB Enterprise Server insieme a MariaDB ColumnStore (o entrambi).

I vantaggi dell'utilizzo di questa offerta rispetto alle offerte di servizi MariaDB di Amazon RDS o Microsoft Azure Database sono il controllo delle versioni (SkySQL garantisce che gli utenti abbiano la versione più recente del prodotto), oltre ad avere analisi e supporto transazionale.

Integrato con il suo DBaaS è un gestore di configurazione, che esegue il monitoraggio con metriche e grafici in tempo reale e un'analisi del carico di lavoro che mostra il suo servizio di machine learning che identifica le modifiche nei modelli di carico di lavoro per il ridimensionamento proattivo delle risorse e la coerenza del servizio. È un prodotto allettante per gli utenti più accaniti dei prodotti aziendali MariaDB di utilizzare MariaDB SkySQL.

Caratteristiche di MariaDB SkySQL

MariaDB SkySQL vanta tutta la potenza della piattaforma MariaDB combinando diversi tipi di database da transazioni (configurazione comune per OLTP), analisi o data warehousing (OLAP) o se richiede una configurazione ibrida (combinazione di banca dati transazionale e analitica). Quanto segue fornisce la definizione semplice di queste piattaforme di servizi di database in primo piano:

Transazioni

Ottimizzato per l'elaborazione rapida delle transazioni su storage a blocchi persistente, con suddivisione in lettura/scrittura e failover automatico configurato e abilitato immediatamente per un bilanciamento del carico trasparente e un'elevata disponibilità.

Analisi

Ottimizzato per eseguire query ad hoc su miliardi di righe senza indici, combinando dati a colonne su storage di oggetti a basso costo con elaborazione di query multi-thread, perfetta per il cloud data warehousing/analytics.

Ibrido o entrambi

Ottimizzato per l'elaborazione intelligente delle transazioni nel cloud, archiviando i dati sia come righe nell'archiviazione a blocchi persistente che come colonne nell'archiviazione degli oggetti:crea applicazioni moderne arricchendo le transazioni con analisi in tempo reale.

MariaDB SkySQL è inoltre dotato del suo supporto di livello mondiale che è incluso nel prezzo (supporto standard) una volta che ti registri e avvii un'istanza di database. Ci sono anche altre opzioni che puoi considerare se sei su una configurazione a livello aziendale. Puoi optare per il tipo di supporto aziendale e platino. Vedi maggiori dettagli nella loro pagina dei prezzi.

Oltre a queste funzionalità, forniscono anche funzionalità di monitoraggio per controllare lo stato e lo stato generale dei servizi del database. Sebbene al momento della stesura di questo documento sia attualmente in Technical Preview, puoi già utilizzare il servizio e raccogliere metriche per controlli più dettagliati e in tempo reale dell'istanza del tuo database.

Lo stack di disponibilità

Questa piattaforma SkySQL è strutturata con l'affidabilità del servizio per ottenere la fornitura di servizi di livello mondiale a clienti e consumatori. Indipendentemente dalla stabilità della piattaforma, deve sempre fallire in modo da determinare la resilienza del prodotto e la velocità con cui può essere disponibile in caso di interruzione e anche ridurre l'RPO (Recovery Point Objective).

Per l'infrastruttura, utilizzano Google Cloud Platform (GCP) e i servizi fanno molto affidamento su Google Kubernetes Engine (GKE), un componente di GCP. Ciò significa molto per la piattaforma stessa poiché i servizi di MariaDB SkySQL vengono eseguiti in contenitori basati su Kubernetes. Ha la capacità di offrire la resilienza dei cluster GKE regionali che includono più zone di disponibilità all'interno di una regione. Acquisisce la funzionalità di riparazione automatica da Kubernetes e anche l'escalation degli SLA elevati di GCP con un tempo di attività del 99,5%.

Sebbene si basi su GKE, ciò significa che eredita la natura di Kubernetes dall'essere in grado di riavviare i contenitori guasti, schermando un contenitore non integro che viene automaticamente ucciso se rilevato come guasto. Anche i contenitori morti vengono sostituiti automaticamente e accadono in background, cosa che non si nota ad occhio nudo nella prospettiva del cliente.

Le multi-zone sono implementate per una configurazione primaria/replica che è una configurazione del database del servizio Transactions. Fornisce i primari di replica in una zona separata all'interno di un'area rispetto alle repliche di replica.

MaxScale gioca in primo piano per ambienti di tipo transazionale (primario/replica) come OLTP o il servizio Transazioni mentre gestisce il failover automatico -- copre Transazioni e servizi ibridi. MaxScale monitora e controlla lo stato di primarie e repliche. Se non riesce, MaxScale fa il lavoro per promuovere la replica più aggiornata e renderla la nuova primaria. Il resto delle repliche viene quindi aggiornato puntando al nuovo primario. Sia le transazioni che il servizio ibrido coprono la riparazione automatica per le istanze MaxScale. Ciò significa che se un'istanza MaxScale si guasta, viene riavviata o sostituita a seconda dello stato del problema.

Tutti i tipi di servizi MariaDB SkySQL eseguono l'auto-riparazione, quindi è sempre altamente disponibile per l'uso. Ciò significa che se un'istanza specifica non riesce, che si tratti di un MariaDB Enterprise Server o di un'istanza MaxScale o di un'istanza Kubernetes, adatta sempre la resilienza di Kubernetes.

Utilizzo di MariaDB SkySQL

Tutto quello che devi fare è registrarti tramite la loro pagina principale di SkySQL. Se hai un account, puoi accedere. Richiede che tu debba inserire i tuoi metodi di pagamento come carta di credito/debito, ma potresti contattarli per ulteriori informazioni al riguardo.

All'avvio di un servizio, sono disponibili tre opzioni tra cui scegliere. Vedi sotto:

Ho testato la piattaforma e configurato un servizio Transazioni. Ciò significa che ho già impostato un metodo di fatturazione o pagamento prima di questa azione.

Durante la configurazione, puoi selezionare la regione in cui desideri distribuire il tuo servizio. Inoltre ha una panoramica dei costi su quale tipo di istanza selezionerai. Vedi sotto:

e specificare il numero di repliche e la sua dimensione di archiviazione delle transazioni, quindi infine il nome del servizio proprio come di seguito:

Poiché viene eseguito all'interno del cloud utilizzando GCP, utilizza essenzialmente le risorse come l'archiviazione a blocchi e le relative prestazioni che sono disponibili da Google Cloud.

L'avvio dei servizi di database potrebbe richiedere del tempo prima che siano disponibili per l'uso. Alla fine mi ci sono voluti circa 10 minuti, quindi potresti dover prima fare la pausa caffè e tornare quando è pronto per l'uso in produzione. Una volta in alto, ecco come appare nella tua dashboard:

Facendo clic sul servizio appena lanciato vengono visualizzate più opzioni per gestire il database. È più o meno semplice e molto diretto, niente di sofisticate interfacce utente.

Tutto quello che devi fare è specificare i tipi di indirizzi IP richiesti per accedere o interfacciare il server di database. Facendo clic sul pulsante Mostra credenziali ti verranno fornite informazioni su nome utente, password, download della catena di autorità di certificazione e ti consentirà di connetterti e modificare la password.

A proposito, le informazioni di cui sopra sono già state scartate ed eliminate, quindi esporle non pone problemi di sicurezza.

Fondamentalmente, sono in grado di testarlo e ho già fornito l'indirizzo IP che deve essere inserito nella whitelist. Quindi la connessione tramite client mostra che sei una connessione più sicura che canalizza sul livello TLS/SSL:

[[email protected] ~]$ mysql --host sky0001841.mdb0001721.db.skysql.net --port 5001 --user DB00002448 -p --ssl-ca ~/skysql_chain.pem

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 32

Server version: 5.5.5-10.4.12-6-MariaDB-enterprise-log MariaDB Enterprise Server



Copyright (c) 2009-2020 Percona LLC and/or its affiliates

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.



Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.



Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.



mysql> select @@hostname;

+-------------------+

| @@hostname        |

+-------------------+

| paultest-mdb-ms-0 |

+-------------------+

1 row in set (0.25 sec)



mysql> show schemas;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

+--------------------+

3 rows in set (0.25 sec)



mysql> \s

--------------

mysql  Ver 14.14 Distrib 5.6.48-88.0, for Linux (x86_64) using  6.2



Connection id: 32

Current database:

Current user: [email protected]

SSL: Cipher in use is ECDHE-RSA-AES128-GCM-SHA256

Current pager: stdout

Using outfile: ''

Using delimiter: ;

Server version: 5.5.5-10.4.12-6-MariaDB-enterprise-log MariaDB Enterprise Server

Protocol version: 10

Connection: sky0001841.mdb0001721.db.skysql.net via TCP/IP

Server characterset: utf8mb4

Db     characterset: utf8mb4

Client characterset: utf8

Conn.  characterset: utf8

TCP port: 5001

Uptime: 10 min 17 sec



Threads: 12  Questions: 2108  Slow queries: 715  Opens: 26  Flush tables: 1  Open tables: 20  Queries per second avg: 3.416

--------------

Gestione configurazione

MariaDB SkySQL è inoltre dotato di un gestore di configurazione che ti consente di applicare modifiche, versionare i tuoi aggiornamenti di configurazione o clonare una configurazione esistente, quindi applicarla a una serie di servizi che hai nel tuo account MariaDB SkySQL . Condivide in qualche modo un approccio alla gestione della configurazione con la nostra gestione dei file di configurazione, ad esempio

e ti offre le seguenti azioni che puoi eseguire con esso,

Le versioni precedenti della configurazione sono ancora visibili, il che rende più conveniente la gestione gestione database e modifiche configurazione.

Analisi e monitoraggio del carico di lavoro

Al momento della stesura di questo articolo, entrambe queste funzionalità, che sono l'analisi del carico di lavoro e il monitoraggio, sono attualmente in Tech Preview. Tuttavia, l'analisi del carico di lavoro non è ancora pronta per l'uso, ma il monitoraggio mostra già i dati raccolti dalle istanze del database. Un esempio di questo è mostrato di seguito,

In realtà utilizza Grafana per visualizzare le metriche e i grafici. Offre altre viste su cui esaminare lo stato di salute del database, delle query, dei ritardi e del sistema. Vedi sotto,

Puoi controllare qui un'analisi del carico di lavoro per sentire come funziona.

Conclusione

Sebbene MariaDB SkySQL sia un servizio completamente nuovo, puoi aspettarti che i miglioramenti con questo servizio arriveranno rapidamente. Questa è un'ottima mossa da parte di MariaDB, poiché gli utenti non sono solo limitati alle piattaforme disponibili per la community, ma ora possono utilizzare il livello aziendale a un prezzo ragionevole