一括削除

一括削除

お使いの Object Storage システムが、この機能をサポートするかどうかを確認する場合、発見可能性 を参照してください。または、サービスプロバイダーにお問い合わせください。

一括削除により、1 つのリクエストで最大 10,000 (設定可能) のオブジェクトやコンテナーを削除できます。

一括削除の要求

POSTDELETE 処理のパスに bulk-delete パラメーターを追加して、一括削除処理を実行します。

注釈

DELETE 処理は後方互換性のためにサポートされます。

パスは、オブジェクトとコンテナーを含む、/v1/12345678912345 のような

POSTDELETE 処理のリクエストボディーに、削除するオブジェクトやコンテナーを一覧化します。それぞれの名前を改行文字で分けます。一覧に最大 10,000 項目 (設定可能) を含められます。

さらに、以下を実行する必要があります。

  • 名前を UTF-8 エンコードしてから URL エンコードします。
  • コンテナーとオブジェクトの名前として CONTAINER_NAME/OBJECT_NAME を指定して、オブジェクトを示します。
  • コンテナーの名前に CONTAINER_NAME を指定して、コンテナーを指定します。コンテナーが空であることを確認します。オブジェクトがある場合、Object Storage はコンテナーを削除できません。
  • Content-Type リクエストヘッダーを text/plain に設定します。

一括削除の応答

Object Storage はリクエストを処理するとき、複数の副処理を実行します。すべての副処理が失敗したときでも、その処理は 200 状態を返します。一括処理は、副処理の成否を示す詳細を含む応答ボディーを返します。いくつかの副処理は、他が失敗しても、継続されるでしょう。応答ボディーを検査して、それぞれの削除副処理の結果を判断します。

Accept リクエストヘッダーを以下のどれかに設定して、応答形式を定義できます。

text/plain
プレーンテキスト形式。Accept ヘッダーを省略すると、text/plain になります。
application/json
JSON 形式。
application/xml または text/xml
XML 形式。

応答ボディーは、以下の情報を含みます。

  • 実際に削除されたファイル数。
  • 見つからなかったオブジェクト数。
  • エラー。オブジェクトの名前、削除に失敗したオブジェクトに関連するエラー状態の一覧。この形式は、Accept ヘッダーに設定した値により決まります。

以下の一括削除の応答は application/xml 形式です。この例では、mycontainer コンテナーが空のため、削除できません。

<delete>
    <number_deleted>2</number_deleted>
    <number_not_found>4</number_not_found>
    <errors>
        <object>
            <name>/v1/12345678912345/mycontainer</name>
            <status>409 Conflict</status>
        </object>
    </errors>
</delete>
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.