MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Exécuter MongoDB sur DigitalOcean

DigitalOcean est un fournisseur d'hébergement basé à New York, spécialisé dans les machines virtuelles basées sur SSD. La majorité de nos clients choisissent de déployer et de gérer des bases de données sur Amazon AWS, cependant, l'exécution de bases de données intensives en écriture à grande échelle sur AWS est une opération assez difficile et chronophage. Si vous souhaitez en savoir plus sur ces problèmes, consultez Ce que j'aimerais voir dans EC2… Nous utilisons DigitalOcean depuis plusieurs mois maintenant et sommes ravis de partager ce que nous avons appris sur le système.

Qu'est-ce que nous aimons chez DigitalOcean ?

  1. Les SSD sont incroyables

    Il semble si juste d'exécuter une base de données sur des SSD. Le débit du disque est excellent et vous pouvez clairement voir les avantages lorsque vous exécutez un index ou réparez une base de données. Cette opération prenait auparavant des heures sur Amazon Elastic Block Store (EBS), et nous pouvons maintenant la terminer en quelques minutes sur DigitalOcean. Si vous n'exécutez pas actuellement votre base de données sur un SSD, vous devez absolument reconsidérer votre décision.

  2. Simplicité

    L'API et l'interface utilisateur sont simples et élégantes. Il est très facile d'accomplir ce que vous voulez en quelques clics ou quelques lignes de code. J'espère qu'ils conserveront la simplicité tout en ajoutant de nouvelles fonctionnalités.

  3. Prix

    Le prix est excellent - simple et bas. Vous n'avez pas non plus à vous soucier des instances à la demande par rapport aux instances réservées.

  4. Faible latence d'Amazon

    La latence d'Amazon AWS US-East et du centre de données DigitalOcean NY est d'environ 5 à 8 ms. Cela permet aux clients de continuer à utiliser AWS pour leur niveau frontal et intermédiaire et de déployer leurs clusters pour MongoDB sur DigitalOcean.

Qu'est-ce qui pourrait être amélioré sur DigitalOcean ?

  1. Cadre de disponibilité

    Nous aimerions voir un cadre de disponibilité similaire aux zones de disponibilité EC2. Actuellement, lorsque nous avons besoin d'être doublement sûrs de la disponibilité, nous parcourons différents centres de données NY1, NY2, SFO et Amsterdam. Cependant, à long terme, il serait bon de voir la construction de la "zone de disponibilité" dans un seul centre de données.

  2. Instantanés en ligne

    DigitalOcean n'a pas d'instantanés en ligne, vous devez donc éteindre votre machine pour les instantanés. Cela rend la prise de sauvegardes ou d'instantanés ridiculement difficile. MongoDump / MongoRestore n'est pas vraiment une option pour les grands déploiements. Nous avons dû faire beaucoup de travail d'ingénierie, mais nous avons pu créer une solution de sauvegarde fiable et rapide sur DigitalOcean.

  3. Prise en charge de plusieurs disques et prise en charge de LVM

    Actuellement, vous ne pouvez avoir qu'un seul disque attaché à votre machine virtuelle. Pour les clusters hautes performances, nous aimerions distribuer différentes parties de la base de données (journal, base de données, etc.) sur différents disques, et aimerions voir la possibilité d'attacher/détacher plusieurs disques. LVM n'est pas non plus pris en charge actuellement, et ce serait un excellent ajout car il est très utile de prendre des instantanés de votre système.

  4. Redimensionnement dynamique du disque

    Si vous remplissez votre disque actuel, vous n'avez pas vraiment beaucoup d'options. Vous devez créer une nouvelle machine plus grande et migrer vos données. À long terme, il est essentiel de pouvoir redimensionner votre disque existant au lieu d'avoir à migrer vers une nouvelle machine lorsque votre disque est plein.

Globalement, nous aimons le système et souhaitons qu'il réussisse ! Nous espérons déployer et gérer de nombreux autres serveurs MongoDB sur DigitalOcean cette année.

Pour plus d'informations sur nos offres DigitalOcean, consultez notre page DigitalOcean.

Comme toujours, si vous avez d'autres questions, veuillez nous contacter à [email protected].