Matillion

Matillion使えばGUIで簡単にBigQueryのテーブルを一括削除できることに気づいてしまった話

いつも無駄口が多く記事のS/Nが悪いことに定評のある分析官岡部がお伝えいたします。
今日は、絶対に、簡潔に、目的のことだけを、書く、、、ッ!
目的はタイトルの通りです。まどろっこしくてひと昔前のラノベのタイトルみたいですね。

 

なぜ僕たちはテーブルを削除し過去を精算したくなるのか?

増えちゃいますよね、、、テーブル
分析してたらアドホックにいろんなことやりたくなるから、その都度「〇〇_tmp1」とか「〇〇_{yyyymmdd}」とか、あとあと見返しても絶対何のテーブルか分からなくなるようなそんなテーブルが。気づいたらクリボー並みに増殖してるってこともよくあります。

大量のテーブルで溢れかえっていてお目当てのテーブルは見つからないし、検索をかけようとしても適当に語尾の数字とかで命名してるから無数にヒットして結局どれがお目当てのものか分からなくなるし、そもそもテーブルを放置しっぱなしにしてるとそれだけで蛇口の閉め忘れみたいにじわじわ課金されちゃうしで、ろくなことがありません。
こうなると「マヂもう無理、過去を精算して命名規則を刷新したデータセットに生まれ変わりたい」という欲求に駆られる。そんな時が分析官にはしばしば訪れます。

最初から良き命名規則にしたったらええやん?とツッコミを受けそうですが、やってる当時は必死なのです。(明日までにこの分析終わらせなきゃ)とか、「俺の分析結果を待ってる奴らがいるんだ、、、なあに心配するこたぁねぇ、早いとこ終わらせてメシにしようぜ?(死亡フラグ)」とか、それはもう焦燥に駆られて仕事をしています。

 

立ちはだかるCLIの崖

既にS/Nの著しい低下が見られる気もしますが、気にせず行きましょう。
上述のような欲求に駆られたからとて、増えすぎたテーブルをちまちまBigQueryのコンソール上から「delete, delete, delete, delete, delete, delete・・・・」と魅上照のごとく削除していくのは疲れます。。。
データセット単位で一括削除できればいいんですが、得てしてこういう時はデータセットにまたがって不要テーブルが散らかっており、さらに各データセットに必要テーブルも存在してる、そんなもんです。
そこで、「BigQuery 一括 削除」みたいな小学生並みのクエリワードで検索をかけると、以下のような素晴らしい記事が引っ掛かります。

もちろん、これらの方法に従ってもいいんですが、一点懸念点がありましてこれらは全てCLIなんですね。もちろんマッチョな方であれば、「我、CLIで一括削除したり。お前も、それで、できる。」などとおっしゃることでしょう。
ただしかし、我々凡夫にとっては2025年の崖と並び立ち、「CLIの崖」というものが存在いたします。できれば「くろいがめん」に「えいご」を打ち込んでいきたくないよぅ、、、
そんな我々にそっと差し伸べられた手。
そう、Matillionでした。

 

Matillionから差し伸べられた救いの手

早速その手を掴みましょう。
まずはOrchestration JobでDelete Tablesをセットしてターンエンド。

 

そしてプロジェクト名・データセット名を指定し、削除したいテーブルを選んでいきます。んーこのShift+↓でサクサク指定できる操作感ンー。王騎将軍もご満悦です。

 

指定し終わったら実行して完了です。テーブルが削除されてることがわかると思います。以上です!、、、この章だけ書いてりゃノイズ0だったのに

 

Taizo Okabe
脳筋系データサイエンティスト。筋肉は裏切らない。筋肉。