Apache Spark

¿Qué es Apache Spark?

 

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.

Características principales

 

Sus principales características son las siguientes:

  • Está integrado con Apache Hadoop.
  • Trabaja en memoria, con lo que se consigue mucha mayor velocidad de procesamiento.
  • Nos proporciona API para Java, Scala, Python y R.

Componentes

Los componentes principales que conforman el framework son estos:

  • Spark Core: Es la base o conjunto de librerías donde se apoya el resto de módulos. Es el núcleo del framework.
  • Spark SQL: Es el módulo para el procesamiento de datos estructurados y semi-estructurados. Con este módulo vamos a poder transformar y realizar operaciones sobre los RDD o los dataframes. Está pensado exclusivamente para el tratamiento de los datos.
  • Spark Streaming: Es el que permite la ingesta de datos en tiempo real. Si tenemos una fuente, por ejemplo Kafka o Twitter, con este módulo podemos ingestar los datos de esa fuente y volcarlos a un destino. Entre la ingesta de datos y su volcado posterior, podemos tener una serie de transformaciones.
  • Spark MLLib: Es una librería muy completa que contiene numerosos algoritmos de Machine Learning, tanto de clusterización, clasificación, regresión, etc. Nos permite, de una forma amigable, poder utilizar algoritmos de Machine Learning.
  • Spark Graph: Permite el procesamiento de grafos (DAG). No permite pintar grafos, sino que permite crear operaciones con grafos, con sus nodos y aristas, e ir realizando operaciones.

Casos de éxito de la aplicación de Apache Spark en empresas

 

El caso de un gigante chino. Alibaba compite mano a mano con Amazon. Esta mega compañía de comercio ejecuta uno de los trabajos más grandes de Apache Spark en el mundo. Continuamente se analizan miles de datos de petabytes, lo que equivale a 13,3 años continuos de video en calidad HD. Cada una de las interacciones de los usuarios en Alibaba se muestra en un gráfico grande. Desde este punto, Apache Spark se usa para obtener resultados acerca de sus comportamientos de compra obteniendo resultados precisos y en tiempo real.

Made with Slides.com