2012-02-20 14 views

答えて

0

答えはいいえです。 MRジョブをデータ上で実行する前に、データノードのクラスタでデータを出力する必要があります。

しかし、小さなデータサンプルを使用していて単純なことをやりたいのであれば、ローカルモードでPigを使用し、stdinをローカルファイルに書き込んでスクリプトで実行することができます。

しかし、もっと大きな疑問があるのは、なぜデータのストリームでMR/Pigを使いたいのですか?このタイプの使用を意図したものでもありません。

+0

彼はそれを行う必要があるだろう、なぜにあなたの質問に答えるために、ここにanscenarioだ:私は豚を使用して分析する必要があるこれらの大きなログファイルを持っています。ログファイルの各エントリは、sedを1行にするために必要な複数行のエントリです。私はこれらの各行をsedから豚にパイプしたい(sedが読み込んだログファイルから2行分を1行にして豚に渡す)。 – Saichovsky

+0

Storm(Twitterから)やKafka(Linkedinから)のような別の技術をチェックすることができます。 – NerdyNick

2

基本的に、Hadoopはストリーミングをvarious waysでサポートしていますが、Pigはもともとストリーミングによるデータのロードをサポートしていませんでした。しかし、いくつかの解決策があります。

あなたはHStreamingをチェックアウトすることができます:

A = LOAD 'http://myurl.com:1234/index.html' USING HStream('\n') AS (f1, f2); 
+1

私はそれがまったく涼しいと認めますが、HStreamingについて聞いたことはありません。私は常にKafkaやFlumeなどを見てきました。リアルタイム処理を行いますが、これについてはさらに読んでください。 – NerdyNick

関連する問題