Es-hadoop-hadoop-mapreduce
Hadoop-MapReduce
MapReduce es un marco con la que podemos escribir aplicaciones para procesar grandes cantidades de datos、paralelamente、en grandes grupos de componentes de manera confiable。
MapReduce¿Quées?
MapReduceは、Javaで処理モデルを作成したり、コンピュータのモデルを作成したりすることができます。 エルアルゴリトモMapReduce contiene dos tareas importantes、サーベルMapa yレデューサー。 マトマ・コンマト・デ・ダトス・イ・セ・・・コンビビリ・・・エン・・オトロ・コンコントト・デ・ダトス、エン・エル・ケ・ロス・ロス・エレモスおよびディバイデン・エン・トゥプラ(パレス・クラベ/バロール)。 segundo lugar、reducir tarea、que toma la salida de un mapa como entrada y combina los datos tuplas en un conjuntomáspequeñode tuplas。 Map of la secuencia de MapReduceエルノムブレインプリカ、ラレドゥッシオンセラリザシエンプレデスプースデケスエルマパ。
MapReventプリンシパルベンタヤは、エスカレーターのプロセスを停止し、ノードのデータを処理します。 原型のMapReduce、原始主義の息子の地図、および地図の作成。 アプリケーションの開発と管理は、簡単に行うことはできません。 Pero、マップ、アプリケーションのマップ、マップの縮小、アプリケーションの作成、ドキュメントの作成、マイルの設定、および設定の作成 Esta escalabilidad sencilla es lo que haatraídoa muchos programadores a usar el modelo MapReduce。
エルアルゴリトモ
- Paradigma MapReduceで一般的なバサとエンデバーエルオルデナドールドンレジデントロスダトス。
- MapReduceのプログラムは、セイバーであるエタパスとエタパスです:mapa etapa、shuffle、y reducir。
- Mapa etapa :トラバホの地図とプロテサーロスダトスデエントラーダの地図。 一般的には、Hadoop(HDFS)のアーカイブとエンターテインメントのアルマシーナとアルマシーナのアーキテクチオンアーカイブとエンタテインメントの両方に対応しています。 エル・アーキボ・デ・エントラダ・セ・パサ・ア・ラ・ファンシオン・マップ・リーナ・ポル・リーニア。 エルマッパープロセサロスダトスアンドクレアバリオスペケニョスフラグメントスデダトス。
- Reducir etapa :Esta etapa es lacombinaciónde la reproducciónaleatoria *y la * etapa Reducir。 ラ・ピエザ・デ・トラバホesラ・デ・プロセサルロス・ダトス・ケ・レガン・デスデ・エル・マパ。 ラボラシオン・デ・プロセソ・デ・プロボソシオン、プロダッシオン・デ・ラ・プロダッチオン・ジェネレーション、HDFS
- デュランテエルトラバホ、Hadoop MapReduceの環境マップ、およびタレス、ロサンゼルスの通信担当者など
- エルマルコデトラバホアドミントラトドスロスデタルズデロスダトスデタレアステイルズコモズラエリミシオンデラスタレアス、Yコピアデロスダトスアントドエルクリストアンテルロスノドス
- ラ・マヨリア・デ・ロス・インフォラティコス・セ・レヴァ、カボ・アン・ロス・ノドス・デ・ダトス・エン・ロス・ディスコ・ロケールズ・エル・レ・トラフィコ・デ・ラ・レッド
- ラスタレアスアシグナダス、エルグルポレコピラ、ロスダトスデフォルスウンリザルタドアデクアド、ロエンビアデヴエルタアルサービダーハドープ。
Las entradas y salidas(Java)
El MapReduce marco funciona en <key、value> pares、es decir、el marco考慮事項que la entrada en el trabajo como un conjunto de <key、value> pares yproduce un un conjunto de etiquetas <key、value> de la salida del trabajo 、posiblemente de distintos tipos。
La clave y el valor de las clases deben ser serializados por el marco y por lo tanto、necesidad de aplicar la Escritura interfaz。 Además、las clases clave tienen que aplicar la interfaz para facilitar Writable-Comparable ordenar por el marco。 MapReduce trabajoのヒント:(Entrada)<k1、v1>→ map→ <k2、v2>→ reduce→ <k3、v3>(salida)。
Entrada | Salida | |
---|---|---|
Mapa | <k1, v1> | lista (<k2, v2>) |
Reducir | <k2, lista(v2)> | lista (<k3, v3>) |
Terminología
- * Cargaútil*-Aplicaciones aplicar el mapa y reduzca las funciones y forman elnúcleodel trabajo。
- Mapa -Mapa mapas la entradaがclave/valorを意味します。
- NamedNode -Hadoop分散ファイルシステム(HDFS)を使用します。
- DataNode -変換の前にデータを表示します。
- MasterNode JobTracker-トラバジョデロスクライアントのペチコーンを使用したジョブの実行。
- SlaveNode -Mapa y Reducirのプログラムプログラムを実行します。
- JobTracker -ロストラバヨスとラスアギアトラバホスはタレアトラッカーです。
- Tarea Tracker -タリア地域の最新情報がJobTrackerに通知されます。
- Trabajo :マッピングとリコンダクターの統合とデータの統合。
- Tarea :地図と地図の作成者。
- Tarea intento -SlaveNode以外の特定の領域に固有の特定の領域。
Escenario de ejemplo
継続的な組織の組織的な関係。 contiene el consumoeléctricomensual y el promedio anual de diferentesaños。
Jan | Feb | Mar | Apr | Mayo | Jun | Jul | Ago | Sep | Oct | Nov | Dec | Avg | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1979 | 23 | 23 | 2 | 43 | 24 | 25 | 26 | 26 | 26 | 26 | 25 | 26 | 25 |
1980 | 26 | 27 | 28 | 28 | 28 | 30 | 31 | 31 | 31 | 30 | 30 | 30 | 29 |
1981 | 31 | 32 | 32 | 32 | 33 | 34 | 35 | 36 | 36 | 34 | 34 | 34 | 34 |
1984 | 39 | 38 | 39 | 39 | 39 | 41 | 42 | 43 | 40 | 39 | 38 | 38 | 40 |
1985 | 38 | 39 | 39 | 39 | 39 | 41 | 41 | 41 | 00 | 40 | 39 | 39 | 45 |
Si los datos anteriores no se da da como entrada、tenemos que escribir aplicaciones para procesar y producir resultados tales como encontrar elañode usomáximo、añode usomínimo、yasísucesivamente。 レジストラのプログラムを作成します。 簡単に説明されているように、プロデューサーは結果を記録します。
シン・エンバーゴ、クレタ・ケ・デ・ロス・ダトス・ケ・レプレ・ア・エル・コンスモ・エレクトリコ・デ・トドス・ロス・グランデス・セクターズ・デ・ウン・エスタード、特にデ・デ・ス・フォルマシオン。
Al escribir aplicaciones para procesar esos datos por lotes、
- Quetendráunmontónde tiempo para que se ejecute。 *赤と黒のハバナ・グラント・カンティダード・ラ・クアンド・ノス・ムーブモス・ロス・ダトス・デ・デ・デ・オリ・エン・エル・サービデバー・デ・ラ・レッド・イ・アシ・サシバメント。
Para Resolverは、MapReduceフレームワークの問題を解決します。
ダトスデエントラダ
Los datos anteriores se guardan como* ejemplo.txtand * dada como entrada。 継続的なエル・アーキボ・デ・ヴェト・コム・セ・ミューエストラ。
イェメンプロのプログラム
MapReduceフレームワークを使用した継続的なミューエスタプログラミングプログラムです。
プログラムの保護ProcessUnits.java。プログラムの継続性を説明します。
CompilaciónyEjecucióndel Programa Unidades de proceso
スポンガモス・ケ・エスタモス・アン・エル・ディレクター・プリンシパル・デ・ヌ・ウスアリオ・ハドープ(e.g./home/hadoop)。
シガロスパソケスショーインディカンは、前のプログラムと同様の連続したパラグラフです。
手順1
El comando siguiente es crear un directorio para almacenar el compilado las clases de java。
手順2
ダウンロード** Hadoop-core-1.2.1.jar、* MapReduceに対応したユーティリティを使用してください。 訪問者は、http://mvnrepository.com/artifact/org.apache.hadoop/hadoop-core/1.2.1をダウンロードしてください。 Supongamos que el archivo .exeダウンロードes /home/hadoop/. *
手順3
Los siguientes comandos se utilizan para laelaboraciónde las* ProcessUnits.java * programa java y crear una jarra para el programa。
手順4
HDFSを使用するためのコマンドラインコマンドです。
パソ5
エル・アーキボ・デ・コルド・エル・アーキボ・デ・エントラダ・ラマドサンプル.txtエル・ディレクター・デ・エントラダ・デ・HDFS。
手順6
エル・アーキテクト・デ・ユティリザ・パラ・ベリフィカル・ロス・アーキボス・アンド・エル・ディレクター・デ・エントラーダ。
手順7
エルユナイテッドコマースショーアユーティリザパラエイプリカシオンエレユニットマックステニエンドエンロスロスアーキボスデエントラダエンエルディレクターリオデエントラダ。
Espere un momento hasta que el archivo es ejecutado。 Despuésde laejecución、como se muestra acontinuación、la salidacontendráelnúmerode divisiones、elnúmerode tareas mapa、elnúmerode pieza tareasなど
手順8
エル・シギエンテ・コマンド・アンド・ユーティリザ・パラ・ベリフィカル・ロス・アーキボス・結果物デ・ラ・カペラ・デ・サライダ。
手順9
エル・シギエンテ・コマンド・ユーティリティ・パラ・ベル・エル・リザルト・アン・アン・ラ Part-00000 アーカイブ。 HDFSによるアーカイブ。
MapReduceプログラムによる一般的な継続的なサービス。
手順10
エル・シギエンテ・コマンド・セ・ユーティリザ・パラ・コピア・ラ・カペラ・デ・サリダ・デ・ロスHDFSエン・エル・システマ・デ・アーキヴォス・ローカル・パラ・アナリザー。
Comandos重要
Hadoop Todos los comandos son invocados por el * $ HADOOP_HOME/bin/hadoop *。 Ejecuta el script Hadoop sin argumentos imprime ladescripciónde todos los comandos。
使用法:hadoop [--config confdir] COMANDO
ラシギエンテタブラデタララスオプシオンディスポナブルズアンドスデスクリプション。
Opciones | Descripción |
---|---|
Namenode -formato | La DFS Formatos archivos. |
Secondarynamenode | Ejecuta el DFS namenode secundario. |
Namenode | Ejecuta el DFS namenode. |
Datanode | Ejecuta un DFS datanode. |
Dfsadmin | Ejecuta un DFS cliente admin. |
Mradmin | Ejecuta un Map-Reduce cliente admin. |
Fsck | Ejecuta una utilidad de comprobación de archivos. |
Fs | Archivos genéricos se ejecuta un cliente usuario. |
Equilibradora | Ejecuta un balanceo del cluster utilidad. |
oiv | Se aplica el visor sin conexión fsimage a un fsimage. |
Fetchdt | Obtiene un token de la delegación NameNode. |
Jobtracker | Ejecuta el trabajo MapReduce Tracker nodo. |
Tubos | Tubos se ejecuta un trabajo. |
Tasktracker | Ejecuta una tarea MapReduce Tracker nodo. |
Historyserver | Historial de trabajo se ejecuta servidores como un demonio independiente. |
Trabajo | Manipula los trabajos MapReduce. |
Cola | Obtiene información sobre JobQueues. |
Versión | Imprime el número de versión. |
jar <jar> | Se ejecuta un archivo jar. |
distcp <srcurl> <desturl> | Copia el archivo o directorios recursivamente. |
distcp2 <srcurl> <desturl> | DistCp versión 2. |
Archive -archiveName NOMBRE -p | Hadoop crea un archivo. |
<parent path> <src>* <dest> | |
Classpath. | Imprime la ruta de la clase necesaria para obtener el Hadoop jar y las bibliotecas necesarias. |
Daemonlog | Obtener/Establecer el nivel de registro para cada demonio |
マップインタラクションコンロストラバホスMapReduce
ウソ:hadoop job [GENERIC_OPTIONS]
Las siguientes son las opcionesgenéricasdisponibles on Hadoop trabajo。
GENERIC_OPTIONS | Descripción |
---|---|
-submit <job-file> | Envía el trabajo. |
Estado <job-id> | Imprime el mapa y reducir porcentaje de finalización y contadores de trabajos. |
Contador <id de trabajo> <group-name> <countername> | Imprime el valor del contador. |
-Matar <id de trabajo> | Mata el trabajo. |
-Eventos <id de trabajo> <fromevent- #> < # -de eventos> | Imprime las citas recibidas por los detalles jobtracker para el rango dado. |
-Historia [todos] <jobOutputDir> - historia < jobOutputDir> | Imprime los detalles del trabajo, error y mató detalles punta. Más detalles sobre el trabajo, como tareas y éxito los intentos realizados para cada tarea se pueden ver mediante la especificación de la opción [todos]. |
-List [todos] | Muestra todos los trabajos. -List muestra sólo los trabajos que todavía no se han completado. |
-Matar tarea <tarea-id> | Mata a la tarea. Muertas las tareas no se imputarán a intentos fallidos. |
-No-tarea <tarea-id> | Falla la tarea. Las tareas no se imputarán a |
Intentos fallidos. | |
De prioridad <id de trabajo> <prioridad> | Cambia la prioridad del trabajo. Los valores de prioridad son permitidos VERY_HIGH, ALTA, NORMAL, BAJA, VERY_LOW |