Skaler MongoDB enkelt med AWS DocumentDB: 10GB til 64TB!

Som en reaksjon på det økende antallet kunder som opplever vanskeligheter med å administrere MongoDB i stor skala, har Amazon lansert DocumentDB-løsningen.

Med DocumentDB kan du enkelt skalere fra 10 GB til 64 TB ved hjelp av automatisert dataskalering. La oss utforske hvordan dette fungerer.

Hva er DocumentDB?

AWS DocumentDB er en forbedret versjon av den tidligere MongoDB versjon 3.6. Amazon så behovet for å utvikle en løsning for store datamengder og virksomhetskritiske arbeidsoppgaver. DocumentDB benytter seg ikke av MongoDBs kildekode, men er en proprietær implementasjon fra Amazon.

I likhet med MongoDB, er DocumentDB en dokumentlagringsmotor. AWS DocumentDB er en NoSQL-database. Dokumenter er vanligvis lagret i JSON-format, som betyr at databasen indekserer JSON-datastrukturer. Amazon DocumentDB er tenkt som en «drop-in» erstatning for MongoDB hos AWS, men med en annen underliggende struktur.

Før vi går dypere inn i Amazon DocumentDB, er det viktig å forstå hva NoSQL er, og hvorfor det er en viktig trend nå.

Hva er en NoSQL-database?

NoSQL-databaser opererer uten tabeller som er relasjonelt knyttet til hverandre («ikke bare SQL»). Hovedsakelig benyttes dokumenter og grafer som de to primære datatypene. Disse databasene er designet for å håndtere store datamengder og høye brukerbelastninger.

Utviklere begynte å bruke NoSQL-databaser med fokus på ytelse, snarere enn lagring. NoSQL-data er ofte semistrukturerte og polymorfe, og inneholder store mengder ustrukturerte data.

NoSQL-databaser er også mer konsistente enn relasjonsdatabaser, lettere å skalere og krever mindre ressurser. I motsetning til SQL-databaser, kan NoSQL-databaser skaleres horisontalt. De skjemafrie NoSQL-databasene tillater ulike strukturer for de lagrede dataelementene.

Flere utviklere flytter applikasjoner og data til offentlige skyplattformer. Skalering utover og intelligent geolokalisering av data ble sentrale behov, og dette er funksjoner som MongoDB tilbyr.

Bedrifter i alle bransjer bruker NoSQL, for eksempel for å håndtere finansielle data og helseinformasjon. Et konkret eksempel er lagring av IoT-data fra en smart kattekasse.

Hva var bakgrunnen for DocumentDB?

Amazon utviklet ideen som en løsning på de mange problemene brukere opplevde med å kjøre MongoDB i stor skala. Amazon mente at ingen av de eksisterende løsningene, inkludert MongoDB Atlas, tilfredsstilte kundenes behov, og utviklet derfor en egen.

DocumentDB tillater for eksempel automatisk skalering av databasen fra 10 GB til 64 TB, uten at brukeren behøver å foreta seg noe. Denne typen datasystem var vanskelig å implementere før DocumentDB.

Amazons løsning har også innebygd feiltoleranse. Lagringsplassen er automatisk delt opp i 10 GB-blokker som fordeles over flere fysiske enheter. Hver 10 GB-blokk replikeres seks ganger over tre tilgjengelighetssoner for sikkerhetskopiering.

Dette gjør at to kopier av data kan gå tapt uten å påvirke skrivefunksjonaliteten, og tre kopier kan gå tapt uten å påvirke lesefunksjonaliteten. Det har også en selvhelbredende lagringsmekanisme, der datablokker og disker kontrolleres for feil og repareres automatisk.

Ettersom Amazon hoster tjenesten, håndteres de fleste sikkerhetsregler. Tjenesten er i samsvar med en rekke standarder, inkludert PCI DSS og ISO 9001. Den oppfyller også kravene til SOC 1, SOC 2, SOC 3 og HIPAA.

Fordeler med DocumentDB

#1. MongoDB-kompatibel

Amazon DocumentDB fungerer sammen med MongoDB 3.6- og 4.0-drivere. Dette innebærer at brukere kan anvende mange av de samme applikasjonene, driverne og verktøyene som de bruker med MongoDB.

Amazon DocumentDB bruker Apache 2.0 åpen kildekode MongoDB 3.6 og 4.0 API-er for å etterligne en MongoDB-server. Dette gir ytelsen, skalerbarheten og tilgjengeligheten som kreves for forretningskritiske MongoDB-applikasjoner.

#2. Overvåkning

Amazon DocumentDB gir integrasjon med Amazon CloudWatch for overvåkning av databasetjenere. Gjennom AWS Management Console kan du spore klyngens ytelse, som datakraft og minnebruk. Data som spørringsgjennomstrømning, MongoDB-operasjonstellinger og aktive tilkoblinger er tilgjengelige.

#3. Ventetid

Amazon DocumentDB støtter JSON-dokumenter, ulike datatyper og rask indeksering. Tjenestens in-memory-arkitektur tillater rask prosessering av forespørsler for store datamengder.

#4. Tilgangskontroll

Amazon DocumentDB benytter RBAC (Role-Based Access Control) med både forhåndsdefinerte og egendefinerte roller. RBAC gjør det mulig å implementere prinsippet om minste nødvendige privilegium, som begrenser hva en bruker kan gjøre.

Som en integrert del av AWS Identity and Access Management (IAM), kan du kontrollere hvilke AWS IAM-brukere og -grupper som har tilgang til Amazon DocumentDB-ressurser, inkludert klynger, instanser, øyeblikksbilder og parametergrupper. Du kan også tagge ressursene og regulere tilgang basert på IAM-bruker/gruppe.

#5. Kryptering

Amazon DocumentDB databaser kan krypteres ved hjelp av AWS Key Management Service (KMS).

Dataene i underliggende lagring er sikret, det samme er automatiske sikkerhetskopier, øyeblikksbilder og replikaer i en klynge som bruker Amazon DocumentDB-kryptering. Tilkoblinger fra klient til Amazon DocumentDB er også automatisk kryptert med TLS.

#6. Samsvarssertifiseringer

Amazon DocumentDB er bygget i henhold til de høyeste sikkerhetsstandardene for å hjelpe deg med å oppfylle dine egne regulerings- og samsvarskrav. Amazon DocumentDB er PCI DSS, ISO 9001, 27001, 27017 og 27018-kompatibel, SOC 1, 2 og 3-kompatibel og HIPAA-kompatibel.

#7. Globale klynger med høy tilgjengelighet

Amazon DocumentDB Global Clusters muliggjør global lesing og katastrofegjenoppretting. Dataene dine replikeres til opptil fem AWS-nettsteder med minimal innvirkning på ytelsen.

#8. Multi-AZ-implementeringer med replikaer

Amazon DocumentDB kan ha opptil 15 replikaer i tre tilgjengelighetssoner, og skifter automatisk over til en ny instans ved feil. Ved en feil vil Amazon DocumentDB forsøke å lage en ny instans.

#9. Feiltolerant og selvhelbredende lagring

Lagringsvolumet replikeres seks ganger over tre tilgjengelighetssoner. Amazon DocumentDB gir feiltolerant lagring for å håndtere tap av data i opptil to kopier uten å påvirke skrivefunksjonaliteten. Amazon DocumentDBs lagring er også selvhelbredende, og erstatter mislykkede datablokker og enheter.

AWS DocumentDB Ofte Stilte Spørsmål

Er AWS DocumentDB det samme som MongoDB?

Amazon DocumentDB (med MongoDB-kompatibilitet) er en fullt administrert dokumentdatabasetjeneste som er rask, skalerbar og fullstendig administrert, og kan brukes for MongoDB-arbeidsbelastninger.

JSON-data lagres i Amazon DocumentDB som en dokumentdatabase. Du kan lagre, søke etter og indeksere dataene enkelt.

Kunder kan bruke AWS Database Migration Service (DMS) gratis i seks måneder for å raskt og enkelt migrere lokale eller Amazon Elastic Cloud (EC2) MongoDB NoSQL-databaser til AWS Database Migration Service (DMS) med minimal nedetid.

Hvordan fungerer Amazon DocumentDB?

Amazon DocumentDB samhandler med Apache 2.0 åpen kildekode MongoDB 3.6 og 4.0 API-er som en dokumentdatabase. Dette gjør at du kan bruke de samme MongoDB-driverne, applikasjonene og verktøyene med Amazon DDocumentDB med minimale eller ingen endringer.

Hvordan skalerer Amazon DocumentDB?

Amazon DocumentDB er en skybasert database som kan skaleres fra 10 GB til 64 TB i trinn på 10 GB. Lagringskapasiteten og datakraften kan skaleres vertikalt og horisontalt (for større lesekapasitet) ved å legge til flere replika-instanser (opptil 15) i klyngen.

Hva er de viktigste designprinsippene bak Amazon DocumentDB?

Amazon DocumentDB er bygget med en «sky-først»-arkitektur fra grunnen av. Dette betyr at JSON-arbeidsoppgaver kan skaleres enkelt.

En viktig del av DocumentDBs design er å skille lagring og prosessering, slik at hver del kan vokse uavhengig. DocumentDB har et lagringssystem som er distribuert, feiltolerant og selvhelbredende. Hver databaseklynge kan lagre opptil 64 TB data uten å dele den opp.

Konklusjon

DocumentDB er Amazons eneste administrerte MongoDB-kompatible tjeneste. Amazon hevder at DocumentDB har dobbelt så stor gjennomstrømning som eksisterende MongoDB-løsninger. Alternativet ville være å administrere databaser på EC2/EBS, noe som er mer krevende.

Hvis du har behov for disse garantiene, er DocumentDB et godt valg. Et annet argument for å velge DocumentDB er å samle alle tjenester innen AWS-økosystemet.