2019年1月21日スポンサーリンク直近embulkを使って、cloudSQLからBigQueryにデータ移送したのでので、セットアップから実際に動かすところまで整理します。今回の環境Java1.8インストールJava1.8のインストールできたか確認embulkのインストールembulkのプラグインを追加REQUIREDの扱いが難しいembulkとはembulkとは、データ転送ツールです。今回、利用した目的は、cloudSQLからBigQueryにデータを転送したいというものでした。embulkを選ぶ理由embulkを採用した理由は、cloudSQLからBigQuery定期的にデータを移送したい1回だけとか、毎月1回というレベルであればデータ移送を手動でやることも考えられるのですが、毎日全テーブルを移送したいということだったので、バッチ実行できるツールを選びました。taskでbashを動かしいたのですが、移送がうまくいってなかったり、bashを書くのが辛くなっていたため、もっと手軽にできるものがembulkでした。GCPのサービスでやりたかったけど、なかったcloudSQLもBigQueryもGCPのサービスなので一見簡単にデータ移送ができそうです。私もGCPのサービスを使えば簡単に実現できると考えていたのですが、そんなことはなくGCPに詳しい方に聞いてもやるならembulkだねって感じでした。\lJava1.8インストールembulkは、java1.8系以上でないと動作しないため、インストールします。centOSやMacOSでやる方は、インストール方法を各自で確認を願いします。-version結果が以下のようになってればOKです。mode)これで、embulkをインストールする準備ができました。embulkのインストールembulkをインストールします。~/.bashrcembulkのプラグインを追加embulkには、データのinとoutに合わせたプラグインが用意されています。今回は、cloudSQL(Mysql)とBigQuery用のプラグインをインストールします。embulk-output-bigquery`REQUIREDの扱いが難しいidなど、MySQL上で必須項目にしているカラムもBigQueryに移送時にうまくいかないことがあるそうです。他にも数値と文字列がごっちゃになったり、型変換がうまくいかないためエラーになります。その場合は、BigQueryのスキーマをnullableにするなど回避しましょう。MEtaiコンサルタントから2018年にエンジニアに転向。年収400万円のサラリーマンエンジニアから、半年で月収100万円を稼ぐエンジニアになった。機械学習、フロント、サーバサイドなど幅広く活動中。【投資対効果で算出】プログラミングスクールは高いのか。フリーランスエンジニアtaiコンサルタントから2018年にエンジニアに転向。年収400万円のサラリーマンエンジニアから、半年で月収100万円を稼ぐエンジニアになりました。