TOP > Software > イベントストリーミングプラットフォームの代表格、Apache...
関連カテゴリー: Network
イベントストリーミングプラットフォームの代表格、Apache Kafka(後)
2022/03/24
データウエアハウスにすべてのデータを保存し、夜間のバッチ処理で分析して、ビジネスやプロセスの状況を把握するという手法は、今の時代に求められる瞬時の対応が難しい。保存したデータに対する事後分析だけでなく、データストリームに対するリアルタイムの分析を、シンプルに実行できる機能が要求される。
(前回から続く)
Apache Samzaとは

Apache Samzaは、JavaとScalaで開発されたオープンソースの分散ストリーム処理フレームワーク。Kafkaと共に、もともとLinkedInで生まれた。Kafkaを含む複数のソースから得たデータをリアルタイムで処理するステートフルアプリケーションを開発できる。Samzaには次のような特徴がある。
- 共通のAPI:シンプルなAPIを使って、データソースの違いを問わない形でアプリケーションのロジックを記述できる。データのバッチ処理とストリーミング処理の両方に、同じAPIで対応できる。
- あらゆるレベルでのプラガビリティ:各種ソースのデータの処理と変換に対応できる。Apache Kafka、Amazon Kinesis、Azure Event Hubs、Elasticsearch、Apache Hadoopと連携する機能を標準で提供しているほか、独自のデータソースとも簡単に連携できる。
- 組み込みライブラリとしての使用:既存のアプリケーションに統合でき、ストリーム処理のためのクラスタを別途立ち上げて稼働する必要がない。Java/Scalaアプリケーションに組み込む軽量なクライアントライブラリとしてSamzaを利用できる。
- 一度書けばどこでも実行:デプロイの選択肢が多彩で、パブリッククラウド、コンテナ環境、ベアメタルハードウエアなど、あらゆる場所でアプリケーションを実行できる。
- マネージドサービスとしての稼働:Apache YARNをはじめ、一般的なクラスタマネージャーと連携し、ストリーム処理をマネージドサービスとして実行できる。
- 耐障害性:障害が発生した場合、タスクとその状態を透過的に移行する。障害からの迅速な復旧を支える機能を備えている。
- 大規模運用への対応:数テラバイトの状態データを使用して数千コアで稼働するアプリケーションでの稼働実績がある。LinkedInや米Uber、米TripAdvisor、米Slackをはじめ、複数の大手企業が利用している。