sábado, 14 de noviembre de 2015

Spark - Introduccion

Industrias están utilizando Hadoop ampliamente para analizar sus conjuntos de datos. La razón es que el marco Hadoop se basa en un modelo de programación sencilla (MapReduce) y permite una solución informática que es escalable, flexible, tolerante a fallos y rentable. Aquí, la principal preocupación es mantener la velocidad en el procesamiento de grandes conjuntos de datos en términos de tiempo de espera entre las consultas y el tiempo para ejecutar el programa de espera.
Spark fue introducido por Apache Software Foundation para acelerar el proceso de cálculo de software de computación Hadoop.
En contra de la creencia común, la chispa no es una versión modificada de Hadoop y no es, en realidad, depende de Hadoop porque tiene su propia administración de clústeres. Hadoop es sólo una de las maneras de implementar Spark.
Spark utiliza Hadoop de dos maneras - es el almacenamiento y la segunda esel procesamiento. Desde Spark tiene su propio cálculo de administración de clústeres, se utiliza Hadoop para propósitos de almacenamiento.

Apache Spark

Apache Spark es una tecnología de la computación en clúster de la velocidad del rayo, diseñado para el cálculo rápido. Se basa en Hadoop MapReduce y se extiende el modelo MapReduce para utilizar eficientemente para más tipos de cálculos, que incluye consultas interactivas y procesamiento de flujo. La característica principal de Spark es su computación en clúster en memoriaque aumenta la velocidad de procesamiento de la solicitud.
Spark está diseñado para cubrir una amplia gama de cargas de trabajo, tales como aplicaciones de lotes, algoritmos iterativos, consultas interactivas y streaming. Además de apoyar a todas estas cargas de trabajo en un sistema respectivo, se reduce la carga de gestión del mantenimiento de herramientas separadas.

Evolución de Apache Spark

Spark es una de sub proyecto de Hadoop desarrollado en 2009 en AMPLab de la Universidad de Berkeley por Matei Zaharia. Fue abierto en 2010 con fuente bajo una licencia BSD. Fue donado a la fundación del software de Apache en 2013, y ahora Apache Spark se ha convertido en un proyecto Apache nivel superior de febrero del 2014.

Características de Apache Spark

Apache Spark tiene características siguientes.
  • Velocidad - Spark ayuda a ejecutar una aplicación en clúster Hadoop, hasta 100 veces más rápido en la memoria, y 10 veces más rápido cuando se ejecuta en el disco. Esto es posible mediante la reducción de número de operaciones de lectura / escritura en el disco. Se almacena los datos de procesamiento intermedio en la memoria.
  • Soporta múltiples idiomas - Spark ofrece APIs integrados en Java, Scala, o Python. Por lo tanto, usted puede escribir aplicaciones en diferentes idiomas. Spark viene con 80 operadores de alto nivel para la consulta interactiva.
  • Analítica Avanzada - Spark no sólo apoya 'Mapa' y 'reducir'. También es compatible con las consultas SQL, datos de streaming, Máquina de aprendizaje (ML), y algoritmos Gráfico.

Spark Construido sobre Hadoop

El siguiente diagrama muestra tres formas de cómo la chispa puede ser construido con componentes de Hadoop.
Spark Construido sobre Hadoop
Hay tres formas de despliegue Spark como se explica a continuación.
  • Independiente - despliegue autónomo Spark Spark significa ocupa el lugar en la cima de HDFS (Hadoop Distributed File System) y el espacio se asigna para HDFS, de forma explícita. Aquí, Spark y MapReduce se ejecutará al lado del otro para cubrir todos los puestos de trabajo de chispa en clúster.
  • Hadoop Hilados - despliegue Hadoop Hilados significa, simplemente, la chispa se ejecuta en Hilados sin pre-instalación o raíz de acceso requerido. Ayuda a integrar la chispa en el ecosistema Hadoop Hadoop o pila. Permite que otros componentes que se ejecutan en la parte superior de la pila.
  • Spark en MapReduce (Simr) - Spark en MapReduce se utiliza para poner en marcha el trabajo de chispa, además de la implementación independiente. Con Simr, el usuario puede iniciar la chispa y utiliza su cáscara sin acceso administrativo.

Componentes de Spark

La siguiente ilustración muestra los diferentes componentes del Spark.
Componentes de Spark

Apache Spark Core

Spark Core es el motor de ejecución en general subyacente para la plataforma chispa que toda otra funcionalidad se basa. Se ofrece en memoria informática y la referencia a los conjuntos de datos en los sistemas de almacenamiento externo.

Spark SQL

Spark SQL es un componente en la parte superior de Spark Core que introduce una nueva abstracción de datos llamada SchemaRDD, que proporciona soporte para datos estructurados y semi-estructurados.

Spark Streaming

Spark Streaming aprovecha Spark capacidad de programación rápida de Core para realizar análisis de streaming. Se ingiere datos en mini-lotes y realiza RDD (Conjuntos de datos distribuidos resilientes) transformaciones en esos mini-lotes de datos.

MLlib (Machine Learning Library)

MLlib es un marco de aprendizaje automático distribuido anteriormente chispa debido a la arquitectura Spark basado en memoria distribuida. Es, de acuerdo con los puntos de referencia, hecho por los desarrolladores MLlib contra la alternancia de mínimos cuadrados (ALS) implementaciones. Spark MLlib es nueve veces más rápido que la versión basada en disco-Hadoop de Apache Mahout (antes Mahout ganó una interfaz Chispa).

GraphX

GraphX ​​es un marco de procesamiento gráfico distribuido en la parte superior de la chispa. Proporciona una API para expresar la computación gráfica que puede modelar los gráficos definidos por el usuario mediante el uso de Pregel abstracción API. También proporciona un tiempo de ejecución optimizada para esta abstracción.

No hay comentarios.:

Publicar un comentario