S02 ApacheSpark
S02 ApacheSpark
TECHNOLOGIES
Apache Spark es un sistema de computación que se basa en Hadoop Map Reduce y que, principalmente, permite
dividir o paralelizar el trabajo, ya que normalmente se instala en un clúster de máquina. La idea es que
tengamos N máquinas, por ejemplo diez máquinas, y cada una de esas instancias va a tener instalada una versión
de Apache Spark.
Apache Spark es un sistema de computación en clúster muy veloz. Proporciona el conjunto de API de alto
nivel, a saber, Java, Scala, Python y R para el desarrollo de aplicaciones.
Historia
Apache
Spark
Apache
Spark
Apache
Spark
Componentes
La garantía de Apache Spark para un manejo más rápido de la información y también un avance
más simple es posible solo gracias a los componentes de Apache Spark. Todos resolvieron los
problemas que ocurrieron al utilizar Hadoop MapReduce
Spark Streaming Spark SQL MLlib (Machine
Spark Streaming utiliza la Spark SQL es un segmento sobre Learning Library)
capacidad de programación rápida Spark Core que presenta otra MLlib es una estructura de
de Spark Core para realizar abstracción de información llamada aprendizaje automático distribuido
Streaming Analytics. Ingiere SchemaRDD, que ofrece ayuda para por encima de Spark en vista de la
información en grupos a escala sincronizar información estructurada arquitectura Spark basada en
reducida y realiza cambios de y no estructurada. memoria distribuida. Spark MLlib es
RDD (Conjuntos de datos nueve veces más rápido que la
distribuidos resistentes) en esos versión del disco Hadoop de Apache
grupos de información a pequeña Mahout (antes de que Mahout
escala. adquiriera una interfaz de Spark).
GraphX
GraphX es un marco distribuido de procesamiento de Apache Spark Core
gráficos de Spark. Proporciona una API para comunicar el Spark Core es el motor de ejecución general básico para la
cálculo del gráfico que puede mostrar los diagramas plataforma Spark en el que se basan todas las demás
caracterizados por el cliente utilizando la API de abstracción funcionalidades. Proporciona registro en memoria y
de Pregel. Asimismo, proporciona un tiempo de ejecución conjuntos de datos conectados en marcos de
optimizado y mejorado a esta abstracción. almacenamiento externos.
Spark Streaming
Spark SQL
Spark MLlib
Spark GraphX
Características y Ventajas
• Rápido en el procesamiento de datos, 10 veces más
rápido en el disco y 100 veces más rápido en la
memoria.
• Spark with abstraction-RDD proporciona Fault
Tolerance con garantía de pérdida de datos cero.
• Compatibilidad con múltiples idiomas a saber, Java, R,
Scala, Python para aplicaciones de construcción.
• Procesamiento en memoria que resulta en una alta
velocidad de cálculo y flujo de datos a cíclico.
• Procesamiento de flujo de datos en tiempo real con
Spark Streaming.
• Flexible para funcionar Independientemente y puede
ser integrado con Hadoop Yarn Cluster Manager.
• Rentable para Big data como necesidad mínima de
almacenamiento y centro de datos.
• GraphX simplifica Graph Analytics mediante la
recopilación de algoritmos y constructores
• Comunidad de Apache progresiva y en expansión
activa para Asistencia rápida.
Facilidad de Costo
uso s
Apache Spark Ambos son proyectos de Apache,
Conocido por su facilidad de lo que significa que son productos
uso, ya que viene con API de software libre y de código
fáciles de usar para Scala, abierto. Los 2 productos están
Java, Python y Spark SQL. diseñados para funcionar en
Cuenta con un modo hardware básico.
interactivo para que tanto MapReduce utiliza cantidades
los desarrolladores como estándar de memoria porque su
los usuarios puedan tener procesamiento está basado en disco,
comentarios inmediatos por lo que una empresa tendrá que
sobre consultas y otras comprar discos más rápidos y
acciones. mucho espacio en disco para
Hadoop MapReduce ejecutar MapReduce. Los
No cuenta con un modo sistemas Spark cuestan más
interactivo, sin embargo, los debido a las grandes cantidades de
complementos como Hive y RAM que se necesita para ejecutar
Pig hacen que trabajar con todo en la memoria. Pero la ventaja
MapReduce sea un poco más es que la tecnología de Spark
fácil para los adoptantes. disminuye la cantidad de sistemas
requeridos.
Rendimiento Seguridad
Apache Spark: Apache Spark
• Trabaja in memory y todos los Es un poco escasa al admitir
procesos se aceleran. actualmente solo la autenticación
• Necesita una mayor memoria a través de un secreto
de almacenamiento compartido. La bonificación de
• Su rendimiento puede verse seguridad que Spark puede
mermado debido a la necesidad de disfrutar es que si ejecuta Spark
utilizar aplicaciones pesadas. en HDFS, puede usar ACL de
Hadoop Map Reduce HDFS y permisos de nivel de
• Los datos están en disco y eso archivo. Además, Spark puede
hace que todo resulte más lento. ejecutarse en YARN dándole la
• La ventaja es que, en capacidad de usar la
comparación con la otra autenticación Kerberos.
alternativa, las necesidades de
almacenamiento son inferiores. Hadoop Map Reduce
• Al ocuparse de eliminar los datos Admite listas de control de
cuando no son ya necesarios, no acceso (ACL) y un modelo de
produce pérdidas de rendimiento permisos de archivos tradicional.
significativas para aplicaciones Para el control del usuario en el
pesadas. envío de trabajos, Hadoop
proporciona la Autorización de
nivel de servicio, lo que garantiza
que los clientes tengan los permisos
adecuados.
Qué es un
RDD
Transformaciones con RDD
Transformaciones con RDD
Acciones con RDD
Qué es un
DataSet
Un DataSet es una colección de datos
distribuidos que tienen ya una estructura, a
diferencia de los RDD, que son conjuntos de
datos desestructurados.
Características
Al que se le pueden añadir una serie de parámetros o de nuevas funciones para añadir un nombre,
indicar la cantidad de memoria y otros muchos aspectos de configuración.
Trabajando con Databricks Cloud
¿Preguntas?