メインコンテンツに移動

AWS SDK for Python (Boto3)

Boto3 を使用してアプリケーションを開発およびデプロイしましょう。AWS SDK for Python を使用すると、慣用的な Python API を使用して AWS サービスを簡単に呼び出すことができます。

仕組み

Boto3 は、Python のデベロッパーにとってなじみ深く整合性のあるライブラリのセットを提供することで、AWS サービスを簡単に利用できるようにします。AWS SDK はどれも認証情報の管理、再試行、データマーシャリング、シリアル化といった API ライフサイクルに関する考慮事項をサポートしています。SDK は、Botocore (Python SDK と AWS CLI 間で共有される低レベル機能を提供するライブラリ) と Boto3 (Python SDK 自体を実装するパッケージ) という 2 つの主要な Python パッケージで構成されています。

AWS SDK for Python は、各 AWS サービス用の Python API を提供します。SDK を使用すると、Amazon S3、Amazon EC2、Amazon DynamoDB などで動作する Python アプリケーションを構築できます。SDK は、セマンティックにバージョニングされた PyPI パッケージとして利用できます。

特徴

多くの AWS のオペレーションは、一回の応答で送信するには応答オブジェクトが大き過ぎる場合、結果をページ分けして返します。Boto3 は、サービスコール全体で結果のイテレーションをシームレスに行うために、ページネーションメソッドを提供しています。

Boto3 は waiter と呼ばれるヘルパーメソッドを提供します。Waiter は、AWS リソース内での事前定義されたステータス変化を自動的にポーリングします。例えば、Amazon EC2 インスタンスを開始し、waiter を使用してそのインスタンスが "running" 状態になるまで待機する、または新しい Amazon DynamoDB テーブルを作成し、それが使用可能になるまで待機するといったことが可能です。Boto3 では、クライアント API とリソース API の両方にウェーターが用意されています。

Boto3 には、Amazon S3 の自動マルチパート転送や Amazon DynamoDB の簡略化されたクエリ条件など、サービス固有の機能が多数用意されています。