Baza de date cloud

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

O bază de date cloud este o bază de date care rulează de obicei pe o platformă care exploatează paradigma cloud computing și, accesând-o, această bază de date este furnizată ca un serviciu simplu. Serviciile bazei de date se asigură de scalabilitatea și disponibilitatea ridicată a bazei de date. Acestea fac stiva software de bază transparentă pentru utilizator.

Modele de distribuție

Există două moduri principale de a gestiona o bază de date în cloud:

Imagine a mașinii virtuale
Platformele cloud permit utilizatorilor să achiziționeze instanțe de mașini virtuale pentru o perioadă limitată de timp și este posibil să gestionați o bază de date în aceste mașini virtuale. De asemenea, utilizatorii pot încărca propriile imagini ale mașinii cu baza de date deja instalată în interior sau pot utiliza o mașină gata făcută care conține o versiune optimizată a unei baze de date. De exemplu, Oracle furnizează mașini gata făcute cu Oracle Database 11g Enterprise Edition instalat pe Amazon EC2 [1] și Microsoft Azure . [2]
Baza de date ca serviciu (DBaaS)
Cu o bază de date livrată ca serviciu, proprietarii de aplicații nu trebuie să instaleze și să întrețină baza de date. În schimb, furnizorul de servicii își asumă responsabilitatea pentru instalarea și întreținerea bazei de date, iar proprietarilor de aplicații li se percepe o sumă proporțională cu utilizarea serviciului. De exemplu, Amazon Web Services oferă trei baze de date ca servicii oferindu-le ca parte a portofoliului său cloud: SimpleDB , o bază de date NoSQL cu valoare cheie; Amazon RDS, un serviciu de baze de date relaționale care include suport pentru MySQL , Oracle etc; și DynamoDB . Microsoft oferă serviciul Azure SQL Database pe platforma sa cloud Azure.

Platforma de cloud computing Rackspace oferă baza de date ca serviciu pentru MySQL și MongoDB . Furnizorii de servicii și-au lansat, de asemenea, serviciul în acest model. Oracle oferă baza de date ca serviciu, permițând utilizatorilor să acceseze Oracle Database 11g și 12c ca serviciu cloud. MongoDB a lansat recent propriul MongoDB ca serviciu, MongoDB Atlas. [3]

Arhitecturi și caracteristici comune

  • Multe servicii de baze de date oferă o consolă web, pe care utilizatorul final o poate utiliza pentru a furniza și configura instanțele bazei de date. De exemplu, consola web Amazon Web Services permite utilizatorilor să lanseze instanțe ale bazei de date, creând instantanee (similare copiilor de rezervă) ale bazei de date și monitorizând statisticile acesteia [4]
  • Serviciul de bază de date constă dintr-o componentă de gestionare, care controlează straturile subiacente ale instanțelor utilizând un API de serviciu. API-ul serviciului este expus utilizatorului final și le permite să efectueze operațiuni de întreținere și scalabilitate pe instanțele bazei de date. De exemplu, API-ul Amazon Relational Database Service permite crearea instanțelor bazei de date, modificarea resurselor disponibile pe instanță, ștergerea instanțelor bazei de date, crearea instantaneelor ​​(adică copiile de rezervă) ale bazei de date și restaurarea unei baze de date dintr-un instantaneu. [5]
  • Stratul software de bază include, de obicei, sistemul de operare, baza de date și software-ul terță parte utilizat pentru gestionarea acestuia. Furnizorul de servicii (de exemplu, MongoLab sau ObjectRocket) este responsabil pentru instalarea, ajustarea și actualizarea software-ului de bază și asigurarea funcționării și performanței generale a bazei de date.
  • Scalabilitatea diferă între furnizori - mulți oferă scalare automată, altele permit utilizatorului să o gestioneze prin utilizarea unui API. De obicei, se bazează pe un anumit nivel de disponibilitate ridicată (de exemplu, 99,9% sau 99,99%).

Modelul de date

În proiectarea și dezvoltarea sistemelor, gestionarea datelor și bazele de date relaționale sunt de obicei utilizate ca cheie de construcție. Interogările avansate exprimate în SQL funcționează bine cu relații precise care sunt impuse informațiilor din bazele de date relaționale. Cu toate acestea, tehnologia bazei de date relaționale nu a fost inițial concepută sau dezvoltată pentru utilizarea pe sisteme distribuite. Această problemă a fost rezolvată prin adăugarea de îmbunătățiri în clustering cu baze de date relaționale, deși multe sarcini de bază necesită protocoale complexe și costisitoare, cum ar fi sincronizarea datelor. [6]

Bazele de date relaționale moderne au arătat performanțe slabe pe sistemele care utilizează intensivitatea datelor, prin urmare, ideea NoSQL a fost utilizată în cadrul sistemelor de gestionare a bazelor de date bazate pe cloud. [7] În cadrul bazelor de date NoSQL implementate, nu există cerințe pentru schemele fixe în tabele, iar utilizarea operației de asociere este interzisă. "Bazele de date NoSQL s-au dovedit a oferi scalabilitate orizontală eficientă, performanță bună și ușurință de asamblare în aplicații cloud." [8]

O distincție între bazele de date cloud care sunt relaționale versus non-relaționale sau NoSQL este, de asemenea, importantă:

Baza de date SQL
De exemplu, PostgreSQL , EDB Postgres Advanced Server , NuoDB , Oracle Database , Microsoft SQL Server , MariaDB și MySQL , reprezintă un tip de bază de date care poate rula pe o platformă cloud, atât într-o mașină virtuală, cât și livrată ca serviciu, în funcție de furnizor . În timp ce bazele de date SQL sunt ușor scalabile pe verticală, scalarea orizontală este o provocare, pe care serviciile de baze de date cloud au început să o abordeze. [9]
Baza de date NoSQL
De exemplu, Apache Cassandra , CouchDB și MongoDB , sunt un alt tip de bază de date care poate rula în cloud. Bazele de date NoSQL sunt construite pentru a servi încărcări grele de citire / scriere și pot escalada cu ușurință în sus și în jos [10] și, prin urmare, sunt mult mai potrivite pentru a rula pe o platformă cloud.
Cu toate acestea, majoritatea aplicațiilor contemporane sunt construite în jurul unui model de date relațional, astfel încât lucrul cu baze de date NoSQL necesită adesea rescrierea codului aplicației. [11]
Multe baze de date relaționale au încorporat funcționalități utilizate în NoSQL, inclusiv formatul JSON, formatul JSON binar și bazele de date cu valoare cheie. Aceste baze de date multi-model includ PostgreSQL și EDB Postgres Advanced Server .
O bază de date multi-model cu capacități relaționale și non-relaționale oferă o interfață SQL standard utilizatorilor și aplicațiilor și facilitează astfel utilizarea acestor baze de date pentru aplicații contemporane construite în jurul unui model de date SQL.

Principalii vânzători

Următoarele tabele listează cei mai remarcabili furnizori de baze de date cu oferte de baze de date cloud, clasificate după modelul lor de implementare - imagini ale mașinilor virtuale vs. baze de date ca servicii - și model de date, SQL vs. NoSQL.

Furnizori de baze de date cloud bazate pe distribuție și model de date
Implementarea mașinii virtuale Baza de date ca serviciu
Model de date SQL
Model de date NoSQL

Notă

  1. ^ a b Amazon Machine Images - Oracle Database 11g Release 2 (11.2.0.1) Enterprise Edition - 64 Bit Arhivat 16 octombrie 2011 la Internet Archive ., Amazon Web Services, Accesat 2011-11-9.
  2. ^ Listă de imagini Oracle VM (MSDN) , preluat 22-9-2014
  3. ^ Atlas MongoDB - MongoDB găzduit ca serviciu , la mongodb.com . Adus la 1 septembrie 2016 .
  4. ^ " AWS Management Console, Amazon RDS Features ", Amazon Web Services, Accesat la 11.11.2011.
  5. ^ " Serviciul de baze de date relaționale Amazon, caracteristici, descriere detaliată ", Amazon Web Services, accesat pe 11-11-2011.
  6. ^ A. Anjomshoaa și A. Tjoa, „Cum paradigma cloud computing ar putea modela viitorul procesării informațiilor întreprinderii” , Proceedings of the 13th Conference International on Information Integration and Web-based Applications and Services - iiWAS'11, pp. 7-10, 2011.
  7. ^ S. Cass, „Designing for the Cloud”, MIT Technology Review, 2009. [Online]. Disponibil: https://www.technologyreview.com/s/414090/designing-for-the-cloud/ . Adus pe 04.04.2016.
  8. ^ " NoSQL ", Wikipedia, 2016. Accesat la 04.04.2016.
  9. ^ Dave Rosenberg, Sunt într-adevăr atât de diferite bazele de date din cloud? , CNET , Adus 2011-11-6
  10. ^ Agrawal, Rakesh, The Claremont report on database research ( PDF ), în SIGMOD Record , vol. 37, n. 3, ACM , 2008, pp. 9-19, DOI : 10.1145 / 1462571.1462573 , ISSN 0163-5808 ( WC ACNP ) .
  11. ^ Ken North, „ SQL, NoSQL sau SomeSQL? ”, Dr. Dobb's, Accesat în 2011-11-9.
  12. ^ Implementați aplicațiile și proiectele bazei de date pe cloud Arhivat 27 noiembrie 2011 la Internet Archive ., IBM.com, preluat 2011-9-1
  13. ^ Chris Kanaracus, „ Ingres lansează ofertele de baze de date cloud ”, Infoworld.com , Accesat 28.08.2011.
  14. ^ " Amazon Web Services anunță două noi servicii de baze de date - AWS Database Migration Service și Amazon RDS pentru MariaDB Arhivat 1 iunie 2017 la Internet Archive ., Comunicate de presă Amazon, recuperat 17.11.2015
  15. ^ " MariaDB Enterprise Cluster + MariaDB MaxScale Arhivat 4 decembrie 2016 la Arhiva Internet ., Microsoft Azure, recuperat 2015-11-17
  16. ^ " Rularea MySQL pe Amazon EC2 cu EBS (Elastic Block Store) , Amazon Web Services, recuperat 2011-11-20
  17. ^ Swoyer, Stephen. „NuoDB: o bază de date pentru cloud”. TDWI. 13 noiembrie 2012. Adus pe 26 noiembrie 2012
  18. ^ " Oracle Database in the Cloud ", Oracle.com, Accesat la 11-11-2011.
  19. ^ Chris Kanaracus, „ EnterpriseDB Adding New Cloud Option for PostgreSQL Database ”, PCWorld , recuperat 28.08.2011
  20. ^ AWS | SAP HANA , pe Amazon Web Services, Inc. Adus pe 7 iulie 2016 .
  21. ^ Soluții SAP | Microsoft Azure , la azure.microsoft.com . Adus pe 7 iulie 2016 .
  22. ^ SAP HANA Enterprise Cloud , la hana.sap.com . Adus la 7 iulie 2016 (Arhivat din original la 15 august 2016) .
  23. ^ Copie arhivată , la finance.yahoo.com . Adus la 3 decembrie 2016 (arhivat din original la 14 aprilie 2016) .
  24. ^ a b EnterpriseDB # citește nota-10
  25. ^ Cloud SQL - Serviciul de baze de date relaționale MySQL , la cloud.google.com . Adus la 28 noiembrie 2016 .
  26. ^ Anunțarea programului de completare a bazei de date Heroku PostgreSQL ”, Heroku Blog, accesat 2011-11-9.
  27. ^ Noel Yuhanna, SQL Azure ridică ștacheta Pe Cloud Baze de date Filed 15 septembrie 2011 în Internet Archive . , Forrester, Adus 2011-11-9.
  28. ^ Klint Finley, "7 Cloud-Based Database Services" Arhivat 9 noiembrie 2011 la Internet Archive ., ReadWriteWeb , Accesat 2011-11-9.
  29. ^ " Seting Cassandra in the Cloud Arhivat 26 octombrie 2018 la Internet Archive .", Cassandra Wiki, Accesat la 11-11-2011.
  30. ^ Google Cloud Platform Blog: Faceți clic pentru a implementa Apache Cassandra pe Google Compute Engine , la cloudplatform.googleblog.com . Adus la 28 noiembrie 2016 .
  31. ^ " Clusterpoint Database Virtual Box VM Installation Guide Arhivat 10 martie 2015 în Archive.is .", Clusterpoint, Accesat 08-03-2015.
  32. ^ " Amazon Machine Images, CouchDB 0.10.x Ubuntu pe 32 de biți [ link rupt ] ", Amazon Web Services, Accesat la 11.11.2011.
  33. ^ CouchDB Cloud Hosting pe Google Cloud Platform , la bitnami.com . Adus la 28 noiembrie 2016 .
  34. ^ " Amazon Machine Image, Hadoop AMI [ link rupt ] ", Amazon Web Services, Accesat la 11.11.2011.
  35. ^ Cloud Dataproc - Managed Spark & ​​Managed Hadoop Service , la cloud.google.com . Adus la 28 noiembrie 2016 .
  36. ^ " Hadoop at Rackspace Arhivat 2 martie 2014 la Internet Archive .", Rackspace Big Data Platforms, Accesat 2014-02-24.
  37. ^ MarkLogic Developer 8 (HVM) pe AWS Marketplace , la aws.amazon.com . Adus la 31 martie 2016 .
  38. ^ Implementare flexibilă ( PDF ), la marklogic.com . Adus la 28 noiembrie 2016 .
  39. ^ " MongoDB pe Amazon EC2 , MongoDB.org, Accesat la 11.11.2011.
  40. ^ Implementarea MongoDB pe Google Compute Engine , la cloud.google.com . Adus la 28 noiembrie 2016 .
  41. ^ " MongoDB on Azure Arhivat 31 octombrie 2012 la Internet Archive ., MongoDB.org, Accesat 2011-11-10.
  42. ^ " Scală ușor MongoDB la Rackspace Arhivat 2 martie 2014 la Arhiva Internet .", Managed MongoDB ObjectRocket de Rackspace, Accesat 2014-02-24.
  43. ^ " Neo4J in the Cloud Arhivat 25 septembrie 2011 la Internet Archive .", Neo4J Wiki, Accesat la 11-11-2011.
  44. ^ " Anunțarea Neo4J pe Windows Azure ", Neo4J Blog, Accesat la 11.11.2011.
  45. ^ Andrew Brust, „ Cloudant Makes NoSQL as a Service Bigger ”, ZDNet, Accesat în perioada 2012-5-22.
  46. ^ Bigtable - Serviciul de baze de date NoSQL scalabil , la cloud.google.com . Adus la 28 noiembrie 2016 .
  47. ^ Datastore - NoSQL Schemaless Database , la cloud.google.com . Adus la 28 noiembrie 2016 .
  48. ^ Atlas MongoDB - MongoDB găzduit ca serviciu , la mongodb.com . Adus la 30 august 2016 .

Elemente conexe