2015-09-01 1 views
67

Je suis nouveau sur AWS en utilisant Python et j'essaie d'apprendre l'API boto mais je remarque qu'il y a deux versions majeures/paquets pour Python. Ce serait boto, et boto3.Quelle est la différence entre AWS boto et boto3

Je n'ai pas été en mesure de trouver un article avec les principaux avantages/inconvénients ou différences entre ces paquets.

Répondre

100

Le paquet boto est la bibliothèque Python codée à la main qui existe depuis 2006. Il est très populaire et est entièrement pris en charge par AWS, mais parce qu'il est codé à la main et qu'il y a tant de services disponibles (avec plus apparaissant tous le temps) il est difficile à maintenir. Par conséquent, boto3 est une nouvelle version de la bibliothèque boto basée sur botocore. Toutes les interfaces de bas niveau vers AWS sont basées sur des descriptions de service JSON générées automatiquement à partir des descriptions canoniques des services. Ainsi, les interfaces sont toujours correctes et toujours à jour. Il y a une couche de ressources au-dessus de la couche client qui fournit une interface plus agréable et plus Pythonienne.

La bibliothèque boto3 est activement développée par AWS et est celle que je recommanderais aux utilisateurs d'utiliser s'ils démarrent un nouveau développement.

+3

En pratique, les services AWS qui n'ont pas de couche de ressources dans boto3 sont souvent plus faciles à gérer dans boto. YMMV – Atifm