La figura del data engineer y el big data. ¿Qué tiene que saber?
Tecnología | Artículo-
Visitas2760
- September 2020
- Fecha de publicación
- September 2020
- Tecnología
- Artículo
Profesor de ESIC y Data Engineer en Orange.
La figura del data scientist se ha ido haciendo cada vez más imprescindible conforme se populariza el uso de las tecnologías de big data. Para conocer mejor su papel y sus competencias, Ramón Pin, data engineer en Orange y profesor del Máster en Big Data Management de ESIC, nos explica los conocimientos y la tecnología que debe dominar un profesional de estas características, además del contexto en el que trabaja.
Existen tantas definiciones de data engineer como profesionales que se dedican a esta rama del desarrollo de aplicaciones. A diferencia de sus primos, los data scientists, el de data engineer es un rol que no aparece con grandes rótulos de neón.
Se trata de una tarea silenciosa pero fundamental para el desarrollo de sistemas de información complejos, en particular aquellos que hacen uso de las tecnologías big data.
En el proceso del tratamiento avanzado de datos, los data scientists entrenan modelos que extraen conocimiento sobre el problema que van a tratar a partir de los datos usando herramientas matemáticas y conocimientos del dominio del negocio.
Pero antes de que sea posible definir y entrenar el modelo es necesario tener disponible un conjunto de datos válido sobre el que trabajar. Para ello es necesario obtener, depurar y preparar los datos para su explotación. El encargado de realizar esta tarea es, cómo no, el data engineer, que es el responsable de definir e implementar un flujo de datos desde su origen hasta su explotación de una forma controlada y automatizada.
Son un componente vital en el proceso de análisis avanzado de los datos y son imprescindibles en cualquier empresa que pretenda que los datos sean el centro de su actividad, ya sea para la toma de decisiones o para su monetización.
Por tanto, en una definición formal podríamos decir que el data engineer es el profesional enfocado en el diseño, desarrollo y mantenimiento de los sistemas de procesamiento de datos dentro de un proyecto de big data.
¿Qué conocimientos le son útiles a un data engineer para llevar a cabo sus funciones?
En primer lugar debe tener un conocimiento fluido de bases de datos relacionales y del lenguaje de consulta SQL. Esto le da el conocimiento sobre las técnicas de modelado de datos más utilizadas y sobre cómo acceder a los datos de origen cuando estos residen en este tipo de almacenamiento.
En el mundo del big data no se huye tampoco del uso de esta tecnología cuando el caso en cuestión lo requiere. Además, dado que el SQL es un estándar en lo referente a las consultas de datos, cada vez más herramientas big data lo tienen como lenguaje de acceso a ellos.
El data engineer debe conocer técnicas de limpieza, sumarización y validación de los datos, de modo que la información llegue a sus usuarios de la forma más adecuada para su correcta explotación.
El data engineer sabe usar de forma óptima motores de procesamiento de big data de alto rendimiento como MapReduce, Spark o Flink.
Entre sus tareas habituales suele encontrarse el dar soporte a la configuración de los clústeres de procesamiento, el número de cores, la memoria y otros parámetros de bajo nivel, todo enfocado a que la ejecución de los modelos sea lo más eficiente posible.
¿Qué tecnologías son clave para un data engineer?
Entre las tecnologías usadas por un data engineer suelen encontrarse otras como bases de datos no relacionales y cómo modelar los datos en ellas. Ejemplos de estas tecnologías son HBase, Cassandra o MongoDB. También es interesante que conozca el uso de motores de indexación como SolR o ElasticSearch.
En los sistemas de obtención de datos, en la actualidad, es muy importante para un data engineer el tener conocimiento de las tecnologías que permiten acceder a ellos en tiempo real. Generalmente hablamos de tecnologías de streaming como Flume, Kafka o Spark Structured Streaming.
Su sistema operativo habitual es Linux, y un data engineer debería tener gran soltura en él a la hora de desarrollar sus actividades habituales. Sus lenguajes de programación habituales son Java, Scala o Kotlin para el desarrollo de procesos de tratamiento de datos y Python como lenguaje para el análisis y la preparación de los datos y otras tareas de soporte al proceso de estos. También debe conocer las técnicas y herramientas habituales hoy en día para el desarrollo de aplicaciones git, metodologías ágiles, etc.
Además, cada día es más urgente para él tener conocimientos del desarrollo de aplicaciones nativas para la nube. En el mundo empresarial actual este es un movimiento que cada vez más empresas están llevando a cabo. Es necesario conocer las diferencias entre el desarrollo de aplicaciones locales y basadas en la nube para realizar este movimiento con seguridad.
Para terminar, como profesional el data engineer debe ser capaz de moverse con confianza dentro de una gran cantidad de campos diferentes de la informática de sistemas y no debe parar en ningún momento de aprender y añadir nuevas herramientas a su cinturón.
Ser un experto en esta disciplina requiere de unos conocimientos asentados, de forma que realmente tengas el perfil que las empresas están demandando, y para ello te ofrecemos el Máster en Big Data y Business Analytics de ESIC. Obtén más información aquí.
También te puede interesar
Team building: qué es y cómo podemos implementarlo en una empresa
Los empleados son la estructura de cualquier empresa. Sin ellos, el negocio no saldría adelante, motivo suficiente para tener departamentos encargados tan solo de buscar estrategias para que los empl...
- Publicado por _ESIC Business & Marketing School
Qué es el modelo zero trust y cómo ayuda a mejorar la seguridad de tu empresa
La pandemia de covid-19 supuso un antes y un después en el funcionamiento de las compañías. La sociedad al completo se vio obligada a trabajar desde casa, lo que hizo que las empresas tuvieran que ...
- Publicado por _ESIC Business & Marketing School
Dirección estratégica: qué es, para qué sirve y ejemplos
¿Vale todo el mundo para dirigir una compañía? Ser ambicioso y querer ascender en una empresa es, por supuesto, algo positivo y gratificante. Pero ¿qué ocurre cuando muchas personas llegan al pun...
- Publicado por _ESIC Business & Marketing School