2016-12-27 29 views
2

私は、いくつかの異なるテーブルを持つデータセットを持っています。テーブルの1つには100個のパーティションがあります。私は特定の名前を持つテーブルのすべてのパーティションを削除/削除したいと思います。Bigqueryでパーティションを持つテーブルを削除する

たとえば、以下のデータセットが1つのデータセットにあります。これまでは、一度に1つのパーティションしか削除できません。とにかく、すべてのTableAパーティションをすべて削除する必要はありますか?

tableA_20161220 tableA_20161221 tableA_20161223 tableB_20161220 tableB_20161221 tableB_20161223

答えて

0

のWeb UIから、一度に1つのテーブルのみを削除することができます。

は全体的に、BigQueryのtables.delete APIは完全にこのプロセスを作るためにclient of your choicecommand lineすることができます「スクリプト」を使用したり、ループ内で必要なテーブルを削除するには、半自動化された時

で1つのテーブルのみを受け入れます。

2

Mikhailは既に指摘したように、APIを使用してスクリプトを作成します。

私たちは定期的にこのようなタスクにCLIを使用しています。この小さなスニペットはあなたを動かすのに十分なはずです。 「force」という削除を実行するので、ご使用には注意してください。

bq ls --format=csv <DATASET> | awk '{if(NR>1)print}' | awk -F, '{print $1}' | grep 'A' | xargs -n 1 -P 4 -i bq rm -f <DATASET>.{} 
関連する問題