sql >> Databasteknik >  >> NoSQL >> MongoDB

Kör MongoDB på DigitalOcean

DigitalOcean är en NY-baserad värdleverantör som specialiserar sig på SSD-baserade virtuella maskiner. En majoritet av våra kunder väljer att distribuera och hantera databaser på Amazon AWS, men att köra storskaliga skrivintensiva databaser på AWS är en ganska svår och tidskrävande operation. Om du är intresserad av att lära dig mer om dessa problem, kolla in Vad jag skulle vilja se i EC2... Vi har använt DigitalOcean i flera månader nu och är glada över att dela med oss ​​av vad vi har lärt oss om systemet.

Vad gillar vi med DigitalOcean?

  1. SSD:er är fantastiska

    Det känns så rätt att köra en databas på SSD:er. Diskgenomströmningen är stor, och du kan tydligt se fördelarna när du kör ett index eller reparerar en databas. Den här operationen brukade ta timmar på Amazon Elastic Block Store (EBS), och vi kan nu avsluta på bara några minuter på DigitalOcean. Om du för närvarande inte kör din databas på en SSD bör du definitivt ompröva ditt beslut.

  2. Enkelhet

    API:et och användargränssnittet är enkla och eleganta. Det är väldigt enkelt att åstadkomma vad du vill med bara några klick eller några rader kod. Jag hoppas att de bevarar enkelheten när de fortsätter att lägga till nya funktioner.

  3. Priser

    Priset är bra – enkelt och lågt. Du behöver inte heller oroa dig för on-demand kontra reserverade instanser.

  4. Låg latens från Amazon

    Latensen från Amazon AWS US-East och DigitalOcean NY datacenter är cirka 5-8 ms. Detta gör det möjligt för kunder att fortsätta använda AWS för sin front- och mid-tier och distribuera sina kluster för MongoDB på DigitalOcean.

Vad kan förbättras på DigitalOcean?

  1. Tillgänglighetsramverk

    Vi skulle gärna se ett tillgänglighetsramverk som liknar EC2 tillgänglighetszoner. För närvarande, när vi behöver vara dubbelsäkra på drifttid, stöter vi på olika datacenter NY1, NY2, SFO och Amsterdam. Men i det långa loppet skulle det vara bra att se konstruktionen av "tillgänglighetszonen" i ett enda datacenter.

  2. Önblicksbilder online

    DigitalOcean har inga ögonblicksbilder online, så du måste stänga av din maskin för ögonblicksbilder. Detta gör det löjligt svårt att ta säkerhetskopior eller ögonblicksbilder. MongoDump / MongoRestore är egentligen inte ett alternativ för stora distributioner. Vi har behövt göra mycket ingenjörsarbete, men kunde bygga en pålitlig och snabb backuplösning på DigitalOcean.

  3. Stöd för flera diskar och LVM  support

    För närvarande kan du bara ha en disk ansluten till din virtuella maskin. För högpresterande kluster skulle vi vilja distribuera olika delar av databasen (logg, db, etc.) på olika diskar, och skulle älska att se möjligheten att bifoga/koppla bort flera diskar. LVM stöds inte heller för närvarande, och det skulle vara ett bra tillägg eftersom det är mycket användbart att ta ögonblicksbilder av ditt system.

  4. Dynamisk diskstorlek

    Om du fyller på din nuvarande disk har du egentligen inte många alternativ. Du måste skapa en ny, större maskin och migrera din data över. I det långa loppet är det viktigt att kunna ändra storlek på din befintliga disk istället för att behöva migrera till en ny dator när din disk är full.

Sammantaget gillar vi systemet och strävar efter att de ska lyckas! Vi hoppas kunna distribuera och hantera många fler MongoDB-servrar på DigitalOcean i år.

För mer information om våra DigitalOcean-erbjudanden, se vår DigitalOcean-sida.

Som alltid, om du har några andra frågor vänligen kontakta oss på [email protected].


  1. Hur man skapar RedisCacheManager i spring-data 2.0.x

  2. Inkludera alla befintliga fält och lägg till nya fält i dokumentet

  3. Duplicera ett dokument i MongoDB med ett nytt _id

  4. hur använder man nestjs redis microservice?