sql >> Database >  >> RDS >> MariaDB

Lock-in van databaseleveranciers voor MySQL of MariaDB vermijden

Vendor lock-in wordt gedefinieerd als "Proprietary lock-in of customer lock-in, waardoor een klant voor zijn producten en diensten afhankelijk is van een leverancier; niet in staat om zonder substantiële kosten een andere leverancier te gebruiken" ( wikipedia). Onmiskenbaar voor veel softwarebedrijven zou dat het gewenste bedrijfsmodel zijn. Maar is het goed voor hun klanten?

Eigen databases bieden uitstekende ondersteuning voor migraties van andere populaire databasesoftware-oplossingen. Dat zou echter alleen maar leiden tot een andere vendor lock-in. Is het dan open source een oplossing?

Vanwege de beperkingen die open source jaren geleden veel hebben gekozen voor dure database-oplossingen. Helaas was open-source voor velen geen optie.

In feite heeft de open-sourcedatabase in de loop der jaren Enterprise-ondersteuning en volwassenheid verdiend om kritieke en complexe datatransactiesystemen te draaien.

Met de nieuwe versie database zoals Percona en MariaDB heeft een aantal geweldige nieuwe functies toegevoegd, hetzij compatibiliteit of zakelijke vereisten zoals 24/7 ondersteuning, beveiliging, auditing, clustering, online back-up of snel herstel. Dat alles maakte het migratieproces toegankelijker dan ooit tevoren.

Migratie kan een verstandige zet zijn, maar het brengt ook risico's met zich mee. Of u nu van plan bent om handmatig te migreren van propriëtaire naar open ondersteuningsmigratie of met behulp van een commerciële tool om het hele migratieproces te automatiseren, u moet alle mogelijke knelpunten en methoden kennen die betrokken zijn bij het proces en de validatie van de resultaten.

Het wijzigen van het databasesysteem is ook een uitstekend moment om verdere vendor lock-in-risico's te overwegen. Tijdens het migratieproces kunt u nadenken over hoe u kunt voorkomen dat u vast komt te zitten met een bepaalde technologie. In dit artikel gaan we ons concentreren op enkele leidende aspecten van vendor lock-in van MySQL en MariaDB.

Lock-in voor databasecontrole vermijden

Gebruikers van open source databases moeten vaak een combinatie van tools en eigen scripts gebruiken om hun productiedatabase-omgevingen te bewaken. Maar zelfs als de oplossing zijn eigen scripts van eigen bodem heeft, is het moeilijk om deze te onderhouden en nieuwe databasefuncties bij te houden.

Hopelijk zijn er veel interessante gratis monitoringtools voor MySQL/MariaDB. De meest door DBA aanbevolen gratis tools zijn PMM, Zabbix, ClusterControl Community Edition, Nagios MySQL-plug-in. Hoewel PMM en ClusterControl speciale databaseoplossingen zijn.

Percona Monitoring and Management (PMM) is een volledig open-source oplossing voor het beheren van de prestaties van het MySQL-platform en het afstemmen van de prestaties van query's. PMM is een on-premises oplossing die al uw prestatie- en querygegevens binnen de grenzen van uw omgeving bewaart. Je kunt de PMM-demo vinden onder de onderstaande link.

Traditionele hulpprogramma's voor serverbewaking zijn niet gebouwd voor moderne gedistribueerde database-architecturen. De meeste productiedatabases draaien tegenwoordig in een configuratie met hoge beschikbaarheid - van eenvoudigere master-slave-replicatie tot multi-masterclusters met redundante load balancers. Operationele teams hebben te maken met tientallen, vaak honderden services die de databaseomgeving vormen.

Als u meerdere databasesystemen heeft, wordt uw organisatie wendbaarder aan de ontwikkelingskant en laat de keuze aan de ontwikkelaars, maar het legt ook extra kennis op aan de operationele kant. Als u uw infrastructuur uitbreidt van alleen MySQL naar het inzetten van andere storage-backends zoals MongoDB en PostgreSQL, betekent dit dat u deze ook moet bewaken, beheren en schalen. Omdat elke storage-backend uitblinkt in verschillende gebruiksscenario's, betekent dit ook dat je voor elk ervan het wiel opnieuw moet uitvinden.

ClusterControl is ontworpen om moderne, sterk gedistribueerde database-instellingen aan te pakken op basis van replicatie of clusteren. Het toont de status van de volledige clusteroplossing, maar kan zeer goed worden gebruikt voor een enkele instantie. ClusterControl zal u veel geavanceerde statistieken laten zien, maar u kunt er ook ingebouwde adviseurs vinden die u zullen helpen deze te begrijpen. U vindt de ClusterControl-demo onder de onderstaande link.

Lock-in voor databaseback-upoplossingen vermijden

Er zijn meerdere manieren om back-ups te maken, maar welke methode past bij uw specifieke behoeften? Hoe implementeer ik point-in-time recovery?

Als u migreert vanuit Oracle of SQL Server, raden we u de xtrabackup-tool van Percona of vergelijkbare mariabackup van Mark aan.

Percona XtraBackup is de meest populaire, open-source MySQL/MariaDB hot back-upsoftware die niet-blokkerende back-ups maakt voor InnoDB- en XtraDB-databases. Het valt in de categorie fysieke back-ups, die bestaat uit exacte kopieën van de MySQL-gegevensmap en de bestanden eronder.

XtraBackup vergrendelt uw database niet tijdens het back-upproces. Voor grote databases (100+ GB) biedt het een veel betere hersteltijd in vergelijking met mysqldump. Het herstelproces omvat het voorbereiden van MySQL-gegevens uit de back-upbestanden, voordat deze worden vervangen of vervangen door de huidige gegevensmap op het doelknooppunt.

Lock-in vermijden voor hoge beschikbaarheid en schaalbaarheid van databases

Er wordt gezegd dat als je niet ontwerpt om te falen, je op een crash afstevent. Hoe creëer je een databasesysteem van de grond af aan om fouten te weerstaan? Dit kan een uitdaging zijn, aangezien mislukkingen op veel verschillende manieren gebeuren, soms op manieren die moeilijk voor te stellen zijn. Het is een gevolg van de complexiteit van de huidige database-omgevingen.

Clustering is een dure functie van databases zoals Oracle en SQL Server. Het vereist extra licenties.

Galera Cluster is een reguliere optie voor MySQL en MariaDB met hoge beschikbaarheid. En hoewel het zichzelf heeft bewezen als een geloofwaardige vervanging voor traditionele MySQL master-slave-architecturen, is het geen drop-in vervanging.

Galera Cluster is een synchrone actief-actieve databaseclusteringstechnologie voor MySQL en MariaDB. Galera Cluster verschilt van wat bekend staat als Oracle's MySQL Cluster - NDB. MariaDB-cluster is gebaseerd op de multi-master replicatie-plug-in die wordt geleverd door Codership.

Hoewel het Galera-cluster enkele kenmerken heeft die het ongeschikt maken voor specifieke gebruikssituaties, kunnen de meeste toepassingen toch worden aangepast om erop te draaien.

De voordelen zijn duidelijk:multi-master InnoDB-installatie met ingebouwde failover en schaalbaarheid voor lezen.

Lock-in voor databasetaakverdeling vermijden

Proxies zijn bouwstenen van high-availability setups voor MySQL. Ze kunnen defecte nodes detecteren en query's doorsturen naar hosts die nog beschikbaar zijn. Als uw master faalde en u een van uw slaven moest promoten, zullen proxy's dergelijke topologieveranderingen detecteren en uw verkeer dienovereenkomstig routeren.

Geavanceerde proxy's kunnen veel meer doen, zoals verkeer routeren op basis van nauwkeurige queryregels, cachequery's of deze spiegelen. Ze kunnen zelfs worden gebruikt om verschillende soorten sharding te implementeren.

De meest bruikbare zijn ProxySQL, HAproxy, MaxScale (beperkt gratis gebruik).

Lock-in vermijden bij migratie naar de cloud

In de afgelopen tien jaar zijn veel bedrijven overgestapt op cloudgebaseerde technologie om de budgettaire beperkingen voor datacenters en flexibele softwareontwikkeling te vermijden. Door gebruik te maken van de cloud kunnen uw bedrijf en applicaties profiteren van de kostenbesparingen en veelzijdigheid die ontstaan ​​door cloudcomputing.

Hoewel cloudoplossingen bedrijven veel voordelen bieden, brengen ze toch enkele risico's met zich mee. Zo is vendor lock-in in de cloud net zo hoog als in het datacenter.

Naarmate meer bedrijven hun workloads in de cloud uitvoeren, worden clouddatabaseservices steeds vaker gebruikt om gegevens te beheren. Een van de voordelen van het gebruik van een clouddatabaseservice in plaats van het onderhouden van uw database, is dat het de beheeroverhead vermindert. Databaseservices van toonaangevende cloudleveranciers hebben veel overeenkomsten, maar ze hebben individuele kenmerken waardoor ze goed of niet geschikt zijn voor uw werklast.

Het hybride model voor databasehosting

Naarmate meer bedrijven overstappen op de cloud, wordt het hybride model steeds populairder. Het hybride model wordt door veel bedrijven als een veilig model gezien.

In feite is het een uitdaging om een ​​harttransplantatie te doen en alles onmiddellijk over te dragen. Veel bedrijven voeren een langzame migratie uit die meestal een jaar of zelfs een eeuwigheid duurt voordat alles is gemigreerd. De verhuizing moet plaatsvinden in een acceptabele vrede.

Met het hybride model kun je niet alleen een schaalbaar systeem met hoge beschikbaarheid bouwen, maar door zijn aard is het ook een geweldige eerste stap om lock-in te voorkomen. Door architectuurontwerp zullen uw systemen in een soort gemengde modus werken.

Een voorbeeld van dergelijke architecturen kan een cluster zijn dat in een eigen datacenter opereert en waarvan de kopie zich in de cloud bevindt.

Conclusie

Migreren van een eigen database naar open source kan verschillende voordelen met zich meebrengen:lagere eigendomskosten, toegang tot en gebruik van een open-source database-engine, nauwe integratie met het web. Open source heeft veel te bieden en is vanwege zijn aard een geweldige optie om vendor lock-in te voorkomen.


  1. Maandag instellen als eerste dag van de week in SQL Server

  2. PostgreSQL geeft gegevens van recursieve CTE door aan functie

  3. String -> java.util.Date -> java.sql.Date (met tijdstempel)

  4. Is Intel gedoemd in de server-CPU-ruimte?