Hay un límite para el tamaño del contador Hadoop. Es 120 por defecto. Intento usar la configuración "mapreduce.job.counters.limit" para cambiar eso, pero no funciona. He visto el código fuente. Es como la instancia de JobConf en la clase "org.apache.hadoop.mapred.Counters" es privada. ¿Alguien ha visto eso antes? ¿Cuál es tu solución? THX :)Más de 120 contadores en hadoop
Respuesta
Puede anular esa propiedad en mapred-site.xml
en su JT, TT, nodos cliente, pero asegúrese de que esta será una modificación de todo el sistema:
<configuration>
...
<property>
<name>mapreduce.job.counters.limit</name>
<value>500</value>
</property>
...
</configuration>
reinicie el servicio mapreduce en su racimo.
Intenté su solución. Funciona. Gracias :). Me pregunto si hay una forma de resolver este problema de forma dinámica. –
¿No hay forma de hacer esto para un solo trabajo? – javamonkey79
Podemos personalizar los límites como opciones de línea de comandos solo para trabajos específicos, en lugar de hacer cambios en mapred-site.xml
.
-Dmapreduce.job.counters.limit=x
-Dmapreduce.job.counters.groups.max=y
NOTA: x
y y
son valores personalizados en función de su entorno/requisito.
En Hadoop 2, este parámetro de configuración se llama
mapreduce.job.counters.max
Si lo establece en la línea de comandos o en el objeto de configuración no es suficiente, sin embargo. Es necesario llamar al método estático
org.apache.hadoop.mapreduce.counters.Limits.init()
en el método de configuración() de su asignador o reductor para obtener la configuración surta efecto.
Probado con 2.6.0 y 2.7.1.
El párrafo se establece mediante el archivo de configuración, mientras que los párrafos siguientes se llevarán a efecto
mapreduce.job.counters.max=1000
mapreduce.job.counters.groups.max=500
mapreduce.job.counters.group.name.max=1000
mapreduce.job.counters.counter.name.max=500
Simplemente añadiendo esto en caso de cualquier otra persona se enfrenta al mismo problema que hicimos: el aumento de los contadores de la MRJob.
Para elevar el número de contadores, añadir a su emr_configurations
mrjob.conf
(o pasarlo a MRJob como un parámetro de configuración):
runners:
emr:
emr_configurations:
- Classification: mapred-site
Properties:
mapreduce.job.counters.max: 1024
mapreduce.job.counters.counter.name.max: 256
mapreduce.job.counters.groups.max: 256
mapreduce.job.counters.group.name.max: 256
- 1. La forma más rápida de actualizar 120 millones de registros
- 2. Contadores atómicos en DynamoDB
- 3. Python: Contadores de anidamiento
- 4. Agregando contadores de cuenta
- 5. Estoy haciendo lo correcto para convertir decibeles de -120 - 0 a 0 - 120
- 6. Contadores de rendimiento en el iPhone
- 7. Utilizando el Recolector de Basura de Barrido Concurrente con más de 120 GB de RAM
- 8. .NET System.OutOfMemoryException en String.Split() de 120 MB de archivo CSV
- 9. Contadores de incremento automático almacenados en ConcurrentHashMap
- 10. Encontrar líneas que tienen más de 120 caracteres de longitud usando sed
- 11. Contadores de aplicaciones en Linux? (Y OSX?)
- 12. Varios contadores de tiempo en MATLAB
- 13. Rueda del mouse Valor delta siempre 120
- 14. Hadoop o Hadoop Streaming para MapReduce en AWS
- 15. Multiplicación de matriz en hadoop
- 16. Actualización de contadores a través de Hibernate
- 17. Clúster Hadoop. 2 máquinas rápidas, 4 medianas, 8 más lentas?
- 18. Entender los contadores en/proc/[pid]/io
- 19. Varios contadores en Javascript para el ciclo
- 20. ¿Botones sociales personalizados con contadores?
- 21. Diferencia entre `hadoop dfs` y` hadoop fs`
- 22. Cálculo de promedios con contadores de rendimiento
- 23. Variables globales en hadoop
- 24. MultipleOutputFormat en hadoop
- 25. Secuencia de archivos en Hadoop
- 26. replicación de datos en Hadoop
- 27. "-format hadoop NameNode" devuelve un java.net.UnknownHostException hadoop
- 28. Error en Hadoop MapReduce
- 29. Eliminando DFS en Hadoop
- 30. Transmisión de datos y Hadoop? (no Hadoop Streaming)
¿Qué versión de Hadoop se ejecuta? – HypnoticSheep
Es 0.20. ¿Viste eso antes? –
No me he encontrado con el mismo problema (principalmente porque no he utilizado contadores), pero estoy usando 1.0.3 y las cosas de JobConf son diferentes. Pruebe la solución de Lorand a continuación, parece que funcionará. – HypnoticSheep