Finalmente ha llegado a mi correo mi certificación de Databricks Spark 3.0 tras haber aprobado dicho examen. El examen lo presenté el 14 de abril del 2021 y les voy a contar brevemente como fue el examen, de qué trata y qué hice para aprobarla.
El examen
Las características del examen son las siguientes:
- Duración: 120 minutos.
- Consta de 60 preguntas y apruebas con al menos 42 aprobadas (es decir, el 70%). Las cuales se distribuyen aproximadamente de la siguiente manera:
- Spark Architecture: Conceptual understanding (~17%)
- Spark Architecture: Applied understanding (~11%)
- Spark DataFrame API Applications (~72%)
- El examen es online y presentas desde por ejemplo tu casa, eso si, te estarán viendo por la cámara de tu ordenador, por lo cual no puedes ni debes abandonar tu sitio durante el examen, por lo cual asegúrate de hacer tus necesidades antes del examen.
- No podrás tener accesorios a la mano como móviles, relojes, etc. Sencillamente cuentas con tu ordenador y en el examen te darán distintos PDF que abarcan todo el API.
- Al comprar el examen seleccionas si presentarás el examen enfocada en la API Python o Scala de Spark.
OJO: No olvides días previos al examen entrar a la Web del examen y culminar el alta, que consiste en un software que reconoce tu rostro. NO LO DEJES PARA ÚLTIMO MOMENTO.
El examen consta de únicamente preguntas de selección múltiple, aunque eso si, no todas van de conceptos, las preguntas dada mi experiencia se componen de:
- Evaluación de conceptos, por ejemplo: Cuales de las siguientes características no pertenece a las narrow transformations. NOTA: Cuidado con esas negaciones.
- Dado un trozo de código seleccionar la opción que indique la razón del fallo.
- Dado un trozo de código seleccionar la opción que representa el resultado final.
- Dado un trozo de código incompleto seleccionar la opción que contiene esas partes de código que se usarían para completar el trozo de código para poder llevar a cabo una tarea de forma exitosa.
Las preguntas
Tal cual como lo indica la página dedicada a la certificación el contenido a evaluar es:
- Arquitectura de Spark y el nuevo AQE (Adaptive Query Execution)
- API Dataset:
- Seleccionar, renombrar y manipular columnas.
- filtrado, ordenamiento, eliminación y agregación de registros (filas).
- Joins entre tablas, lectura, escritura y particionamiento en DataFrames.
- UDFs y funciones Spark SQL.
- Hay preguntas no solo del API Dataset sino también propiedades de configuración como por ejemplo spark.sql.shuffle.partitions
- Las preguntas de completado de código eran como el siguiente ejemplo:
1 2 |
spark._.format(_).options(header='true') ._('zipcodes.csv') |
Donde las opciones a escoger serían:
- readDF, text, load
- readDF, ‘csv’, csv
- read, ‘csv’, load => Opción correcta
- read, csv, load
La plataforma te permite marcar preguntas para ser revisadas más adelante, cosa que yo aconsejo utilizar, hacer una pasada rápida por las preguntas, selecciona una respuesta y sobre aquellas que se tenga una mínima duda sencillamente se marca y le das una revisión, de esta forma tendrás oportunidad de responder todas las preguntas y revisar en 2 o hasta 3 ocasiones todas las preguntas que hayas dejado marcadas.
Finalizado el examen
Tan pronto finalizas el examen podrás observar por pantalla una valoración no definitiva del resultado de la prueba y minutos después recibirás un correo con la nota, donde ya te indican si aprobaste (o no, pero si sigues mi receta aprobarás) y luego pasados unos 7 días hábiles o quizás un poco menos recibes tu certificado por correo.
Receta para aprobar el examen
- Leer el libro Learning Spark 2nd edition, los capítulos 1-7 y el capitulo 12 orientado a lo nuevo de Spark 3.
- Leer el libro Spark the definitive Guide secciones I, II y IV.
- Hacer ejercicios explorando las distintas formas de creación de DataFrame/Dataset.
- Revisar parámetros de configuración, tanto los de aplicación como aquellos orientados a la ejecución (deploy mode: cluster/client, asignación de recursos, etc).
- Hacer muchos ejercicios de Spark para los que recomiendo dar un vistazo al sitio Web https://sparkbyexamples.com, sobre todo haciendo énfasis en las siguientes clases:
- DataFrameNaFunctions
- DataFrameReader
- DataFrameWriter
- Dataset
- functions, sobre todo ejercicios de tratamiento de fechas, parsing (json, csv), agregación, colecciones, matemáticas, cadenas, misceláneas, etc.
- SparkSession
- Catalog
- types
- WindowSpec (Operaciones de ventana)
- AQE: https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html
https://docs.databricks.com/spark/latest/spark-sql/aqe.html?_ga=2.125083983.432929330.1612904474-492945158.1572301715 - Nuevo en Spark 3 https://databricks.com/blog/2020/06/18/introducing-apache-spark-3-0-now-available-in-databricks-runtime-7-0.html
- Revisar los tutoriales gratuitos de Databricks orientados a Dataframes, Datasets y Catalog
- Mi repositorio dedicado a Spark 3
Ahora es tu turno, te animas a afrontar este reto, tienes alguna otra certificación en mente, estás indeciso en cual certificación de Spark tomar o si por el contrario ya presentaste está o alguna otra certificación cuéntanos qué tal te fue.