Me gustaría encontrar un framework MapReduce bueno y robusto, para ser utilizado desde Scala.Implementación de MapReduce en Scala
Respuesta
Para agregar a la respuesta en Hadoop: hay al menos dos envolturas de Scala que hacen que el trabajo con Hadoop sea más apetecible.
Scala MapReduce (SMR): http://scala-blogs.org/2008/09/scalable-language-and-scalable.html
SHadoop: http://jonhnny-weslley.blogspot.com/2008/05/shadoop.html
UPD 05 de octubre 11
También hay Scoobi marco, que tiene impresionante expresividad.
http://hadoop.apache.org/ es independiente del idioma.
Lo siento pero no pedí la implementación de Java. De hecho, Hadoop se puede conectar a Scala, pero el código repetitivo debe escribirse en Java. –
¿Escribes un ScalaHadoopAdapter que se encarga de todos los estándares y lo publica como gratuito/de código abierto? – yfeldblum
el texto estándar no necesita estar escrito en java. – jshen
Puede estar interesado en scouchdb, una interfaz de Scala para usar CouchDB.
Otra idea es usar GridGain. ScalaDudes tiene un ejemplo del uso de GridGain con Scala. Y here es otro ejemplo.
Hace un tiempo, encontré exactamente este problema y terminé escribiendo una pequeña infraestructura para que sea fácil usar Hadoop desde Scala. Lo usé por mi cuenta por un tiempo, pero finalmente logré ponerlo en la web. Se llama (muy originalmente) ScalaHadoop.
a otro punto de jshen:
hadoop de streaming simplemente utiliza sockets. Al usar transmisiones de Unix, su código (cualquier idioma) simplemente tiene que poder leer desde stdin y arrojar secuencias delimitadas por tabuladores. implemente un asignador y, si es necesario, un reductor (y si corresponde, configúrelo como el combinador).
Para una API scala en la parte superior de hadoop echa un vistazo a Scoobi, todavía está en desarrollo, pero muestra una gran promesa. También hay algún esfuerzo para implementar colecciones distribuidas en la parte superior de hadoop en el Scala incubator, pero ese esfuerzo aún no se puede utilizar.
También hay un nuevo contenedor scala para la cascada de Twitter, llamado Scalding. Después de mirar brevemente la documentación de escaldado parece que si bien hace que la integración con cascada sea más suave, todavía no resuelve lo que veo como el principal problema con la cascada: tipo de seguridad. Cada operación en cascada opera en tuplas en cascada (básicamente una lista de valores de campo con o sin un esquema separado), lo que significa que escribe errores, es decir Unir una clave como una Cadena y una clave como Largo lleva a fallas de tiempo de ejecución.
Scalding tiene una API de tipo seguro: https://github.com/twitter/scalding/wiki/Type-safe-api-reference y en Fields API (que usted están mencionando), unir una cadena a una larga no causa excepciones de tiempo de ejecución (si ambos son números). Por supuesto, en la API de tipo seguro tal compilación está prohibida por el compilador. –
En lo personal, me he convertido en un gran fan de la chispa
Usted tiene la capacidad de hacer Cluster de Computación en memoria, lo que reduce significativamente los gastos generales que iba a experimentar operaciones de MapReduce uso intensivo del disco.
- 1. MapReduce en AWS
- 2. Implementación de un valor medido en Scala
- 3. Scala análogos de QtConcurrent
- 4. Empaquetado e implementación de aplicaciones Scala
- 5. Operaciones MapReduce/Aggregate en SpringBatch
- 6. Producto cruzado en MapReduce
- 7. Error en Hadoop MapReduce
- 8. Mapreduce for dummies
- 9. La implementación de una interfaz Java en Scala
- 10. Alternativas de MapReduce
- 11. Programación de trabajos de MapReduce para MongoDB
- 12. Reductores disponibles en Elastic MapReduce
- 13. Paralelización del "Reducir" en "MapReduce"
- 14. reutilizar JVM en trabajos mapreduce de Hadoop
- 15. ejecutando múltiples trabajos de MapReduce en hadoop
- 16. Hbase mapreduce error
- 17. MongoDB: efectos secundarios de mapReduce
- 18. MongoDB: Terrible rendimiento de MapReduce
- 19. MapReduce método de orden aleatorio
- 20. Amazon Elastic MapReduce - SIGTERM
- 21. Implementando PageRank usando MapReduce
- 22. Comenzando con MapReduce/Hadoop
- 23. mapreduce ejemplo recuento
- 24. Salida intermedia de Hadoop MapReduce
- 25. Encontrar componentes conectados usando Hadoop/MapReduce
- 26. Scala Caso clase es igual a la implementación
- 27. Clase “Combiner" en un trabajo mapreduce
- 28. MongoDB MapReduce no devuelve datos en PHP
- 29. ¿Cómo implementar MapReduce en C# usando PLINQ?
- 30. MongoDB MapReduce actualización en el lugar cómo
SHadoop es bastante antiguo: utiliza el antiguo framework MR. Actualicé las implícitas en algún momento: https://github.com/schmmd/Hadoop-Scala-Commons – schmmd
El escaldado también es una opción. https://github.com/twitter/scalding –