[アップデート]Amazon Kinesis Data FirehoseがRedshift Serverlessへのデータストリーム配信をサポートしました

2023.06.22

どーも、データアナリティクス事業本部コンサルティングチームのsutoです。

タイトルのとおり、AWSのアップデートでAmazon Kinesis Data FirehoseがRedshift Serverlessへのデータストリーム配信をサポートしたのでさっそく確認してみました。

事前準備

まずはRedshift Serverlessクラスターを準備します。

今回は既に独自で準備しているRedshift Serverlessを使用させていただきます。

  • RedshiftクラスターのパブリックアクセスをONに設定
  • Redshift Serverlessのセキュリティグループで、Firehoseのアクセス元IPを許可

※デフォルト設定を使用したRedshift Serverless構築は以下の記事を参考にすると良いです。

※また、本番環境を意識したカスタム設定によるRedshift Serverless構築は以下の記事が参考になります。

Firehoseデリバリストリームの作成

Kinesis Data Firehoseの画面から配信ストリームを作成します。

  • ソース「Direct PUT」、送信先に「Amazon Redshift」を選択

  • 送信先タイプ「Serverless ワークグループ」を選択し、作成済みのRedshift Serverlessワークグループ名を選択

  • Redshift接続情報やコピー先のテーブル名を指定

  • S3中間バケットやCOPYオプションの設定を指定

  • 今回IAMロールについては同時に新規作成とします

  • 以上、入力完了したら「配信ストリームを作成」をクリック

ストリームデータ送信部分を作成

今回はKinesis Data Firehoseにある「サンプルデータを使用した配信ストリームのテスト」の機能を利用します。

  • 作成した配信ストリームの詳細画面から「デモデータでテスト」をクリックしてウィザードにしたがって設定していきます

  • まずステップ1で配信データのためのテーブルを作成

Create table firehose_test_table
(
      ticker_symbol varchar(4),
      sector varchar(16),
      change float,
      price float
);
  • ステップ2は前工程で設定済み
  • よって次のステップ3で「デモデータの送信を開始」をクリックして数分待ちます

動作確認

では実際にデータ配信を確認してみます。

  • 中間S3バケットとRedshift query editor v2でRedshiftテーブルを確認

上記のとおり、Redshift ServerlessのテーブルにもKinesis Data Firehoseからストリーム配信することができました。

  • 最後にKinesis Data Firehoseの画面でステップ5の「デモデータの送信を停止」をクリックしてストリームを止めましょう。

参考