Científicos de Datos Sin Conocimientos de Ingeniería de Datos Se Enfrentarán A La Cruda Realidad

Soner Yıldırım
Jul 05, 2021

Contents Outline

Científicos de Datos Sin Conocimientos de Ingeniería de Datos Se Enfrentarán A La Cruda Realidad

Jul 05, 2021 4 minutes read

OPINION.

Probablemente haya leído algún artículo sobre la diferencia entre un científico de datos y un ingeniero de datos. Siempre he pensado que la distinción es clara. Los ingenieros de datos preparan los datos para su uso y luego los científicos de datos trabajan con esos datos.

Sin embargo, mi opinión sobre esta distinción ha cambiado drásticamente después de empezar a trabajar como científico de datos.


Photo by Ben White on Unsplash

Todo en la ciencia de datos comienza con los datos. Tu modelo de aprendizaje automático es tan bueno como los datos que se introducen en él. Si entra basura, sale basura. Un científico de datos no puede hacer magia para crear un producto valioso sin los datos adecuados.

Los datos adecuados no siempre están disponibles para los científicos de datos. En la mayoría de los casos, será responsabilidad del científico de datos convertir los datos en bruto a un formato adecuado.

A menos que trabaje en una gran empresa tecnológica que tenga equipos separados de ingenieros de datos y científicos de datos, debe poseer la capacidad y las habilidades para manejar algunas tareas de ingeniería de datos. Estas tareas cubren una amplia gama de operaciones y me explayaré sobre ello en la parte restante del artículo.

En cualquier caso, ¿cuál es la diferencia?

Me gustaría exponer mi opinión sobre la relación entre el trabajo de un ingeniero de datos y un científico de datos.

Un ingeniero de datos es un ingeniero de datos. Un científico de datos debería ser tanto un científico de datos como un ingeniero de datos.

Puede parecer una afirmación discutible. Sin embargo, me gustaría destacar que mi opinión era diferente antes de empezar a trabajar como científico de datos. Solía pensar en los ingenieros de datos y en los científicos de datos como entidades separadas.

Por ejemplo, los ingenieros de datos realizan un conjunto de operaciones conocido como ETL (extracción, transformación y carga). Abarca los procedimientos para recopilar datos de una o más fuentes, aplicar algunas transformaciones y luego cargarlos en una fuente diferente.

Definitivamente, no me sorprendería que se esperara que un científico de datos realizara operaciones ETL. La ciencia de los datos sigue evolucionando y la mayoría de las empresas no tienen claramente separadas las funciones de ingeniero de datos y de científico de datos. Como resultado, un científico de datos debería ser capaz de realizar algunas tareas de ingeniería de datos.

Si espera trabajar únicamente en la ejecución de algoritmos de aprendizaje automático con datos listos para su uso, se enfrentará a la cruda realidad poco después de empezar a trabajar como científico de datos.

Es posible que tengas que escribir algunos procedimientos almacenados en SQL para preprocesar los datos del cliente. También es posible que recibas los datos del cliente de varias fuentes diferentes. Su trabajo consistirá en extraerlos y combinarlos. A continuación, tendrá que cargarlos en una única fuente. Para escribir procedimientos almacenados eficientes, se necesitan amplios conocimientos de SQL.

La parte de transformación de los procedimientos ETL implica muchos pasos de limpieza y manipulación de datos. SQL puede no ser la mejor opción si se trabaja con datos a gran escala. La informática distribuida es una mejor alternativa en estos casos. Por lo tanto, un científico de datos también debería estar familiarizado con la computación distribuida.

Su mejor amigo en la computación distribuida puede ser Spark. Es un motor de análisis utilizado para el procesamiento de datos a gran escala. Podemos distribuir tanto los datos como los cálculos en clústeres para conseguir un aumento sustancial del rendimiento.

Si estás familiarizado con Python y SQL, no te será difícil acostumbrarte a Spark. Puedes utilizar las características de Spark con PySpark, que es una API de Python para Spark.

Lea También: Una Guía Para Principiantes - Apache Spark

Cuando se trata de trabajar con clusters, el entorno óptimo es la nube. Hay varios proveedores de la nube, pero AWS, Azure y Google Cloud Platform (GCP) están a la cabeza.

Aunque el código de PySpark es el mismo para todos los proveedores de la nube, la forma de configurar el entorno y crear clusters cambia entre ellos. Permiten crear clusters utilizando tanto scripts como la interfaz de usuario.

La computación distribuida en clústeres es un mundo completamente diferente. No se parece en nada a hacer análisis en tu ordenador. Tiene una dinámica muy diferente. Evaluar el rendimiento del clúster y elegir el número óptimo de trabajadores para un clúster serán sus preocupaciones predominantes.

Lea También:
* El Data Scientist "Full Stack"
* Todo Lo Que un Científico de Datos Debe Saber Sobre la Gestión de Datos (Pero Tiene Miedo de Preguntar)
Join our private community in Discord

Keep up to date by participating in our global community of data scientists and AI enthusiasts. We discuss the latest developments in data science competitions, new techniques for solving complex challenges, AI and machine learning models, and much more!