sql >> Database >  >> RDS >> MariaDB

Een overzicht van de nieuwe DBaaS van MariaDB - SkySQL

MariaDB heeft onlangs haar nieuwe DBaaS-aanbod gelanceerd, SkySQL. Het is misschien een verrassing voor sommigen, maar dit was een verwachte stap van MariaDB, aangezien ze de afgelopen jaren actief de nieuwste producten voor bedrijfsservices hebben gepromoot en actief hebben geconcurreerd met de grote marktverkopers.

Voor de lancering van SkySQL werkte MariaDB al in 2018 aan containers en Helm Charts. SkySQL biedt databasebeschikbaarheid voor meerdere regio's bij het instellen en starten van uw database-instantie.

Wat is MariaDB SkySQL?

MariaDB SkySQL is een DBaaS-aanbod, wat betekent dat het een volledig beheerde databaseservice is en wordt beheerd via een cloudservice met behulp van het Google Cloud Platform (GCP). Houd er rekening mee dat de database die door MariaDB wordt aangeboden, niet de community-editie is. In feite is het de MariaDB Enterprise Server naast MariaDB ColumnStore (of beide).

De voordelen van het gebruik van dit aanbod versus Amazon RDS of de MariaDB-services van Microsoft Azure Database zijn versiebeheer (SkySQL zorgt ervoor dat gebruikers de meest recente productversie gebruiken) en analyse- en transactieondersteuning.

Geïntegreerd met zijn DBaaS is een configuratiemanager, monitoring met realtime statistieken en grafieken, en een workload-analyse die zijn machine learning-service laat zien die veranderingen in workloadpatronen identificeert voor proactieve resource-scaling en serviceconsistentie. Het is een aanlokkelijk product voor de meer enthousiaste gebruikers van MariaDB enterprise-producten om MariaDB SkySQL te gebruiken.

Kenmerken van MariaDB SkySQL

MariaDB SkySQL kan bogen op de volledige kracht van MariaDB Platform door verschillende typen van hun databasetypes te combineren, van transacties (algemene configuratie voor OLTP), analyse of datawarehousing (OLAP), of indien vereist een hybride installatie (combinatie van transactie- en analytische database). Hieronder volgt een duidelijke definitie van deze aanbevolen databaseserviceplatforms:

Transacties

Geoptimaliseerd voor snelle transactieverwerking op permanente blokopslag - met lees-/schrijfsplitsing en automatische failover geconfigureerd en direct ingeschakeld voor transparante taakverdeling en hoge beschikbaarheid.

Analyse

Geoptimaliseerd voor het uitvoeren van ad-hocquery's op miljarden rijen zonder indexen, waarbij kolomgegevens op goedkope objectopslag worden gecombineerd met multi-threaded queryverwerking - perfect voor datawarehousing/analyse in de cloud.

Hybride of beide

Geoptimaliseerd voor slimme transactieverwerking in de cloud, waarbij gegevens zowel als rijen op permanente blokopslag als als kolommen op objectopslag worden opgeslagen - maak moderne applicaties door transacties te verrijken met realtime analyses.

De MariaDB SkySQL is ook uitgerust met ondersteuning van wereldklasse die bij de prijs is inbegrepen (standaardondersteuning) zodra u zich registreert en een database-instantie start. Er zijn ook andere opties die u kunt overwegen als u zich op ondernemingsniveau bevindt. U kunt kiezen voor ondersteuning van het type Enterprise en Platinum. Bekijk meer details op hun prijspagina.

Naast deze functies bieden ze ook controlefuncties voor het controleren van de status en algemene gezondheid van uw databaseservices. Op het moment van schrijven bevindt het zich momenteel in Technical Preview, maar u kunt de service al gebruiken en statistieken verzamelen voor meer gedetailleerde en realtime controles van uw database-instantie.

De beschikbaarheidsstapel

Dit SkySQL-platform is ontworpen met servicebetrouwbaarheid om service van wereldklasse aan de klanten en consumenten te leveren. Ongeacht hoe stabiel het platform is, het moet altijd falen om de veerkracht van het product te bepalen en hoe snel het beschikbaar kan zijn in het geval van een storing en ook om de RPO (Recovery Point Objective) te verminderen.

Voor infrastructuur gebruiken ze het Google Cloud Platform (GCP) en de services zijn sterk afhankelijk van Google Kubernetes Engine (GKE), een onderdeel van de GCP. Dit betekent veel voor het platform zelf, aangezien de diensten van MariaDB SkySQL draaien in containers die worden aangedreven door Kubernetes. Het biedt de mogelijkheid om de veerkracht van regionale GKE-clusters te bieden, waaronder meerdere beschikbaarheidszones binnen een regio. Het verwerft de auto-healing-functionaliteit van Kubernetes en ook de hoge SLA-escalatie van GCP met een uptime van 99,5%.

Hoewel het afhankelijk is van GKE, betekent dit dat het de aard van Kubernetes erft door de mislukte containers opnieuw te starten, waardoor een ongezonde container wordt afgeschermd die automatisch wordt gedood als deze als mislukt wordt gedetecteerd. Ook dode containers worden automatisch vervangen en gebeuren op de achtergrond, wat in het perspectief van de klant met het blote oog onopgemerkt blijft.

Meerdere zones zijn geïmplementeerd voor een primaire/replica-configuratie, wat een databaseconfiguratie voor de transactieservice is. Het voorziet primaire replicatie in een aparte zone binnen een regio van replicatie replica's.

MaxScale speelt bovenop voor transactionele omgevingen (primair/replica) zoals OLTP of de transactieservice, terwijl het de automatische failover afhandelt -- dekt transacties en hybride services. MaxScale bewaakt en controleert de status van voorverkiezingen en replica's. Als het mislukt, doet MaxScale het werk om de meest bijgewerkte replica te promoten en deze als de nieuwe primaire te maken. De rest van de replica's worden vervolgens bijgewerkt en verwijzen naar de nieuwe primaire. Zowel de transactie als de hybride service dekt zelfherstel voor MaxScale-instanties. Wat betekent dat als een MaxScale-instantie faalt, deze opnieuw wordt gestart of vervangen, afhankelijk van de status van het probleem.

Alle soorten MariaDB SkySQL-services herstellen zichzelf, dus het is altijd in hoge mate beschikbaar voor gebruik. Dit betekent dat als een specifieke instantie faalt, of het nu een MariaDB Enterprise Server of een MaxScale-instantie of een Kubernetes-instantie is, het altijd de veerkracht aanpast die Kubernetes doet.

MariaDB SkySQL gebruiken

Het enige wat je hoeft te doen is je te registreren via hun SkySQL-hoofdpagina. Als u een account heeft, kunt u inloggen. Het vereist dat u uw betalingsmethoden zoals creditcard/betaalkaart moet plaatsen, maar u kunt contact met hen opnemen voor meer informatie hierover.

Bij het starten van een service zijn er drie opties waaruit u kunt kiezen. Zie hieronder:

Ik heb het platform getest en een transactieservice opgezet. Dit betekent dat ik voorafgaand aan deze actie al een facturerings- of betaalmethode heb ingesteld.

Tijdens het instellen kunt u selecteren in welke regio u uw service wilt implementeren. Het heeft ook een overzicht van de kosten op welk type instantie u gaat selecteren. Zie hieronder:

en specificeer het aantal replica's en de transactie-opslaggrootte, en tenslotte de servicenaam zoals hieronder:

Omdat het in de cloud draait met GCP, gebruikt het in wezen de bronnen zoals blokopslag en de prestaties ervan die beschikbaar zijn via Google Cloud.

Het kan even duren voordat uw databaseservices beschikbaar zijn voor gebruik. Uiteindelijk kostte het me ~10 minuten, dus het kan zijn dat je eerst je koffiepauze moet nemen en terug moet komen zodra deze klaar is voor productiegebruik. Eenmaal op, ziet het er zo uit in je Dashboard:

Als u op uw onlangs gelanceerde service klikt, ziet u meer opties om uw database te beheren. Het is ruwweg eenvoudig en zeer duidelijk, niets bijzonders UI's.

Het enige dat u hoeft te doen, is de typen IP-adressen opgeven die vereist zijn voor toegang tot of interface met de databaseserver. Als u op de knop Inloggegevens weergeven klikt, krijgt u informatie over uw gebruikersnaam en wachtwoord, downloadt u uw certificaatautoriteitketen en kunt u verbinding maken en het wachtwoord wijzigen.

Trouwens, de bovenstaande informatie is al geschrapt en verwijderd, dus het is zichtbaar legt geen veiligheidsproblemen op.

In principe kan ik dit testen en heb ik al het IP-adres opgegeven dat op de witte lijst moet worden gezet. Dus verbinding maken via client laat zien dat je een veiligere verbinding hebt met welke kanalen via TLS/SSL-laag:

[[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

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

De configuratiemanager

MariaDB SkySQL is ook uitgerust met een configuratiemanager waarmee u wijzigingen kunt toepassen, uw eigen configuratie-updates kunt aanpassen of een bestaande configuratie kunt klonen en deze vervolgens kunt toepassen op een aantal services die u in uw MariaDB SkySQL-account heeft . Het deelt op de een of andere manier een benadering van het afhandelen van configuratie met ons configuratiebestandsbeheer. Bijvoorbeeld,

en biedt u de volgende acties die u ermee kunt doen,

Vorige versies van uw configuratie zijn nog steeds zichtbaar, wat handiger is bij het beheren van uw beheer van database- en configuratiewijzigingen.

Werklastanalyse en -bewaking

Op het moment van schrijven staan ​​beide functies, Workload Analysis en Monitoring, momenteel op Tech Preview. De Workload-analyse is echter nog niet klaar voor gebruik, maar Monitoring toont al de gegevens die zijn verzameld uit uw database-instanties. Een voorbeeld hiervan wordt hieronder getoond,

Het gebruikt eigenlijk Grafana voor het weergeven van de statistieken en grafieken. Het biedt andere weergaven waarop u de gezondheid van uw database, query's, vertragingen en systeem kunt onderzoeken. Zie hieronder,

Je kunt hier controleren op een werkbelastinganalyse om te voelen hoe het werkt.

Conclusie

Hoewel de MariaDB SkySQL een geheel nieuwe service is, kun je verwachten dat verbeteringen met deze service snel zullen plaatsvinden. Dit is een geweldige zet van MariaDB, aangezien gebruikers niet alleen beperkt zijn tot de door de gemeenschap beschikbare platforms, maar nu het enterprise-niveau tegen een redelijke prijs kunnen gebruiken


  1. (Android) Vind pad /Android in interne opslag

  2. SQL Server invoegen indien niet bestaat best practice

  3. MariaDB JSON_ARRAYAGG() uitgelegd

  4. Ongeldige standaardwaarde voor 'dateAdded'