Was ist der Unterschied zwischen dem AWS Boto und Boto3 [geschlossen]

141

Ich bin neu in AWS mit Python und versuche, die Boto-API zu erlernen. Ich habe jedoch festgestellt, dass es zwei Hauptversionen / -pakete für Python gibt. Das wäre boto und boto3.

Was ist der Unterschied zwischen den AWS-Boto- und Boto3-Bibliotheken?

Matt
quelle
6
Mehr als vier Jahre nach der Frage und zwei Jahre nach der Schließung sind diese Frage und die Antwort weiterhin nützlich. Es werden keine Meinungen oder Empfehlungen abgefragt, sondern eine technische Frage zum Unterschied zwischen zwei Bibliotheken gestellt.
Daniele Procida

Antworten:

184

Das Boto- Paket ist die handcodierte Python-Bibliothek, die es seit 2006 gibt. Es ist sehr beliebt und wird von AWS vollständig unterstützt, aber weil es handcodiert ist und so viele Dienste verfügbar sind (wobei immer mehr angezeigt werden) ist schwer zu pflegen.

So boto3 ist eine neue Version der Boto Bibliothek basiert auf botocore . Alle Low-Level-Schnittstellen zu AWS werden aus JSON-Servicebeschreibungen gesteuert, die automatisch aus den kanonischen Beschreibungen der Services generiert werden. Die Schnittstellen sind also immer korrekt und immer auf dem neuesten Stand. Über der Client-Ebene befindet sich eine Ressourcenebene, die eine schönere, pythonischere Oberfläche bietet.

Die boto3-Bibliothek wird von AWS aktiv entwickelt und ist diejenige, die ich empfehlen würde, wenn sie mit der Neuentwicklung beginnen.

garnaat
quelle
11
In der Praxis sind AWS-Services, die in boto3 keine Ressourcenebene haben, in boto häufig einfacher zu handhaben. YMMV
Atifm