Pocket

BigQueryのテーブルを間違えて消しても復元できるの知ってた!?

BigQueryのテーブルは謝って削除しても復元可能です。しかし、重要なのはviewテーブルのクエリら定期的に全バックアップをしないと死亡するため、頑張ってシェル芸してみました。


■bq show

https://cloud.google.com/bigquery/bq-command-line-tool?hl=ja#listdatasets

  • bq ls

  • bq show

  • test.json

bq showで全ての情報がjsonで返ってくるので、一番下のqueryをいい感じに取ってきます。


■backup-all-views.sh

https://stackoverflow.com/questions/48814065/bigquery-backup-all-view-definitions

上記参考にしましたが、全viewテーブルのクエリをsqlで日付ごとに保存し、世代は5日で十分かと思います。実行すると以下のようにsqlファイルが出来上がり、クエリが保存されています。
※jqコマンド必須!

  • cron

S3にコピーすればOK!


■まとめ

これで削除しても復元可能!!バックアップ大事。

Pocket

カテゴリー: BigQueryshell script

adachin

1989年生まれのSRE。ホスティングから大規模なアドテクなどのインフラエンジニアとして携わる。現在はサービスの信頼性向上、DevOps、可用性、レイテンシ、パフォーマンス、モニタリング、オブザーバビリティ、緊急対応、AWS/Azureでのインフラ構築、Docker開発環境の提供、Kubernetes保守、インフラコード化、新技術の検証、リファクタリング、セキュリティ強化などを担当している。個人事業主では数社サーバー保守とベンチャー企業のSREインフラコンサルティングやMENTAで未経験者にインフラのコーチング/コミュニティの運用を実施している。また、「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/技術広報/テクニカルサポート/コントリビュータでもある。

0件のコメント

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください