Articulo de referencia

Cascada (software)

{{cite web\n | url = https://github.com/Cascading/cascading/releases\n | title = Releases · Cascading/cascading\n | website = github.com\n | access-date = 2021-03-29\n}} "},"lat...

Cascading es una capa de abstracción de software para Apache Hadoop y Apache Flink . Se utiliza para crear y ejecutar flujos de trabajo complejos de procesamiento de datos en un clúster de Hadoop mediante cualquier lenguaje basado en JVM ( Java , JRuby , Clojure , etc.), ocultando la complejidad subyacente de los trabajos MapReduce . Es de código abierto y está disponible bajo la licencia Apache . Driven, Inc. ofrece soporte comercial [ 4 ].

Cascading fue creado originalmente por Chris Wensel, quien más tarde fundó Concurrent, Inc., que posteriormente cambió su nombre a Driven. [ 5 ] Cascading está siendo desarrollado activamente por la comunidad y existen varios módulos adicionales disponibles. [ 6 ]

Arquitectura

Para usar Cascading, también debe estar instalado Apache Hadoop, y el archivo .jar del trabajo de Hadoop debe contener los archivos .jar de Cascading. Cascading consta de una API de procesamiento de datos, una API de integración, un planificador de procesos y un programador de procesos.

Cascading aprovecha la escalabilidad de Hadoop, pero abstrae las operaciones estándar de procesamiento de datos de las tareas subyacentes de mapeo y reducción. [ 7 ] Los desarrolladores utilizan Cascading para crear un archivo .jar que describe los procesos necesarios. Sigue un paradigma de "origen-tubería-sumidero", donde los datos se capturan desde las fuentes, siguen "tuberías" reutilizables que realizan procesos de análisis de datos, y los resultados se almacenan en archivos de salida o "sumideros". Las tuberías se crean independientemente de los datos que procesarán. Una vez vinculadas a las fuentes y sumideros de datos, se denominan "flujos". Estos flujos se pueden agrupar en una "cascada", y el planificador de procesos se asegurará de que un flujo determinado no se ejecute hasta que se satisfagan todas sus dependencias. Las tuberías y los flujos se pueden reutilizar y reordenar para satisfacer diferentes necesidades empresariales. [ 8 ]

Los desarrolladores escriben el código en un lenguaje basado en JVM y no necesitan aprender MapReduce. El programa resultante se puede someter a pruebas de regresión e integrar con aplicaciones externas como cualquier otra aplicación Java. [ 9 ]

El procesamiento en cascada se utiliza con mayor frecuencia para la segmentación de anuncios, el análisis de archivos de registro, la bioinformática, el aprendizaje automático , el análisis predictivo , la minería de contenido web y las aplicaciones de extracción, transformación y carga (ETL). [ 5 ]

Usos de la cascada

Cascading fue citado como uno de los cinco proyectos Hadoop más potentes por SD Times en 2011, [ 10 ] como un importante proyecto de código abierto relevante para la bioinformática [ 11 ] y está incluido en Hadoop: A Definitive Guide, de Tom White. [ 12 ] El proyecto también ha sido citado en presentaciones, actas de conferencias y reuniones de grupos de usuarios de Hadoop como una herramienta útil para trabajar con Hadoop [ 13 ] [ 14 ] [ 15 ] [ 16 ] y con Apache Spark [ 17 ]

  • MultiTool en Amazon Web Services se desarrolló utilizando Cascading. [ 18 ]
  • LogAnalyzer para Amazon CloudFront se desarrolló utilizando Cascading. [ 19 ]
  • BackType [ 20 ] - plataforma de análisis social
  • Etsy [ 7 ] - mercado
  • FlightCaster [ 21 ] - predicción de retrasos en vuelos
  • Flujo de iones [ 22 ] - análisis de datos de secuencias de ADN
  • RapLeaf [ 23 ] - sistemas de personalización y recomendación
  • Razorfish [ 24 ] - publicidad digital

Lenguajes específicos de dominio construidos sobre cascada

  • PyCascading [ 25 ] - por Twitter, disponible en GitHub
  • Cascading.jruby [ 26 ] - desarrollado por Gregoire Marabout, disponible en GitHub
  • Cascalog [ 27 ] - escrito por Nathan Marz , disponible en GitHub
  • Scalding [ 28 ] - Una API de Scala para Cascading. Facilita la transición de código Cascading/Scalding a Spark. Por Twitter, disponible en GitHub.

Referencias

  1. "Releases · Cascading/cascading" . github.com . Consultado el 29 de marzo de 2021 .
  2. "Versiones · cwensel/cascading" . github.com . Consultado el 29 de marzo de 2021 .
  3. "cascading/LICENSE.txt en 3.3 · Cascading/cascading" . github.com . Consultado el 29 de marzo de 2021 .
  4. "Soporte en cascada e impulsado " . Impulsado .
  5. 1 2 "Integrate.io - Una plataforma para respaldar todo su recorrido de datos" . Integrate.io .
  6. "Módulos en cascada" . Archivado del original el 11 de agosto de 2011. Consultado el 22 de agosto de 2011 .
  7. 1 2 Entrada de blog de Etsy que describe su uso de Cascading con Hadoop
  8. "Guía del usuario de Cascading" (PDF) . Archivado del original (PDF) el 6 de febrero de 2011.
  9. "Gestión del rendimiento de aplicaciones Hadoop: características de DRIVEN" . Driven .
  10. Handy, Alex (1 de junio de 2011). "Los cinco proyectos Hadoop más potentes" . SD Times . Consultado el 26 de octubre de 2013 .
  11. Taylor, Ronald (21 de diciembre de 2010). "Una visión general del marco Hadoop/MapReduce/HBase y sus aplicaciones actuales en bioinformática" . BioMed Central . Springer Science+Business Media . Recuperado el 26 de octubre de 2013 .
  12. White, Tom (24 de septiembre de 2010). Hadoop: La guía definitiva . O'Reilly Media, Inc. ISBN 9781449396893 vía Google Libros.
  13. "Primeros pasos con Hadoop" . www.slideshare.net .
  14. "Julio Guijarro, Steve Loughran y Paolo Castagna, "Hadoop y más allá", HP Labs, Bristol, Reino Unido, 2008" (PDF) . Archivado del original (PDF) el 1 de octubre de 2011. Consultado el 22 de agosto de 2011 .
  15. "Presentación de Flightcaster sobre Hadoop" . www.slideshare.net .
  16. "NoSQL, Hadoop, Cascading Junio ​​2010" . www.slideshare.net .
  17. "Uso de cascada para crear aplicaciones centradas en datos en Spark" . Spark Summit 2014. 7 de mayo de 2014. Consultado el 25 de marzo de 2016 .
  18. "Cascading.Multitool en AWS" .
  19. "Artículos de AWS" . Amazon Web Services, Inc.
  20. Blog de BackType Archivado el 25 de agosto de 2011 en Wayback Machine
  21. "FlightCaster" .
  22. "Flujo de iones" . Archivado del original el 23 de octubre de 2011.
  23. Blog de RapLeaf archivado el 1 de febrero de 2011 en Wayback Machine .
  24. "Estudio de caso de Razorfish" . Amazon Web Services, Inc.
  25. "PyCascading ya no recibe mantenimiento" . GitHub . 17 de septiembre de 2021.
  26. "Cascading.JRuby" . 8 de agosto de 2018 vía GitHub.
  27. «Cascalog» . 23 de junio de 2023 vía GitHub.
  28. "Scalding" . 22 de junio de 2023 vía GitHub.
  • Sitio web oficial
Obtenido de " https://en.wikipedia.org/w/index.php?title=Cascading_(software)&oldid=1341102146 "