Pourquoi DynamoDB ?

Habituellement chez Y-Note nous avons une préférence pour le MongoDB pour tout ce qui concerne les bases de données orientée document. La gestion de Cluster MongoDB reste néanmoins une tâche qui peut être assez fastidieuse et qui n’est pas adapté pour tous nos clients.

DynamoDB_Logo

Amazon propose une solution NoSQL en cloud simple et efficace qui permet de proposer une alternative peu couteuse et complètement scalable (limité mais qui peut être adapté pour des projets peu complexe). Associé aux solutions CloudWatch (Monitoring) et SNS (Gestion des alertes) et intégré a toutes les autres solutions AWS, DynamoDB permet de proposer une solution NoSQL de qualité et très accessible.

Tout est stocké sur des disques SSD et peut être répliqué sur 3 Datacenters permettant de proposer un environnement haute disponibilité très réactif.

Néanmoins DynamoDB derrière cette simplicité et ces coûts réduits n’a pas que des avantages par rapport a MongoBD.

  • La structure de document n’est pas aussi puissante (impossible de faire des sous-documents)
  • Peu de souplesse sur la gestion des index
  • Gestion des types de données limités
  • Contrainte de taille assez forte

Vous trouverez une analyse un peu plus poussée ci-dessous  :

  • <a href="http://www.masonzhang why not try here.com/2013/08/3-reasons-you-should-use-dynamodb-over.html » onclick= »_gaq.push([‘_trackEvent’, ‘outbound-article’, ‘http://www.masonzhang.com/2013/08/3-reasons-you-should-use-dynamodb-over.html’, ‘3 raisons d’utiliser DynamoDB plutôt que MongoDB’]); » target= »_blank »>3 raisons d’utiliser DynamoDB plutôt que MongoDB
  • 7 raisons d’utiliser MongoDB plutôt que DynamoDB

AWS (Amazon Web Service) propose des SDK complet pour les langages suivants :

  • Java
  • Javascript
  • Ruby
  • PHP
  • Python
  • .NET

En ce qui concerne le PHP, l’intégration du SDK est particulièrement simple et se base sur Composer.
Déployer le SDK sur Symfony2 se fait donc en quelques secondes.

Vous trouverez plus d’information sur le sujet dans notre article sur la création d’un système d’authentification personnalisé avec DynamoDB sur Symfony2.