【速報】データインジェスションサービス「Amazon Kinesis Firehose」がリリースされました! #reinvent

2015.10.08

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Kinesis がシームレスに S3/Redshiftと連携

Amazon Kinesis に AWS サービスへのデータ連携の親和性が高い Firehose が 発表されました。

2年前に発表された Kinesis はデータストリームのバッファリングとして活用されてきました。

Kinesis の欠点の一つとして、同じく Pub/Sub モデルに対応した SNS と異なり AWS の他のサービスとの連携性が今ひとつで、Kinesis Consumer や最近では AWS Lambda を噛ませて S3 など他の AWS サービスと連携せざるを得ませんでした。

今回発表された Kinesis Firehose を利用すると、

  • S3
  • Redshift

といった他の AWS のストレージ・データベースとシームレスにデータ連携されるようになります。

firehose-rs-flow

Kinesis Firehose は

  • US East (N. Virginia)
  • US West (Oregon)
  • EU (Ireland)

のリージョンで利用可能です。東京リージョン展開が待ち遠しいです。

AWS 版 Kinesis 向け fluentd もどきも追加されました

日本の Kinesis ユーザーの中には システムから Kinesis ストリームへ PutRecord する際に、 fluentd のプラグイン aws-fluent-plugin-kinesis のお世話になった方も多いのではないでしょうか。

今回の Kinesis Firehose の発表とともに、aws-kinesis-agent という JVM で動く fluentd もどきも公開されました。

Amazon Linux 2015/09 からは

$ sudo yum install –y aws-kinesis-agent

でインストールでき、 RedHat 系 OS からも RPM 経由でインストール可能です。

実際にインストールして JSON の設定ファイルを確認してみました。

$ cat /etc/aws-kinesis/agent.json
{
  "cloudwatch.emitMetrics": true,
  "kinesis.endpoint": "",
  "firehose.endpoint": "",

  "flows": [
    {
      "filePattern": "/tmp/app.log*",
      "kinesisStream": "yourkinesisstream",
      "partitionKeyOption": "RANDOM"
    },
    {
      "filePattern": "/tmp/app.log*",
      "deliveryStream": "yourdeliverystream"
    }
  ]
}

今のところは、インプットとしてファイルのみにしか対応していないようですが、今後はどんどん対応フォーマット・OS が拡張されていくのではないでしょうか。

参考