Airbyte x Snowflake x Twitter APIを使ったデータパイプラインの構築
前回記事の続きで、今回はタイトルにある通り、Airbyte x Snowflake x Twitter APIを使ったデータパイプラインの構築をしてみます。
前提条件
- Airbyte実行環境
- TwitterAPIキー
- Snowflake環境
Airbyte実行環境
環境作成がまだの方は前回記事を参考に構築してください。
TwitterAPIキー
TwitterAPIキーの取得がまだの方は以下Twitterの開発ページより取得してください。
※プロジェクトを作成したうえで、Appの作成をしないとAirbyteでエラーを起こしますので注意してください。
Snowflake環境
以下よりトライアルアカウントを作成してください。
Twitterコネクタの作成
Airbyteの「Connections」より、TwitterでフィルタリングしTwitterをクリックします。
設定の説明が右画面に記載されているのでとても助かります。
Access Tokenはベアラートークンを使います。
Search QueryはTwitterで検索したい文字列を設定します。
設定できたら「Set up source」をクリックします。
画面左バーのSourcesからTwitterをコネクタをクリックし、Settings画面で設定できていることを確認します。
Snowflakeコネクタの作成
画面左バーより「Destinations」をクリックし、Snowflakeをクリックします。
必要な情報を入力します。入力後「Set up destination」をクリックします。
※Rpleやデータベースなどは適切に設定したものを使うのがベストですが、疎通確認程度なので、とりあえずACCOUNTADMINと適当なDBを設定しています。実運用される場合はセキュリティを担保した適切な環境で実施ください。
TwitterコネクタとSnowflakeコネクタを接続する
画面右バーのSourcesより先ほど作成したTwitterをクリックします。
画面遷移後、「Create a connection」をクリックします。
宛先定義にSnowflakeをクリックします。
データパイプラインの設定を行います。
カスタマイズしたい部分を適宜設定します。
設定後、「Set up connection」をクリックします。
すると同期が始まります。
同期が完了したので、Snowflakeを見てみます。
PUBLICスキーマ配下に「_AIRBYTE_RAW_TWEETS」と言うテーブルが出来ており、JSON形式でTweetデータを取得できています。
お片付け
docker compose down --rmi all --volumes --remove-orphans
まとめ
Airbyteで設定する際は説明書きあるので、とてもわかりやすかったです。
コネクタも一杯あるので、データ移行とかにも使えそうです。
気になった方は是非Airbyteで遊んでみてください。
Discussion