Skip to main content
QUICK REVIEW

[論文レビュー] Real-time Text Analytics Pipeline Using Open-source Big Data Tools

Hassan Nazeer, Waheed Iqbal|arXiv (Cornell University)|Dec 12, 2017
Cloud Computing and Resource Management参考文献 16被引用数 6
ひとこと要約

本論文では、オープンソースのビッグデータツールを用いたリアルタイムテキスト分析パイプラインを提案する。データインジェストにはApache Kafka、主記憶上でのストリーム処理にはApache Spark、永続的ストレージにはApache Cassandra、可視化にはD3.jsを採用した。3台の仮想マシンを用いて466,700件のツイートを10.7分で処理し、0.7分(41秒)のサブミニットの遅延を達成した。これは、スケーラブルなスループットを備えたニアリアルタイム性能を示している。

ABSTRACT

Real-time text processing systems are required in many domains to quickly identify patterns, trends, sentiments, and insights. Nowadays, social networks, e-commerce stores, blogs, scientific experiments, and server logs are main sources generating huge text data. However, to process huge text data in real time requires building a data processing pipeline. The main challenge in building such pipeline is to minimize latency to process high-throughput data. In this paper, we explain and evaluate our proposed real-time text processing pipeline using open-source big data tools which minimize the latency to process data streams. Our proposed data processing pipeline is based on Apache Kafka for data ingestion, Apache Spark for in-memory data processing, Apache Cassandra for storing processed results, and D3 JavaScript library for visualization. We evaluate the effectiveness of the proposed pipeline under varying deployment scenarios to perform sentiment analysis using Twitter dataset. Our experimental evaluations show less than a minute latency to process $466,700$ Tweets in $10.7$ minutes when three virtual machines allocated to the proposed pipeline.

研究の動機と目的

  • 高速度のデータストリームを処理する低遅延でスケーラブルなリアルタイムテキスト分析パイプラインの設計と評価。
  • ソーシャルメディアなどの大規模なテキストデータを扱うビッグデータシステムにおいて、処理遅延を最小限に抑える課題に対処すること。
  • オープンソースツールを活用して、センチメント分析のための完全でエンドツーエンドのリアルタイム処理パイプラインを構築する有効性を実証すること。
  • クラスタ構成やリソース割り当てを変化させた場合のシステム性能を評価すること。

提案手法

  • TwitterのストーリングAPIから高スループットで低遅延なデータインジェストを実現するため、分散メッセージングシステムとしてApache Kafkaを採用した。
  • 受信したツイートストリームに対してリアルタイムのセンチメント分類を実行するため、主記憶上での処理エンジンを備えたApache Spark Streamingを活用した。
  • 長期的な分析を可能にするために、サードパーティ製のコネクタを介してApache Cassandraに処理済みのセンチメント結果を永続化した。
  • D3.jsライブラリを用いたNode.jsベースの可視化コンponentを開発し、リアルタイムのセンチメントトレンドを表示した。
  • OpenNebulaを用いたプライベートクラウド上にパイプラインをデプロイし、1〜3台の仮想マシンをスケーリングして性能を評価した。
  • 10分間隔でTwitterデータのインジェストをシミュレートするため、Kafkaプロデューサーを用いて一貫したワークロードを生成した。

実験結果

リサーチクエスチョン

  • RQ1分散型ビッグデータパイプラインにおけるクラスタサイズの増加に伴い、リアルタイムテキスト処理の遅延はどのように変化するか?
  • RQ2コンmodityハードウェア上でオープンソースツールを用いて構築したセンチメント分析パイプラインのスループットとエンドツーエンドの処理遅延はどの程度か?
  • RQ3主記憶上での処理を備えたApache Spark Streamingは、大規模なツイートストリーム分析においてニアリアルタイム性能を達成できるか?
  • RQ4リソース割り当て(仮想マシン数)を変化させた場合、パイプラインのスループットとスケーラビリティにどのような影響を与えるか?

主な発見

  • 3台の仮想マシンに展開したパイプラインは、10.7分で466,700件のツイートを処理し、遅延がわずか0.7分(41秒)にとどまった。
  • 処理時間は1回目の実験(15.0分)から3回目の実験(10.7分)にかけて短縮され、単一VMベースラインと比較して140%の高速化が達成された。
  • クラスタサイズの増加に伴いシステムスループットが向上し、2回目の実験で468,600件、3回目の実験で466,700件のツイートを処理した。これによりスケーラビリティが裏付けられた。
  • 3台のVMを用いた分散デプロイにより、エンドツーエンド遅延が1分未塔にまで短縮され、ニアリアルタイム処理の能力が確認された。
  • リソースの追加に伴い性能が一貫して向上し、パイプラインアーキテクチャのスケーラビリティが裏付けられた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。