Catálogo de trabajos prácticos de Hadoop
Capítulo 1 Introducción a Hadoop 2
1.1 ¿Por qué quieres escribir Hadoop Battle 3?
1.2 ¿Qué es Hadoop 3?
1.3 Comprensión de los sistemas distribuidos y Hadoop 4
1.4 Comparación de bases de datos SQL y Hadoop 5
1.5 Comprensión de MapReduce 6
1.5.1 Manos -on extensión de un programa simple 7
1 . 5 . 2 Extensión del mismo programa en MapReduce 9
1.6 Contando palabras con Hadoop - ejecutando el primer programa 11.
1.7 Historia de Hadoop 15
1.8 Resumen 16
1.9 Recursos 16
Capítulo 2 Entendiendo Hadoop 17
2.1 Bloques de construcción de Hadoop 17
2.1.1 Nodo de nombre 17
2.1.2 Nodo de datos 18
2.1.3 Nodo de nombre secundario 19
2.1.4 Job Tracker 19
2.1.5 Task Tracker 19
2.2 Instalación de SSH para Hadoop Cluster 21
2.2.1 Definición de una cuenta pública 21.
2.2.2 Verificar la instalación de SSH 21
2.2.3 Generar par de claves SSH 21
2.2.4 Distribución de claves públicas y verificación de inicio de sesión 22 p>
2.3 Ejecución de Hadoop 22
2.3.1 Modo local (independiente) 23
2.3.2 Modo pseudodistribuido 24
2.3.3 Distribución completa Modelo 25
2.4 Interfaz de usuario de clúster basada en web 28
2.5 Resumen 30
Capítulo 3 Componentes de Hadoop 31
3.1 Operaciones de archivos HDFS 31
3.1.1 Comandos básicos de archivos 32
3.1.2 Programación para leer y escribir HDFS 35
3.2 Análisis del programa MapReduce 37
3.2.1 Tipos de datos de Hadoop 39
3.2.2 Mapeador 40
3.2.3 Reductor 41
3.2.4 Particionador: Mapeo de redirección La salida del El controlador es 41.
3.2.5 Combinador: Restauración local 43
3.2.6 Conteo de palabras para clases predefinidas de asignador y reductor 43
3.3 Lectura y escritura 43
Formato de entrada 44
Formato de salida 49
3.4 Resumen 50
Parte 2 Combate práctico
Capítulo 4 Escribir un MapReduce básico programa 52
4.1 Obtención del conjunto de datos de patentes 52
4.1.1 Datos de citas de patentes 53
4.1.2 Datos de descripción de patentes 54
4.2 Plantilla básica para crear programas MapReduce 55
4.3 Conteo 60
4.4 Adaptación a los cambios en la API de Hadoop 64
4.5 Transmisión de Hadoop 67
4.5.1 Usar secuencias 68 a través de comandos Unix
4.5.2 Usar secuencias 69 a través de scripts
4.5.3 Usar secuencias para procesar pares clave/valor 72
4.5.4 Stream 75 se utiliza a través de paquetes de agregación.
4.6 Utiliza combinadores para mejorar el rendimiento 80
Revisita a viejos amigos y conoce otros nuevos
4.8 Resumen 84
4.9 Más recursos 84
Capítulo 5 MapReduce avanzado 85
5.1 Vincular trabajos de MapReduce 85
5.1.1 Vincular secuencialmente trabajos de MapReduce 85
5.1.2 Enlaces de MapReduce con dependencias complejas 86
5.1.3 Conexiones a etapas de pre y posprocesamiento 86
5.2 Vinculación de datos de diferentes fuentes 89
5.2 .1 Conexión de 90 en el lado de diámetro variable
5.2.2 Copiar conexión basada en caché distribuido 98
5.2.3 Semiunión: después de filtrar en el lado del mapa, conecte 101 en el lado de reducción .
5.3 Crear un filtro Bloom 102.
5.3.1 ¿El filtro Bloom hace 102?
5.3.2 Implementación del filtro Bloom 104.
5 . 3 . 3 El filtro Bloom 110 es adecuado para la versión 0.20 o superior de Hadoop.
5.4 Revise a viejos amigos y conozca otros nuevos +010
5.5 Resumen 111
5.6 Más recursos 112
Capítulo 6 Práctica de programación 113
6.1 Desarrollo de programas MapReduce
6.1.1 Modo local 114
6.1.2 Modo pseudodistribuido 118
6.2 Monitoreo de producción y depuración del clúster 123
6.2.1 Contador 123
6.2.2 Omitir registros incorrectos 125
6.2.3 Usar IsolationRunner para volver a ejecutar la tarea incorrecta 128.
6.3 Ajuste del rendimiento 129
6.3.1 Reducir el tráfico de red a través del combinador 129
6.3.2 Reducir la cantidad de datos de entrada 129
6.3.3 Usando compresión 129
6.3.4 Reutilizando la JVM 132
6.3.5 Ejecutando basado en conjeturas 132.
6.3.6 Refactorización de código y reescritura de algoritmos 133
6.4 Resumen 134
Capítulo 7 Manual detallado 135
7.1 Los parámetros personalizados para el trabajo se pasa a la tarea 135
7.2 Información específica de la tarea de exploración 137
7.3 Dividirla en múltiples archivos de salida 138
7.4 Usar la base de datos como entrada y salida 143
7.5 Mantener el orden de salida 145
7.6 Resumen 146
Capítulo 8 Gestión de Hadoop 147
8.1 Establecer valores de parámetros específicos para aplicaciones prácticas 147 .
8.2 Examen físico del sistema 149
8.3 Configuración de permisos 151
8.4 Gestión de cuotas 151
8.5 Habilitación de la papelera de reciclaje 152
8.6 Eliminar DataNode 152
8.7 Agregar DataNode 153.
8.8 Administrar NameNode y SNN 153
8.9 Recuperar un NameNode fallido 155
8.10 Diseño de rack y diseño de red consciente 156
8.11 Multi -Programación de trabajos de usuario 157
8.11.1 Seguimiento de trabajos múltiples 158
8.11.2 Programador justo 158
8.12 Resumen 160
Parte 3 Hadoop también está loco
Capítulo 9 Ejecutar Hadoop en la nube 162
9.1 Introducción a los servicios web de Amazon 162
9.2 Instalación de AWS 163
9.2.1 Credenciales de autenticación de AWS obtenidas 164.
9.2.2 Obtener la herramienta de línea de comando 166
Preparar el par de claves SSH 168.
9.3 Instalar Hadoop 169 en EC2
9.3.1 Configurar los parámetros de seguridad 169
9.3.2 Configurar el tipo de clúster 169
9.4 Ejecutar Programas MapReduce en EC2 171.
9.4.1 Mover código a un clúster de Hadoop 171.
9.4.2 Acceso a datos en el clúster de Hadoop 172
9.5 Limpieza y cierre de instancias EC2 175
9.6 Amazon Elastic MapReduce y otros servicios de AWS 176
9.6.1 Amazon Elastic MapReduce 176
9.6.2 Importación/Exportación de AWS 177
9.7 Resumen 177
Capítulo 10 Programación con Pigs 178
Piensa como un cerdo
10.1.1 Lenguaje de flujo de datos 179
10.1.2 Tipos de datos 179
10.1.3 Definido por el usuario Definir funciones 179
10.2 Instalar el cerdo 179
10.3 Ejecutar cerdos 180
10.4 Aprender latín del cerdo a través de Gulu 182
10.5 Hablar sobre Pig Latin 186
10.5.1 Tipos y estructuras de datos 186
10.5.2 Expresiones y funciones 187
10.5.3 Operadores relacionales 189
p >10.5.4 Optimización de la ejecución
10.6 Funciones definidas por el usuario 196
10.6.1 Uso de UDF 196.
10.6.2 Escritura de UDF
10.7 Script 199
10.7.1 Nota 199
10.7.2 Reemplazo de parámetros 200
10.7.3 Ejecución de consultas múltiples 201
10.8 Práctica de cerdo: un ejemplo de computación de patentes similares 201
10.9 Resumen 206
Capítulo 11 Hive y Hadoop Group 207
11.1 Hive 207
11.1 Instalar y configurar Hive 208.
11.1.2 Ejemplo de consulta 210
11.1.3 Profundización en HiveQL 213.
11.1.4 Resumen de Hive 221
11.2 Otras partes relacionadas con Hadoop 221
11. 1 HBase 221
Zookeeper 221<. /p>
11.2.3 Cascada 221
11.2.4 Era de la nube 222
11.2.5 Katta 222
CloudBase 222
p >11.2.7 Aster Data y Greenplum 222
11.2.8 Hama y el Mahout 223
11.3 Resumen 223
Capítulo 12 Análisis de caso 224
12.1 Convertir los 11 millones de documentos de imágenes de archivo del New York Times 224
12.2 Minar los datos de China Mobile 225
12.3 Recomendar StumbleUpon 229 El mejor sitio web
Iniciar distribución de StumbleUpon 230 para 12.3.1
12.3.2 HBase y StumbleUpon 230
Más aplicaciones de Hadoop en 12.3.3 se topan con 236
12.4 Creación de un sistema de análisis de consultas empresariales: proyecto ES2 de IBM 238
1 Estructura del sistema ES2 240
12.4.2 Rastreador ES2 241
12.4.3 Análisis ES2 242
12.4.4 Resumen 249
Referencias 250
Apéndice A Comandos de archivos HDFS 251