問題タブ [hadoop-partitioning]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
259 参照

hadoop - Haoop v 0.21 で Partitioner を呼び出す方法

私のアプリケーションでは、キーに基づいてできるだけ多くのレデューサー ジョブを作成したいと考えています。現在、私の現在の実装では、すべてのキーと値を 1 つの (リデューサー) 出力ファイルに書き込みます。これを解決するために、1 つのパーティショナーを使用しましたが、クラスを呼び出すことができません。パーティショナーは、選択マップ タスクの後、選択削減タスクの前に呼び出す必要がありますが、呼び出されませんでした。パーティショナーのコードは次のとおりです。

このコードは、キーと値に基づいてファイルを分割するのに正しく、出力は自動的にレデューサーに転送されますか??

0 投票する
1 に答える
205 参照

git - fstabを使用したGitoliteACLパーティションのアクティブ化?

わかりませんし、ACLとギトライトに関する情報も見つかりません。

第一に、私はgitosisをインストールしたいと思っています。これにはapt-get install ACL package、debianのインストールと、fstabファイルへのaclのアクティブ化が必要です。

ギトシスの素晴らしいフォークであるギトライトでは、このステップに関する情報が見つかりません。この点について教えていただけますか?

ありがとう、SR。

0 投票する
2 に答える
1903 参照

hadoop - Apache Hive どの列がパーティションであるかを識別する方法

ログ ファイルのセットがあり、Hive テーブルを作成しました。列に基づいてテーブルをパーティション分割したいのですが、理解できず、例を見ていないのは、パーティションの列を指定する方法です。列/フィールドを指定する方法です。元。ここにログからの行があります

2012-04-11 16:49:10,629 ~ [http-7001-11] ~DE1F6F6667913022AE2620D1228817D6 ~ END ~ /admin/bp/setup/newedit/ok ~ pt ~ 219 ~

table struc は CREATE TABLE ログです (starttime STRING、thread STRING、session STRING、method STRING、targeturl STRING、registry string、ipaddress STRING、details STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY '~'; 6the colie 'registry'をログのパーティションにしたい場合、どのようにパーティション ステートメントを記述すればよいでしょうか。 一般に、列 c1、c2、..... c10 の行 (行) がある場合、パーティションで列 ci を指定する方法を教えてください。 ありがとう

0 投票する
2 に答える
1489 参照

hadoop - Hadoop ストリーミング用のパーティショナーを指定する方法

以下のようなカスタムパーティショナーがあります。

以下のようにhadoopストリーミングパラメータを設定しました

その後、次のエラーが表示されます: クラスが見つかりません。

何が問題か知っていますか?

よろしくお願いします、

0 投票する
1 に答える
1006 参照

hadoop - キー値データを hbase テーブルにロードする方法

私の質問に興味を持っていただきありがとうございます。始める前に、私は Hadoop と HBase の初心者であることをお知らせしたいと思います。これまでのところ、Hadoop は非常に興味深いものであり、今後もさらに貢献したいと考えています。

主に HBase のパフォーマンスの向上に関心があります。そのために、1 つの hbase テーブルを作成し、5000 行 ( 「!」で区切られた値のみ) のデータをロードするためのピッグ スクリプトを hbase テーブルに記述し、後でこの h ベース テーブルを Hive テーブルにマップしました。現在、すべてが正常に機能しています...しかし、問題は、キーと値の両方を持つデータ(たとえば、key1 = 12!key2 = 13)をロードしたいということです。そのために、どのような解析ができますかそれに応じてそのキーと値のペアのデータを h ベース テーブルにロードすることを選択します。また、h ベース テーブルの行キーの重要性を教えてください。

そして、私は次のように豚のスクリプトを書いていました

A = LOAD '/BULK_ARK_DATA/' U​​SING PigStorage( '!' ) AS(id: chararray,a: chararray,b: chararray,c: chararray); org.apache.pig.backend.hadoop.hbase.HBaseStorage ( 'AF:a AF:b AF:c'); を使用して 'hbase://bulk_ark' に A を格納します。

では、キー値データを hbase テーブルにロードする方法 ?????? あなたがこれを得るとすぐに私に応答してください.... :)

0 投票する
1 に答える
1979 参照

hadoop - JobConfオブジェクトにpartitonerを設定できません

JobConfカスタムパーティショナーを作成しましたが、メインクラスのオブジェクトに設定できません。

しかし、これをJobConfオブジェクトに設定しようとすると、次のエラーが発生します。
JobConf型のメソッドsetPartitionerClass(Class)は、引数(Class)には適用できません。

誰かが私が間違っていることを教えてもらえますか?

0 投票する
0 に答える
162 参照

hadoop - Hadoop での縮小タスクの出力サイズのマップ

Hadoop 0.20.2 では、ジョブトラッカーは、reduce タスクに対応するさまざまなマップ出力サイズに関する情報を維持しますか?

Map<String, List<MapOutputLocation>>タイプinの maplocations にはReduceCopier、reduce タスクのマップ出力場所が含まれていますが、そのサイズに関する情報はないようです。

0 投票する
1 に答える
1697 参照

hadoop - Hadoop FileInputFormat isSplitable false

FileInputFormat isSplitable メソッドについての答えを知っていると思う簡単な質問があります。このメソッドをオーバーライドして false を返すと、当然、単一のマッパーがファイルを処理します (ファイルは 1 つしかありません)。このファイルが HDFS 全体に分散されている場合、そのすべてが 1 つのマッパーにプルされます。マッパーで処理し、リデューサーに送信するキーと値のペアを作成するときに、それらを多数作成すると、データの局所性を利用するためにクラスター全体に分散されますか、それとも何らかの暗黙的なものがありますかisSplitable false にした場合、それはもう起こらないという結果ですか?

0 投票する
2 に答える
2237 参照

ruby - hadoop ストリーム、パーティションの設定方法は?

私は Hadoop ストリームに非常に慣れていないため、パーティショニングに問題があります。

行の内容に応じて、マッパー関数は次のいずれかを返します

また

適切に削減するには、同じkey1を持つすべての行をグループ化し、value1、value2、および線種 (0 または 1) で並べ替える必要があります。たとえば、次のようになります。

そのようなパーティショニングを確実にする方法はありますか? これまでのところ、次のようなオプションで遊んでみました

または代わりに

それはまだ怒りと絶望をもたらすだけでした。

言及する価値がある場合は、猫のデータを使用するとスクリプトが正常に動作します。マッパー | ソート | reduce で、Amazon Elastic Map Reduce Ruby クライアントを使用しているため、オプションを次のように渡しています。

どんな助けでも大歓迎です!前もって感謝します

0 投票する
1 に答える
544 参照

csv - getSplitsを実装してHadoopマップタスクを増やす方法

複数行のCSVファイルを処理したいので、そのためにカスタムCSVInputFormatを作成しました。

各HadoopノードでCSV行を処理するスレッドを約40個にしたいです。ただし、5台のマシン(1つのマスターと4つのコア)を使用してAmazon EMRでクラスターを作成すると、使用可能なマップスロットが6つある場合でも、実行されているマップタスクは2つだけであることがわかります。

マップタスクの数と使用可能なスロットを示すEMRのダッシュボード

inputFormatにgetSplitsを実装したので、NLineInputFormatのように動作します。これで、より多くのものが並行して実行されることを期待していましたが、効果はありませんでした。また、引数を設定してみ-s,mapred.tasktracker.map.tasks.maximum=10 --args -jobconf,mapred.map.tasks=10ましたが、効果がありませんでした。

ラインを並行して処理するにはどうすればよいですか?Hadoopの実行方法は、スケーラブルではありません。クラスターに割り当てるインスタンスの数に関係なく、最大で2つのマップタスクのみが実行されます。

更新:非圧縮ファイル(zip)を起点として使用すると、より多くのマップタスクが作成され、130万行で約17になります。それでも、なぜそれ以上にすべきではないのか、データが圧縮されたときになぜより多くのマッパーが作成されないのか疑問に思います。