Introducción a Apache Spark

575 visualizações

Publicada em

Introducción (en Español) al framework de procesamiento distribuido en memoria Apache Spark. Elementos básicos de Spark, RDD, incluye demo de las librerías SparkSQL y Spark Streaming

Presentado en www.nardoz.com

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
575
No SlideShare
0
A partir de incorporações
0
Número de incorporações
42
Ações
Compartilhamentos
0
Downloads
17
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • Each iteration is, for example, a MapReduce job
  • Introducción a Apache Spark

    1. 1. Introducción Apache Spark Gustavo Arjones gustavo@socialmetrix.com @arjones
    2. 2. Gustavo Arjones Co-founder & CTO, Socialmetrix Lic. Ciencias Computación MBA Marketing Servicios @arjones gustavo@socialmetrix.com Brasileño, en ARG desde 2008
    3. 3. Qué es Apache Spark?
    4. 4. Qué es Spark? Apache Spark™ is a fast and general engine for large-scale data processing. • Procesamiento In-memory (preferencialmente) • Framework de Procesamiento Unificado • Para Ingenieros & Data Scientists
    5. 5. Principales Pilares Task Scheduler • Prepara los jobs a traves de DAG (Directed acyclic graph) • Enganchan funciones para ejecutar los stages • Cache-aware; considera data utilización & localización (data locality) • Partitioning-aware para reducir shuffles por la red RDD (Resilient Distributed Datasets) • Estructura de datos Immutable (In-memory) • Tolerante a fallas (Se reama en caso de falla) • Estructura de datos que puede ser operada en paralelo •Rica interfaz de Transformations & Actions
    6. 6. Porqué me gusta?
    7. 7. Viene de buen “origen” BDAS, the Berkeley Data Analytics Stack (AMPLAB)
    8. 8. Compacto y poderoso • Escrito en Scala, con wrappers para Python y Java*
    9. 9. API muy expresiva Ver: https://spark.apache.org/docs/latest/api/scala/#org.apache.spark.rdd.RDD
    10. 10. Consola interactiva • Aprender, prototipado rápido • Análisis interactivo sobre los datos
    11. 11. Plataforma Unificada
    12. 12. Plataforma Unificada • No es necesario copiar datos/ETL entre sistemas • Varios tipos de procesamientos en el mismo código (claridad) • Reutilización de código (Batch & Realtime) • Un único sistema para aprender • Un único sistema para mantener Big Deal para Arquitectura Lambda
    13. 13. Plataforma Unificada (lines of code) 140000 120000 100000 80000 60000 40000 20000 0 Hadoop MapReduce Storm (Streaming) Impala (SQL) Giraph (Graph) Spark non-test, non-example source lines GraphX SparkSQL Streaming
    14. 14. Spark UI
    15. 15. Código Testeable! • El contexto puede crear RDD
    16. 16. Proyecto muy activo (y ganando tracción)
    17. 17. Proyecto MUY activo (y ganando tracción) 250 200 150 100 50 0 Patches MapReduce Storm Yarn Spark *as of June 1, 2014 45000 40000 35000 30000 25000 20000 15000 10000 5000 0 Lines Added MapReduce Storm Yarn Spark 16000 14000 12000 10000 8000 6000 4000 2000 0 Lines Removed MapReduce Storm Yarn Spark
    18. 18. Y más … • Esfuerzo para estandarización de la plataforma • Certificación para Distros & Apps gratis • Material de training gratis • Databricks levantó $47M • Databricks Cloud???
    19. 19. Y Hadoop?
    20. 20. Modelo Map-Reduce iter. 1 iter. 2 . . . Input HDFS read HDFS write HDFS read HDFS write Input query 1 query 2 query 3 result 1 result 2 result 3 . . . HDFS read Lento porque necesita replicación, serialización y I/O
    21. 21. Spark (in-memory + DAG execution engine) iter. 1 iter. 2 . . . Input Distributed memory Input query 1 query 2 query 3 . . . one-time processing 10-100× más rápido
    22. 22. Spark y Hadoop pueden ser amigos • YARN / Mesos • Acceso HDFS / S3 • Usando Input/Output formats de Hadoop
    23. 23. DEMO http://bit.ly/NardozSparkDemo
    24. 24. Donde aprender más?
    25. 25. Mucha documentación disponible https://spark.apache.org/documentation.html http://spark-summit.org/2014/training http://shop.oreilly.com/product/06369200285 12.do http://arjon.es/tag/spark/
    26. 26. Gracias & Obrigado! Gustavo Arjones gustavo@socialmetrix.com @arjones

    ×