Usando mrjob para ejecutar código python en Elastic MapReduce de Amazon, he encontrado con éxito una manera de actualizar la imagen EMR numpy y scipy.Numpy and Scipy con Amazon Elastic MapReduce
Se ejecuta desde la consola los siguientes comandos de trabajo:
tar -cvf py_bundle.tar mymain.py Utils.py numpy-1.6.1.tar.gz scipy-0.9.0.tar.gz
gzip py_bundle.tar
python my_mapper.py -r emr --python-archive py_bundle.tar.gz --bootstrap-python-package numpy-1.6.1.tar.gz --bootstrap-python-package scipy-0.9.0.tar.gz > output.txt
Este Bootstraps con éxito la última numpy y SciPy en la imagen y funciona perfectamente. Mi pregunta es una cuestión de velocidad. Esto demora 21 minutos en instalarse en una pequeña instancia.
¿Alguien tiene alguna idea de cómo acelerar el proceso de actualización de numpy y scipy?
Su problema es que es la instancia pequeña que es lenta. Creo que no verás una aceleración real a menos que pases a instancias más grandes de Amazon. ¿Es esto 21 minutos más que los ~ 5-6 minutos que generalmente requiere que EC2 active las instancias? – ely
Acepto que la comunicación con el giro original lleva mucho tiempo. Alguien en la comunidad de mrjob recomendó hacer esta instalación para una instancia de trabajador, luego usando ssh para iniciar sesión en la instancia de trabajador, descargue el directorio de instalación completo. Luego solo paso ese directorio de instalación completo como un archivo zip con mis archivos. Python elige usar el NumPy local y SciPy en lugar de las versiones instaladas de hadoop. – jtman