Database Multi-Tenancy in the Cloud and Beyond

06

februarie 2018

Database Multi-Tenancy in the Cloud and Beyond

De: Tree Web Solutions | Etichete: baza de date, memsql, multiple customers

În valul de aplicații Enterprise Cloud, încrederea într-un magazin de date în spatele aplicației software-as-a-service (SaaS) este o necesitate. Astfel, suportul pentru mai multe locații este o caracteristică esențială pentru orice bază de date pentru întreprinderi. Această postare pe blog va acoperi modalitățile de implementare a "multi-tenancy" și cele mai bune practici pentru a face acest lucru în MemSQL.

Pe măsură ce dimensiunile tabelului clientului cresc, va trebui să scalați baza de date cu mai mulți locatari pe zeci de mașini. Pentru a sprijini analizele bogate despre clienții dvs. sau ca o caracteristică pentru clienții dvs. finali, veți dori o soluție care să se mărească fără a vă îngreuna raportarea. Platformele de succes cu mai mulți locatari necesită scalabilitate masivă, patch-uri / upgrade-uri online, capacitatea de a procesa volume mari de ingerări de date și de a furniza analize complexe performante.

MemSQL oferă cerințele pentru o platformă multi-tenancy prin intermediul bogatelor capabilități analitice și de tranzacționare ale SQL. MemSQL scala, de asemenea, la sute de noduri dintr-un cluster care utilizează hardware partajat. Combinând aceste capabilități multi-tenancy cu ingestia extremă a datelor, MemSQL este un produs cu adevărat unic pentru a furniza date SaaS.

Cele mai multe modele arhitecturale de baze de date pentru aplicațiile multi-tenancy urmează una din cele trei abordări:

  1. Separated Database
  2. Separate Schema
  3. Shared Schema

Dacă cerințele de izolare nu sunt luate în considerare la începutul dezvoltării aplicațiilor, modernizarea acestora poate fi și mai costisitoare. În conversațiile noastre cu clienții, scara este adesea conducătorul auto. Să vedem cele trei modele:

1. Separated Database

Multiple Customers and Multiple Databases

Instanțializarea fiecărui "tenant" ca bază de date proprie în MemSQL este o idee practică pentru garantarea izolării datelor. Cu toate acestea, dacă intenționați să scalați peste 50-100 de chiriași, transformarea unei noi instanțe de bază de date pentru fiecare chiriaș va crește costurile de întreținere.

În timp ce aplicațiile anterioare ale SaaS utilizează în mod corespunzător instanțe separate de baze de date, scalarea unei afaceri software în cloud necesită soluții alternative. Cu modelul de bază de date pe locatar, există costuri legate de creșterea partajării resurselor în cloud, precum și de menținerea și gestionarea numeroaselor baze de date. De exemplu, probabil că veți avea nevoie de strategii diferite de rezervă pentru fiecare chiriaș. Dezvoltatorii aplicațiilor SaaS se luptă adesea atunci când fac astfel de compromisuri. În cele din urmă, efectuarea de analize în baza dvs. de clienți ar determina interogări relativ complexe în baza de date cu mai multe baze de date.

2. Separate Schema

Multiple, Customers, One Database, Separate Schemas

Păstrarea datelor dvs. izolate logic, dar în diferite scheme de tabele, poate fi o strategie benefică. Cu abordarea "schemă separată", datele dvs. de tenant sunt la fel de separate logic, dar în cadrul aceleiași baze de date pentru dureri de cap mai puțin de întreținere sau deasupra capului. Backup-urile sunt efectuate în întregime, pentru toți chiriașii odată.

3. Shared Schema

În modelul Shared Schema, totul este partajat - server, bază de date și tabele. Toate datele pentru chiriașii dvs. se află în același tabel (tabele) într-o singură bază de date logică. O coloană "TenantId" poate fi utilizată pe masă pentru a diferenția fiecare rând de date și puteți folosi acest lucru ca  și cheia shard în MemSQL pentru a vă asigura că toate datele pentru un "tenant" dat se află pe aceeași mașină fizică.

MemSQL oferă ceea ce necesită platformele multitene: scalabilitate masivă, patch-uri / upgrade-uri online, abilitatea de a procesa volume mari de ingerare a datelor și de a furniza analize complexe de înaltă performanță pe date care se schimbă rapid.

 

Source: http://blog.memsql.com/database-multi-tenancy-in-the-cloud-and-beyond/

Distribuie această postare