これがよくある質問であることは知っていますが、それに対する良い答えはないようです。
ゴブ(いくつあるかわかりません)のファイルが入ったバケットがあります。それらはすべて1個2k以内です。
1) これらのファイルをリストせずにいくつ持っているかを知るにはどうすればよいですか? 私は s3cmd.rb、aws/s3、および jets3t のものを使用しましたが、最初の 1000 レコードをカウントするコマンドを見つけることができます (実際にそれらに対して GETS を実行します)。
私は jets3t のアプレットも使用してきましたが、これは非常に使いやすいので、すべてのオブジェクトを一覧表示できないため、ヒープ スペースが不足します。(おそらく、それらすべてに対してGETSを実行し、それらをメモリに保持していることが原因です)
2) バケットを削除するにはどうすればよいですか? 私が見た中で最も良いのは、並列化された削除ループであり、同じファイルを削除しようとすることがあるという問題があります。これは、私が遭遇したすべての「deleteall」コマンドが行うことです。
何百万もの画像/テキストをホストしていると自慢しているあなたたちは何をしますか?? 削除したい場合はどうなりますか?
3) 最後に、これに対する別の回答はありますか? これらのファイルはすべて txt/xml ファイルであるため、S3 がそのような懸念事項であるかどうかさえわかりません。おそらく、これをある種のドキュメント データベースに移動する必要がありますか??
要するに、Amazon S3 API には、COUNT と DEL_BUCKET という 2 つの非常に重要な操作が欠けているということです。(実際には、バケットを削除するコマンドがありますが、バケットが空の場合にのみ機能します) 誰かがこれらの 2 つの操作を実行するのに適した方法を思いついた場合、私は喜んで多くの報奨金を放棄します。
アップデート
いくつかの質問に答えるだけです。私がこれを尋ねる理由は、私が過去 1 年ほどの間、数十万、または数百万の 2k の txt および xml ドキュメントを保存してきたからです。前回、数か月前にバケットを削除したかったのですが、削除する前にバケットを空にする必要があるため、文字通り数日かかりました。これは、API サポートなしで再びこれを行う必要があるのではないかと恐れているお尻の痛みでした。
アップデート
これは家を揺るがします!
http://github.com/SFEley/s3nuke/
私は数分で 1 ~ 2,000 個のファイルに相当する数ギグを RM しました。