Apache-storm-introduction

提供:Dev Guides
移動先:案内検索

Apache Storm-はじめに

Apache Stormとは何ですか?

Apache Stormは、分散型のリアルタイムビッグデータ処理システムです。 Stormは、耐障害性と水平スケーラブルな方法で大量のデータを処理するように設計されています。 これは、最高の取り込み率の機能を備えたストリーミングデータフレームワークです。 Stormはステートレスですが、Apache ZooKeeperを介して分散環境とクラスターの状態を管理します。 シンプルで、リアルタイムデータに対してあらゆる種類の操作を並行して実行できます。

Apache Stormは、リアルタイムデータ分析のリーダーであり続けています。 Stormはセットアップ、操作が簡単であり、すべてのメッセージが少なくとも1回はトポロジーを介して処理されることを保証します。

Apache StormとHadoop

基本的に、HadoopおよびStormフレームワークは、ビッグデータの分析に使用されます。 両方とも互いに補完し合い、いくつかの点で異なります。 Apache Stormは永続性を除くすべての操作を実行しますが、Hadoopはリアルタイム計算の遅れを除いてすべてに優れています。 次の表は、StormとHadoopの属性を比較しています。

Hadoop

リアルタイムのストリーム処理

バッチ処理

ステートレス

ステートフル

ZooKeeperベースの調整を備えたマスター/スレーブアーキテクチャ。 マスターノードは nimbus と呼ばれ、スレーブは supervisors です。

ZooKeeperベースの調整あり/なしのマスター/スレーブアーキテクチャ。 マスターノードは*ジョブトラッカー*であり、スレーブノードは*タスクトラッカー*です。

Stormストリーミングプロセスは、クラスターで毎秒数万のメッセージにアクセスできます。

Hadoop分散ファイルシステム(HDFS)はMapReduceフレームワークを使用して、数分または数時間かかる膨大な量のデータを処理します。

ストームトポロジは、ユーザーがシャットダウンするか、予期しない回復不能な障害が発生するまで実行されます。

MapReduceジョブは順番に実行され、最終的に完了します。

両方が分散され、フォールトトレラントです

nimbus/スーパバイザが停止した場合、再起動すると停止した場所から継続するため、何も影響を受けません。

JobTrackerが停止すると、実行中のジョブはすべて失われます。

Apache Stormのユースケース

Apache Stormは、リアルタイムのビッグデータストリーム処理で非常に有名です。 このため、ほとんどの企業はStormをシステムの不可欠な部分として使用しています。 いくつかの注目すべき例は次のとおりです-

*Twitter* -Twitterは、「Publisher Analytics製品」の範囲にApache Stormを使用しています。 「Publisher Analytics Products」は、Twitterプラットフォームでのすべてのツイートとクリックを処理します。 Apache StormはTwitterインフラストラクチャと緊密に統合されています。
*NaviSite* -NaviSiteは、イベントログの監視/監査システムにStormを使用しています。 システムで生成されたすべてのログはストームを通過します。 Stormは、構成された正規表現セットに対してメッセージをチェックし、一致する場合、その特定のメッセージはデータベースに保存されます。
*Wego* -Wegoは、シンガポールにある旅行メタ検索エンジンです。 旅行関連のデータは、世界中のさまざまなタイミングからさまざまなタイミングで収集されています。 Stormは、Wegoがリアルタイムデータを検索し、同時実行の問題を解決し、エンドユーザーに最適なものを見つけるのに役立ちます。

Apache Stormの利点

Apache Stormが提供する利点のリストは次のとおりです-

  • Stormはオープンソースで、堅牢で、ユーザーフレンドリーです。 大企業だけでなく中小企業でも利用できます。
  • Stormは耐障害性、柔軟性、信頼性があり、あらゆるプログラミング言語をサポートしています。
  • リアルタイムのストリーム処理を許可します。
  • Stormは、データを処理する能力が非常に大きいため、信じられないほど高速です。
  • Stormは、リソースを直線的に追加することで、負荷が増加してもパフォーマンスを維持できます。 非常にスケーラブルです。
  • Stormはデータの更新とエンドツーエンドの配信応答を問題に応じて数秒または数分で実行します。 レイテンシが非常に低いです。
  • Stormには運用上のインテリジェンスがあります。
  • Stormは、クラスター内の接続されたノードのいずれかが死んだり、メッセージが失われたりしても、保証されたデータ処理を提供します。