1

Hadoop を使用したログ ファイル分析を備えた 1 つの単純な Java EE Web アプリケーションを開発したいと考えています。以下は、アプリケーションを開発するためのアプローチです。しかし、アプローチを通過することはできません。

  1. ログ ファイルは、sftp/ftp を使用してクライアント マシンから Hadoop サーバーにアップロードされます。
  2. Hadoop ジョブを呼び出してログ ファイルをフェッチし、ログ ファイルを HDFS ファイル システムに処理します。
  3. ログ ファイルの処理中に、コンテンツは HIVE データベースに保存されます。
  4. クライアント Web アプリケーションから HIVE JDBC 接続を使用してログ コンテンツを検索する

いくつかのステップを完全に埋めるために、非常に多くのサンプルを参照しました。しかし、具体的なサンプルが入手できないわけではありません。

上記のアプローチが正しいかどうかを提案し、Java で開発されたサンプル アプリケーションへのリンクを取得してください。

4

2 に答える 2

0

私によると、次のことを行うことができます。

1)さまざまなソースからログを受け入れて HDFS に入れる代わりに、SQL Server などの 1 つのデータベースに入れ、そこからSqoopを使用してデータを Hive (または HDFS) にインポートできます。

2) これにより、データを HDFS に取り込むためのさまざまなジョブを作成する手間が軽減されます。

3) データが Hive に入ったら、やりたいことが何でもできます。

于 2012-12-18T11:42:54.767 に答える
0

いくつか指摘して
おきたいことがあります。a) ログ ファイルをマージするか、他の方法でログ ファイルが多すぎないように注意する必要があります。Flume (http://flume.apache.org/) は、さまざまなソースからログを受け取り、それらを HDFS に入れるように構築されています。
b) ftp を使用する場合 - FTP からデータを取得して HDFS に入れるためのスクリプトが必要になります。
c) 私が見る主な問題は、クライアントの Web 要求の結果として Hive ジョブを実行することです。Hive リクエストはインタラクティブではありません。少なくとも数十秒、おそらくそれ以上の時間がかかります。
また、さまざまな同時リクエストがあります-おそらく、複数を並行して実行することはできません

于 2012-12-18T09:31:36.493 に答える