sql >> Database teknologi >  >> NoSQL >> MongoDB

Højtydende MongoDB-klynger på Amazon EC2

Ydeevne er en vigtig overvejelse, når du implementerer MongoDB på AWS. Fra et hardwareperspektiv er MongoDB-ydeevne på EC2 primært styret af to faktorer - RAM og diskhastighed. Typisk (der er altid undtagelser), bør CPU ikke være et problem eller hukommelse, da der er masser af størrelsesmuligheder tilgængelige (R3, I2, C3/C4), der tilbyder en stor mængde RAM. For flere detaljer om, hvordan du vælger den rigtige instanstype, se mit andet blogindlæg: Sådan vælger du den rigtige EC2-instanstype

Historisk har diskhastighed og latens været et konstant problem på Amazon EBS. Men Amazon Web Services tilbyder nu et par muligheder for at hjælpe dig med diskens ydeevne:

  1. Provisionerede IOPS-diske

    I den klargjorte IOPS-model kan du på tidspunktet for oprettelse af disken angive antallet af IOPS, du ønsker, at din disk skal understøtte. Jo mere IOPS du leverer, jo mere gennemstrømning vil din disk være i stand til at håndtere. Du kan gå helt op til 4000 IOPS/disk! IOPS kan dog blive dyrt til $0,065 pr. IOPS-måned. Hvis du f.eks. leverer 4000 IOPS til disken, vil det koste dig 260 USD om måneden for kun IOPS alene. Dette kan hurtigt tilføjes, hvis du har flere servere.

  2. Lokal SSD

    Dette er den bedste mulighed for diskydeevne på Amazon AWS. Lokale SSD'er giver den bedste gennemløbs- og latensadfærd af alle AWS-diskmuligheder. Men de kaldes 'lokale' af en grund. Hvis din virtuelle maskine (VM) af en eller anden grund stoppes, frigives det tildelte lokale lager. Så byrden af ​​datapålidelighed er helt og holdent på brugeren. Kunne du installere to lokale SSD-datalagre i to forskellige tilgængelighedszoner (AZ) og kalde det løst? Ikke helt. Hvis AWS har et område-dækkende udfald, som det gjorde i USA-Øst et par år før, skal du forvente at miste dine lokale SSD'er i alle dine AZ'er. Af disse grunde bør lokale SSD-instanser ikke bruges som det primære datalager for dine data.

Højtydende MongoDB:3-node replikasæt

Med disse problemer i tankerne introducerer vi vores højtydende MongoDB-konfiguration på AWS. De højtydende klynger bruger en hybrid af lokal SSD og EBS-forsynet IOPS-disk for at opnå både høj ydeevne og høj pålidelighed. En typisk konfiguration implementeres ved hjælp af et 3-node replikasæt.

  • Den primære og den sekundære 1 bruger lokale SSD-diske
  • Sekundær 2 bruger EBS-klargjort IOPS

Høj ydeevne MongoDB 3-node replikasæt

Hvad betyder det? Da den primære og den sekundære 1 kører på lokal SSD, får du den bedst mulige diskydeevne fra dine AWS-maskiner. Ikke mere netværksbaseret EBS, bare lynhurtig lokal SSD. Læser og skriver til din primære, og selv læsningerne fra den sekundære 1 vil fungere ved SSD-hastighed. Sekundær 2 bruger EBS-provisioneret IOPS til datadisken, og du kan konfigurere mængden af ​​IOPS, der skal konfigureres for din klynge. Denne konfiguration giver fuld sikkerhed for dine data, selv i det tilfælde, hvor du bruger de lokale SSD-diske. Vi tilbyder i øjeblikket fire størrelser - Large, XLarge, X2XLarge, X4XLarge. For flere detaljer se sektionerne Bring Your Own Cloud (BYOC) og Dedikerede klynger på vores prisside.

Hvis du har en meget høj skrivearbejdsbelastning, er det muligt, at din EBS-instans muligvis ikke er i stand til at følge med dine SSD-instanser. I dette scenarie er der nogle få muligheder, og vores supportteam vil med glæde guide dig igennem dem. Al vores eksisterende funktionalitet, inklusive sikkerhedskopier, gendannelser, kloner, skalering, kompakt osv. fortsætter med at fungere som normalt. Hvis du har yderligere spørgsmål, bedes du kontakte os på [email protected].


  1. mongoDB array paginering

  2. $lookup flere niveauer uden $unwind?

  3. Søg på flere samlinger i MongoDB

  4. 3 måder at returnere distinkte værdier i MongoDB