3

Bonjour,La meilleure solution de base de données pour Django sur AWS

Je cherche actuellement à déployer une application Django sur une instance EC2, mais tout devient trop confus pour moi! Je comprends que Django a une implémentation intégrée pour MySQL, PSQL et SQLite. Maintenant, Amazon a RDS (MySQL), SimpleDB et DynamoDB. Avez-vous des recommandations sur ce qui devrait être utilisé? Je veux quelque chose qui soit évolutif pour l'avenir et à l'épreuve des balles. AWS fournit une API python pour son SimpleDB et DynamoDB. Est-ce que ça marchera bien avec Django ?!

Merci beaucoup!

EDIT: Je préférerais me concentrer sur une solution globale qui sera à l'épreuve des balles, efficace et rapide, et pas trop compliqué. Comme je prévois que plus de gens travailleront sur le système, je ne veux pas vraiment quelque chose de compliqué et difficile à maintenir. Je préfère consacrer plus de temps à l'installation et à l'installation, mais à la fin, la solution sera plus rapide et plus facile à comprendre et à utiliser. (IE .: Querying la DB sera simple et pas de hacks autour).

+2

Ils peuvent tous "bien fonctionner" avec Django, mais vous devriez nous dire quelles sont vos priorités - vitesse de développement/temps, temps système, redondance, performance, etc.? –

+0

Voir modifier! :) merci – abisson

Répondre

5

SimpleDB et DynamoDB sont NoSQL donc vous aurez besoin de django-nonrel pour y faire face et n'ont aucune garantie si tout fonctionnera bien. Mais si vous avez besoin d'utiliser NoSQL, il existe des modules tiers pour Django. RDS est MySQL, ce qui vous permet d'utiliser le pilote MySQL par défaut de Django, ORM et admin, et ainsi de suite. Cela semble une bonne solution mais vous ne pouvez pas modifier ou mettre à jour ces instances MySQL.

Si votre base de données n'est pas encore grande et lourde, vous pouvez configurer une instance mysql locale sur votre EC2 et la déplacer vers RDS si vous avez besoin de grandir.

+0

Ok cool. Recommanderiez-vous l'utilisation de Django + MySQL (sur chaque instance EC2) ou utilisez Boto + DynamoDB (ou SimpleDB) ou Django + RDS? Le produit sera vendu à X sociétés différentes, qu'ils paieront pour l'hébergement. En tant que développeur, est-il préférable de vendre des instances X EC2 avec leur propre EC2 + MySQL, ou d'avoir des instances X EC2 se connectant toutes à RDS/Dynamo (donc la base de données est partagée entre toutes). Pensez-y comme l'argent n'est pas un objet, mais le nombre d'utilisateurs pour chaque EC2 ne dépassera pas 10k. – abisson

+0

10k utilisateurs globaux ou même quotidiens peuvent être traités avec un serveur sans DB externe (si vous ne fournissez pas de service de calculs d'explosion nucléaire). J'utiliserais MySQL (local ou RDS) parce que nonrel db ajoute une absctraction externe pour relier ORM aux objets, ce qui est de toute façon moins testé que le connecteur mysql de Django. Mais je ne sais pas lequel (local ou RDS) est globalement meilleur. Il ne semble pas y avoir de gros problèmes avec RDS et il est nettement plus facile à déployer pour chaque instance. Plus l'évolutivité et les choses ... RDS semble un peu mieux que la DB locale. – ilvar

+0

Parfait merci! – abisson

Questions connexes