¿Sería posible crear un clúster de python, escribiendo un servidor de telnet, luego haciendo una telnet con los comandos y dando salida de un lado a otro? ¿Alguien ha tenido una idea mejor para un clúster de cálculo python? PS. Preferiblemente para Python 3.x, si alguien sabe cómo.Clúster de cálculo de Python
Respuesta
La wiki de Python alberga una lista muy completa de Python cluster computing libraries and tools. Es posible que esté especialmente interesado en Parallel Python.
Edit: Hay una nueva biblioteca que es en mi humilde opinión especialmente buena en la agrupación: execnet. Es pequeño y simple. Y parece tener menos errores que, por ejemplo, el módulo estándar multiprocessing
.
¿Qué tipo de cosas quieres hacer? Es posible que desee comprobar hadoop. El backend, el trabajo pesado se realiza en java, pero tiene una interfaz de python, por lo que puede escribir scripts de python para crear y enviar la entrada, así como para procesar los resultados.
estudiar estas
http://www.parallelpython.com/
he utilizado tanto y ambos son excelentes para la computación distribuida
para la lista más detallada de las opciones vea http://wiki.python.org/moin/ParallelProcessing
y si desea ejecutar algo automáticamente en una máquina remota, una mejor alternativa a telnet es ssh como en http://pydsh.sourceforge.net/
Puede ver la mayoría de los paquetes de terceros disponibles para Python 3 enumerados here; relevante para el cómputo del clúster es mpi4py - la mayoría de las demás herramientas informáticas distribuidas como pyro todavía son Python-2, pero MPI es un estándar líder para el cómputo distribuido de clúster y bien estudiado (no tengo experiencia directa con mpi4py con Python 3, , pero de oídas, creo que es una buena implementación).
La principal alternativa es el propio multiprocessing de Python, que también se adapta bastante bien si no tiene interés en conectar nodos existentes que respetan los estándares MPI pero que no pueden codificarse en Python.
No hay ningún valor agregado real en el propio (como dice Atwood, no reinvente la rueda, a menos que su propósito sea solo para entender mejor las ruedas) -) - use una de las soluciones sólidas, probadas y generalizadas que han sido probados, depurado y optimizado en su nombre! -)
+1 por mencionar 'multiprocesamiento'. –
"¿sería posible hacer un racimo pitón"
Sí.
Me encantan las preguntas sí/no. ¿Algo más que quieras saber?
(Tenga en cuenta que Python 3 tiene pocas bibliotecas de terceros, sin embargo, por lo que es posible que quiera quedarse con Python 2 en el momento.)
Si necesita escribir scripts administrativos, echar un vistazo a la biblioteca ClusterShell Python también, o/y su shell paralelo clush. También es útil cuando se trata de conjuntos de nodos (hombre nodeset).
Creo que IPython.parallel es el camino a seguir. Lo he estado usando extensamente durante el último año y medio. Le permite trabajar interactivamente con tantos nodos de trabajadores como desee. Si está en AWS, StarCluster es una excelente forma de ejecutar IPython.parallel de forma rápida y fácil con tantos nodos EC2 como pueda. (También puede instalar automáticamente Hadoop, y una variedad de otras herramientas útiles, si es necesario). Hay algunos trucos para usarlo. (Por ejemplo, no desea enviar grandes cantidades de datos a través de la interfaz IPython.parallel. Mejor distribuir una secuencia de comandos que reducirá trozos de datos en cada motor individualmente). Pero, en general, he encontrado que ser una forma notablemente fácil de hacer un procesamiento distribuido (WAY mejor que Hadoop!)
- 1. palabras en clúster de Python KMeans
- 2. Velocidad de cálculo de poderes (en python)
- 3. Procesamiento en paralelo de Java en sistemas de clúster (informática en clúster)
- 4. Cálculo de EuropeanOptionImpliedVolatility en quantlib-python
- 5. Biblioteca de cálculo estocástico en python
- 6. Cálculo de la fecha hebrea en Python
- 7. clúster de 2d puntos
- 8. Alquile un clúster
- 9. Puntos de clúster en PostGIS
- 10. ¿Clúster de computadoras para alquilar?
- 11. Singleton en entorno de clúster
- 12. Medidas de calidad del clúster
- 13. ¿Cálculo de superposición de rango de fechas eficiente en python?
- 14. Detección de bordes de Python y cálculo de curvatura
- 15. programación "embarazosamente paralela" usando python y PBS en un clúster
- 16. Función de clúster de OpenCV cvKMeans2(): ¿qué tipo de centro de clúster hay en la matriz?
- 17. Cálculo del tiempo en Python (datetime.timedelta?)
- 18. Biblioteca de clúster de texto de Java
- 19. Cómo configurar "clúster git"
- 20. WebLogic clúster servicio singleton
- 21. Caché compartida del clúster
- 22. serialización rápida JSON (y comparación con Pickle) para la informática de clúster en Python?
- 23. Crear nueva hoja de cálculo (API Google/Python)
- 24. medio de cálculo en Python para un generador
- 25. Uso del módulo de multiprocesamiento para informática en clúster
- 26. Reordenar elementos de la matriz para reflejar el clúster de columnas y filas en python ingenuo
- 27. Cassandra: eliminación de un nodo del clúster
- 28. Cómo configurar un clúster de bajo costo
- 29. clúster de nodos con socket.io y expressjs
- 30. nodo de clúster not_exist_already mnesia (esquema)
Para uso interactivo, o como un punto de partida fácil, pruebe ipython. –