{"id":77180,"date":"2020-04-08T13:42:32","date_gmt":"2020-04-08T11:42:32","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya"},"modified":"2020-04-08T13:42:32","modified_gmt":"2020-04-08T11:42:32","slug":"testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","title":{"rendered":"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Hola a todos, me llamo Alexander y soy ingeniero de Calidad de Datos, encargado de verificar la calidad de los datos. En este art\u00edculo hablar\u00e9 sobre c\u00f3mo llegu\u00e9 aqu\u00ed y por qu\u00e9, en 2020, esta \u00e1rea de pruebas estuvo en la cresta de la ola. <\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/0691d5a78bcbc8f4f102eafbbef20c0a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Tendencia mundial <\/h2>\n<p>\nEl mundo de hoy est\u00e1 experimentando otra revoluci\u00f3n tecnol\u00f3gica, uno de cuyos aspectos es el uso de datos acumulados por diversas empresas para impulsar su ciclo de ventas, ganancias y relaciones p\u00fablicas. Se considera que la disponibilidad de buenos (calidad) datos, as\u00ed como de mentes expertas capaces de convertirlos en dinero (procesamiento correcto, visualizaci\u00f3n, creaci\u00f3n de modelos de aprendizaje autom\u00e1tico, etc.), se ha convertido en la clave del \u00e9xito para muchos. Si hace 15-20 a\u00f1os el trabajo intensivo con datos y su monetizaci\u00f3n era el dominio de las grandes empresas, hoy en d\u00eda es una preocupaci\u00f3n de casi todas las que piensan con claridad. <\/p>\n<p>Debido a esto, hace varios a\u00f1os todos los portales dedicados a la b\u00fasqueda de empleo en todo el mundo empezaron a verse inundados de ofertas para Cient\u00edficos de Datos, ya que todos estaban convencidos de que al contratar a un especialista de este tipo podr\u00edan construir un supermodelo de aprendizaje autom\u00e1tico, predecir el futuro y dar un \"salto cu\u00e1ntico\" a la empresa. Con el tiempo, las personas se dieron cuenta de que este enfoque casi no funcionaba en ning\u00fan lugar, ya que no todos los datos que caen en manos de este tipo de especialistas son adecuados para entrenar modelos. <\/p>\n<p>Y comenzaron las solicitudes de los Data Scientists: \"Vamos a comprar m\u00e1s datos de estos y aquellos...\", \"Nos faltan datos...\", \"Necesitamos un poco m\u00e1s de datos y, preferiblemente, de calidad...\". Bas\u00e1ndose en estas solicitudes, se comenzaron a establecer numerosas interacciones entre las empresas que poseen ciertos conjuntos de datos. Naturalmente, esto requiri\u00f3 una organizaci\u00f3n t\u00e9cnica de este proceso: conectarse a la fuente de datos, extraerlos, verificar que se hayan cargado en su totalidad, etc. La cantidad de tales procesos ha comenzado a crecer, y hoy en d\u00eda hemos llegado a una enorme necesidad de otro tipo de especialistas: ingenieros de Data Quality, aquellos que supervisar\u00edan el flujo de datos en el sistema (data pipelines), la calidad de los datos en la entrada y la salida, y har\u00edan conclusiones sobre su suficiencia, integridad y otras caracter\u00edsticas. <\/p>\n<p>La tendencia hacia los ingenieros de Calidad de Datos nos lleg\u00f3 de Estados Unidos, donde en medio de la era capitalista en plena ebullici\u00f3n, nadie est\u00e1 dispuesto a perder la batalla por los datos. A continuaci\u00f3n, presento capturas de pantalla de dos de los sitios de b\u00fasqueda de trabajo m\u00e1s populares en Estados Unidos: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.monster.com\">www.monster.com<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/www.dice.com\">www.dice.com<\/a><\/noindex> \u2014 en las que se muestran los datos correspondientes al 17 de marzo de 2020 sobre la cantidad de ofertas de trabajo publicadas, obtenidas por palabras clave: Calidad de Datos y Cient\u00edfico de Datos. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.monster.com\">www.monster.com<\/a><\/noindex><\/p>\n<p>Cient\u00edficos de Datos \u2013 21416 vacantes<br \/>\nCalidad de Datos \u2013 41104 vacantes<\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/8578f2d1e600791e166ed6e8a7068015.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/3ff69acc3c7e0d649eae0808b1b535be.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.dice.com\">www.dice.com<\/a><\/noindex> <\/p>\n<p>Cient\u00edficos de Datos \u2013 404 vacantes<br \/>\nCalidad de Datos \u2013 2020 vacantes<\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/b35a9b423ba4bef8736659580e3c281e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/2c29b83bbe2361089de5a0ab65017300.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\nEs evidente que estas profesiones de ninguna manera compiten entre s\u00ed. Con las capturas de pantalla quer\u00eda simplemente ilustrar la situaci\u00f3n actual en el mercado laboral en cuanto a la demanda de ingenieros de Calidad de Datos, que actualmente son considerablemente m\u00e1s requeridos que los Cient\u00edficos de Datos. <\/p>\n<p>En junio de 2019, EPAM, respondiendo a las necesidades del moderno mercado de TI, separ\u00f3 el campo de Calidad de Datos en una pr\u00e1ctica independiente. Los ingenieros de Calidad de Datos, en el curso de su trabajo diario, gestionan los datos, verifican su comportamiento en nuevas condiciones y sistemas, y controlan la relevancia de los datos, su suficiencia y actualidad. A pesar de todo esto, en un sentido pr\u00e1ctico, los ingenieros de Calidad de Datos realmente dedican poco tiempo a las pruebas funcionales cl\u00e1sicas, <u>PERO<\/u> esto depende mucho del proyecto (dar\u00e9 un ejemplo m\u00e1s adelante). <\/p>\n<p>Las responsabilidades de un ingeniero de Calidad de Datos no se limitan \u00fanicamente a revisiones manuales\/autom\u00e1ticas rutinarias sobre \"nulls, conteos y sumas\" en las tablas de la base de datos, sino que requieren una comprensi\u00f3n profunda de las necesidades comerciales del cliente y, en consecuencia, la capacidad de transformar los datos disponibles en informaci\u00f3n \u00fatil para el negocio. <\/p>\n<h2>Teor\u00eda de la Calidad de Datos<\/h2>\n<p>\n<img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/d920a7a0435d6f3a1eb84fc16221c742.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Para comprender completamente el papel de dicho ingeniero, analicemos qu\u00e9 es la Calidad de Datos en teor\u00eda. <\/p>\n<p><b>Calidad de Datos<\/b> es uno de los pasos de la Gesti\u00f3n de Datos (un mundo entero que dejaremos para que lo explore usted mismo) y se encarga del an\u00e1lisis de los datos seg\u00fan los siguientes criterios: <\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/8f5e75bad69e3cb589cc0e1104ad946f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nCreo que no es necesario desglosar cada uno de los puntos (en teor\u00eda se llaman \"dimensiones de datos\"), ya que est\u00e1n bien descritos en la imagen. Sin embargo, el proceso de prueba no implica copiar estrictamente estas caracter\u00edsticas en los casos de prueba y verificarlas. En Calidad de Datos, como en cualquier otro tipo de prueba, es fundamental basarse primero en los requisitos de calidad de datos acordados con los participantes del proyecto que toman decisiones comerciales. <\/p>\n<p><\/p>\n<blockquote><p>Dependiendo del proyecto, un ingeniero de Calidad de Datos puede desempe\u00f1ar diferentes funciones: desde un simple probador automatizador con una evaluaci\u00f3n superficial de la calidad de los datos, hasta una persona que realiza un perfilado profundo bas\u00e1ndose en las caracter\u00edsticas mencionadas anteriormente. <\/p><\/blockquote>\n<p>Una descripci\u00f3n muy detallada de los procesos de Gesti\u00f3n de Datos, Calidad de Datos y relacionados est\u00e1 excelentemente descrita en el libro titulado <i>\"DAMA-DMBOK: Cuerpo de Conocimientos sobre Gesti\u00f3n de Datos: 2\u00aa Edici\u00f3n\"<\/i>. Recomiendo mucho este libro como introducci\u00f3n al tema (encontrar\u00e1 el enlace al final del art\u00edculo).<\/p>\n<h2>Mi historia<\/h2>\n<p>\nEn la industria de TI, he recorrido el camino desde probador Junior en empresas de productos hasta Ingeniero Principal de Calidad de Datos en la empresa EPAM. Despu\u00e9s de aproximadamente dos a\u00f1os trabajando como probador, ten\u00eda la firme convicci\u00f3n de que hab\u00eda realizado absolutamente todos los tipos de pruebas: regresi\u00f3n, funcional, de estr\u00e9s, de estabilidad, de seguridad, de UI, etc. \u2014 y hab\u00eda probado una gran cantidad de herramientas de prueba, trabajando en tres lenguajes de programaci\u00f3n: Java, Scala, Python. <\/p>\n<p><\/p>\n<blockquote><p>Al mirar hacia atr\u00e1s, entiendo por qu\u00e9 mi conjunto de habilidades profesionales es tan diverso: he participado en proyectos relacionados con el manejo de datos, grandes y peque\u00f1os. Esto me llev\u00f3 a un mundo lleno de herramientas y oportunidades de crecimiento.<\/p><\/blockquote>\n<p>Para apreciar la variedad de herramientas y oportunidades de adquirir nuevos conocimientos y habilidades, basta con echar un vistazo a la imagen a continuaci\u00f3n, que muestra las m\u00e1s populares en el mundo de \"Data &amp; AI\".<\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/e3278694195bf59b44055e1eaafd62b1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nEste tipo de ilustraciones es producido anualmente por uno de los conocidos capitalistas de riesgo, Matt Turck, proveniente del desarrollo de software. Aqu\u00ed est\u00e1 <noindex><a rel=\"nofollow\" href=\"https:\/\/mattturck.com\">enlace<\/a><\/noindex> a su blog y <noindex><a rel=\"nofollow\" href=\"https:\/\/firstmarkcap.com\/team\/matt-turck\">la firma de capital riesgo<\/a><\/noindex>, donde trabaja como socio. <\/p>\n<p>Crec\u00ed profesionalmente especialmente r\u00e1pido cuando era el \u00fanico tester en el proyecto, o al menos al comienzo del mismo. En ese momento, tienes que ser responsable de todo el proceso de pruebas, sin posibilidad de retroceder, solo avanzar. Al principio, esto asustaba, pero ahora veo claramente todas las ventajas de esta experiencia: <\/p>\n<ul>\n<li>Comienzas a comunicarte con todo el equipo como nunca antes, ya que no hay ning\u00fan intermediario: ni un gerente de pruebas, ni compa\u00f1eros testers. <\/li>\n<li>La inmersi\u00f3n en el proyecto se vuelve incre\u00edblemente profunda y tienes informaci\u00f3n sobre todos los componentes tanto en general como en detalle. <\/li>\n<li>Los desarrolladores no te ven como \"el chico de pruebas que no est\u00e1 claro en qu\u00e9 est\u00e1 trabajando\", sino m\u00e1s bien como un igual que aporta un valor incre\u00edble al equipo con tus pruebas automatizadas y la capacidad de anticipar la aparici\u00f3n de errores en partes espec\u00edficas del producto. <\/li>\n<li>Como resultado, eres m\u00e1s eficiente, m\u00e1s cualificado y m\u00e1s demandado. <\/li>\n<\/ul>\n<p>\nA medida que el proyecto crec\u00eda, en el 100% de los casos me convert\u00eda en mentor para los nuevos testers que se un\u00edan, les ense\u00f1aba y les transmit\u00eda los conocimientos que hab\u00eda adquirido. Sin embargo, dependiendo del proyecto, no siempre recib\u00eda del liderazgo a especialistas en automatizaci\u00f3n de pruebas de alt\u00edsimo nivel, lo que requer\u00eda ya sea entrenarlos en automatizaci\u00f3n (para quienes lo deseaban) o crear herramientas para su uso en actividades cotidianas (herramientas para la generaci\u00f3n de datos y su carga en el sistema, herramienta para realizar pruebas de carga\/pruebas de estabilidad \"de manera r\u00e1pida\", etc.). <\/p>\n<h3>Ejemplo de un proyecto espec\u00edfico<\/h3>\n<p>\nDesafortunadamente, debido a compromisos de confidencialidad, no puedo hablar detalladamente sobre los proyectos en los que he trabajado, pero presentar\u00e9 ejemplos de tareas t\u00edpicas de un Data Quality Engineer en uno de los proyectos. <\/p>\n<p>La esencia del proyecto era implementar una plataforma para preparar datos para entrenar modelos de aprendizaje autom\u00e1tico. El cliente era una gran compa\u00f1\u00eda farmac\u00e9utica de EE. UU. T\u00e9cnicamente, era un cl\u00faster <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\">Kubernetes<\/a><\/noindex>, desplegado en <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/ru\/ec2\">AWS EC2<\/a><\/noindex> instancias, con varios microservicios y con un proyecto Open Source de la empresa EPAM como base \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/legion-platform\/legion\">Legion<\/a><\/noindex>, adaptado a las necesidades del cliente espec\u00edfico (actualmente el proyecto ha renacido como <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/odahu\/odahu-flow\">odahu<\/a><\/noindex>). Los procesos ETL fueron organizados mediante <noindex><a rel=\"nofollow\" href=\"https:\/\/airflow.apache.org\">Apache Airflow<\/a><\/noindex> y mov\u00edan datos desde <noindex><a rel=\"nofollow\" href=\"https:\/\/www.salesforce.com\">SalesForce<\/a><\/noindex> del sistema del cliente a <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/ru\/s3\/?nc1=h_ls\">AWS S3<\/a><\/noindex> Buckets. Luego, se desplegaba en la plataforma una imagen de Docker del modelo de aprendizaje autom\u00e1tico, que se entrenaba con datos recientes y, a trav\u00e9s de una interfaz REST API, proporcionaba predicciones relevantes para el negocio y que resolv\u00edan tareas espec\u00edficas. <\/p>\n<p><b>Visualmente, todo se ve\u00eda aproximadamente as\u00ed: <\/b><\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/c2de3c1919f3f9ff29147fce09eb14c4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nHab\u00eda suficientes pruebas funcionales en este proyecto, y dada la velocidad de desarrollo de caracter\u00edsticas y la necesidad de mantener el ritmo del ciclo de lanzamientos (sprints de dos semanas), era necesario comenzar a pensar de inmediato en la automatizaci\u00f3n de las pruebas de los nodos m\u00e1s cr\u00edticos del sistema. La mayor parte de la propia plataforma con base en Kubernetes estaba cubierta por pruebas automatizadas, implementadas en <noindex><a rel=\"nofollow\" href=\"https:\/\/robotframework.org\/\">Robot Framework<\/a><\/noindex> + Python, pero tambi\u00e9n era necesario mantener y expandirlos. Adem\u00e1s, para la comodidad del cliente, se cre\u00f3 una interfaz gr\u00e1fica para gestionar los modelos de aprendizaje autom\u00e1tico desplegados en el cl\u00faster, as\u00ed como la posibilidad de especificar de d\u00f3nde y a d\u00f3nde era necesario trasladar los datos para el entrenamiento de los modelos. Esta amplia adici\u00f3n llev\u00f3 a la expansi\u00f3n de las verificaciones funcionales automatizadas, que en su mayor\u00eda se realizaban a trav\u00e9s de llamadas a la API REST y un peque\u00f1o n\u00famero de pruebas UI end-to-end. Aproximadamente a mitad de todo este proceso, se uni\u00f3 a nosotros un tester manual, quien realiz\u00f3 muy bien las pruebas de aceptaci\u00f3n de las versiones del producto y se comunic\u00f3 con el cliente sobre la aceptaci\u00f3n de la pr\u00f3xima versi\u00f3n. Adem\u00e1s, gracias a la llegada de este nuevo especialista, pudimos documentar nuestro trabajo y a\u00f1adir algunas verificaciones manuales muy importantes, que eran dif\u00edciles de automatizar de inmediato. <\/p>\n<p>Y finalmente, despu\u00e9s de lograr estabilidad en la plataforma y la interfaz gr\u00e1fica sobre ella, comenzamos a construir pipelines ETL utilizando DAGs de Apache Airflow. La verificaci\u00f3n autom\u00e1tica de la calidad de los datos se llevaba a cabo mediante la creaci\u00f3n de DAGs de Airflow especializados que verificaban los datos seg\u00fan los resultados del proceso ETL. En el marco de este proyecto tuvimos suerte, y el cliente nos proporcion\u00f3 acceso a conjuntos de datos despersonalizados, sobre los cuales hicimos nuestras pruebas. Verificamos los datos l\u00ednea por l\u00ednea para cumplir con los tipos, la presencia de datos corruptos, el recuento total de registros antes y despu\u00e9s, la comparaci\u00f3n de las transformaciones realizadas por el proceso ETL en agregaciones, cambios en los nombres de columnas y m\u00e1s. Adem\u00e1s, estas verificaciones se escalaron a diferentes fuentes de datos, como adem\u00e1s de SalesForce tambi\u00e9n a MySQL. <\/p>\n<p>Las comprobaciones de la calidad final de los datos se realizaban ya a nivel de S3, donde se almacenaban y estaban en estado listo para usar para el entrenamiento de los modelos de aprendizaje autom\u00e1tico. Para obtener datos del archivo CSV final, que se encontraba en el Bucket S3 y su validaci\u00f3n, se escribi\u00f3 c\u00f3digo utilizando <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/ru\/sdk-for-python\">el cliente boto3<\/a><\/noindex>. <\/p>\n<p>Adem\u00e1s, por parte del cliente hab\u00eda un requerimiento de almacenar parte de los datos en un Bucket S3, y parte en otro. Para esto tambi\u00e9n fue necesario escribir verificaciones adicionales que controlaran la validez de tal clasificaci\u00f3n. <\/p>\n<h3>Experiencia general en otros proyectos<\/h3>\n<p>\nEjemplo de la lista m\u00e1s general de actividades de un ingeniero de Calidad de Datos: <\/p>\n<ul>\n<li>Preparar datos de prueba (v\u00e1lidos, no v\u00e1lidos, grandes y peque\u00f1os) a trav\u00e9s de una herramienta automatizada. <\/li>\n<li>Cargar el conjunto de datos preparado en la fuente original y verificar su disponibilidad para su uso. <\/li>\n<li>Ejecutar procesos ETL para el procesamiento del conjunto de datos desde el almacenamiento original al final o intermedio utilizando un conjunto definido de configuraciones (en caso de que sea posible establecer par\u00e1metros configurables para la tarea ETL). <\/li>\n<li>Verificar los datos procesados por el proceso ETL en cuanto a su calidad y cumplimiento de los requisitos comerciales. <\/li>\n<\/ul>\n<p>\nEn este caso, el enfoque principal de las verificaciones debe recaer no solo en que el flujo de datos en el sistema haya funcionado correctamente y haya llegado al final (lo cual es parte de las pruebas funcionales), sino en su mayor parte en la verificaci\u00f3n y validaci\u00f3n de los datos en cuanto a su cumplimiento con los requisitos esperados, identificaci\u00f3n de anomal\u00edas, entre otros. <\/p>\n<h3>Herramientas<\/h3>\n<p>\nUna de las t\u00e9cnicas para este control de datos puede ser la organizaci\u00f3n de controles en cadena en cada etapa del procesamiento de datos, conocido en la literatura como \"cadena de datos\" \u2014 control de datos desde la fuente hasta el punto de uso final. Este tipo de controles se implementan m\u00e1s com\u00fanmente mediante consultas SQL de verificaci\u00f3n. Es evidente que tales consultas deben ser lo m\u00e1s ligeras posible y que verifiquen secciones espec\u00edficas de la calidad de los datos (metadatos de tablas, l\u00edneas en blanco, NULLs, errores de sintaxis \u2014 otros atributos de verificaci\u00f3n requeridos). <\/p>\n<p>En caso de pruebas de regresi\u00f3n, en las que se utilizan conjuntos de datos ya preparados (inmutables o ligeramente modificados), en el c\u00f3digo de las pruebas automatizadas pueden almacenarse plantillas de verificaci\u00f3n de datos ya listas para probar su calidad (descripciones de los metadatos de las tablas; objetos de selecci\u00f3n aleatoria que pueden elegirse durante la prueba, entre otros). <\/p>\n<p>Tambi\u00e9n durante la prueba es necesario escribir procesos ETL de prueba, utilizando marcos como Apache Airflow, <noindex><a rel=\"nofollow\" href=\"https:\/\/spark.apache.org\/\">Apache Spark<\/a><\/noindex> o herramientas tipo black-box en la nube como <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/dataprep\">GCP Dataprep<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/dataflow\">GCP Dataflow<\/a><\/noindex> y otros. Esta circunstancia lleva al ingeniero de pruebas a profundizar en los principios de funcionamiento de las herramientas mencionadas y a realizar m\u00e1s eficazmente tanto las pruebas funcionales (por ejemplo, de los procesos ETL existentes en el proyecto) como a utilizarlas para la verificaci\u00f3n de datos. En particular, para Apache Airflow ya existen operadores listos para trabajar con bases de datos anal\u00edticas populares, por ejemplo <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/bigquery\">GCP BigQuery<\/a><\/noindex>. El ejemplo m\u00e1s b\u00e1sico de su uso ya ha sido expuesto <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@yuu.ishikawa\/apache-airflow-as-a-data-quality-checker-416ca7f5a3ad\">aqu\u00ed<\/a><\/noindex>, por lo que no me repetir\u00e9. <\/p>\n<p>Adem\u00e1s de las soluciones listas, nadie le proh\u00edbe implementar sus propias t\u00e9cnicas y herramientas. Esto no solo ser\u00e1 beneficioso para el proyecto, sino tambi\u00e9n para el propio ingeniero de calidad de datos, quien de este modo ampliar\u00e1 su horizonte t\u00e9cnico y habilidades de programaci\u00f3n. <\/p>\n<h3>C\u00f3mo funciona en un proyecto real<\/h3>\n<p>\nUna buena ilustraci\u00f3n de los \u00faltimos p\u00e1rrafos sobre 'cadena de datos', ETL y verificaciones omnipresentes es el siguiente proceso de uno de los proyectos reales: <\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/4a4cd3043b584bb3fbce4b9c3021e9f6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAqu\u00ed, en la 'embudo' de entrada de nuestro sistema, llegan diferentes datos (preparados por nosotros, naturalmente): v\u00e1lidos, no v\u00e1lidos, mezclados, etc., luego se filtran y llegan a un almacenamiento intermedio, despu\u00e9s de lo cual los datos esperan una serie de transformaciones y se colocan en un almacenamiento final, desde donde se realizar\u00e1 el an\u00e1lisis, la construcci\u00f3n de vitrinas de datos y la b\u00fasqueda de insights comerciales. En tal sistema, sin verificar funcionalmente el trabajo de los procesos ETL, nos enfocamos en la calidad de los datos antes y despu\u00e9s de las transformaciones, as\u00ed como en la salida hacia el an\u00e1lisis. <\/p>\n<p>Resumiendo lo anterior, independientemente de los lugares donde he trabajado, siempre estuve involucrado en proyectos de datos que compart\u00edan las siguientes caracter\u00edsticas: <\/p>\n<ul>\n<li>Solo a trav\u00e9s de la automatizaci\u00f3n se pueden verificar algunos casos y alcanzar un ciclo de lanzamiento aceptable para el negocio. <\/li>\n<li>El evaluador en tal proyecto es uno de los miembros m\u00e1s respetados del equipo, ya que aporta un gran beneficio a cada uno de los participantes (aceleraci\u00f3n de las pruebas, buenos datos para el Data Scientist, detecci\u00f3n de defectos en las primeras etapas). <\/li>\n<li>No importa si trabajas en tu propio hardware o en la nube: todos los recursos est\u00e1n abstra\u00eddos en cl\u00fasteres como Hortonworks, Cloudera, Mesos, Kubernetes, etc. <\/li>\n<li>Los proyectos se construyen sobre un enfoque de microservicios, predominan los c\u00e1lculos distribuidos y paralelos. <\/li>\n<\/ul>\n<p>\nCabe destacar que, al realizar pruebas en el \u00e1mbito de la Calidad de Datos, el especialista en pruebas centra su enfoque profesional en el c\u00f3digo del producto y las herramientas utilizadas. <\/p>\n<h3>Caracter\u00edsticas distintivas de las pruebas de Calidad de Datos<\/h3>\n<p>\nAdem\u00e1s, para m\u00ed, he destacado las siguientes caracter\u00edsticas (de antemano aclaro que son MUY generales y exclusivamente subjetivas) de las pruebas en proyectos (sistemas) de Datos (Big Data) y otros \u00e1mbitos: <\/p>\n<p><img decoding=\"async\" alt=\"Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia\" src=\"\/wp-content\/uploads\/2020\/04\/8df52fbae2998e70755bf84e254db83e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h2>Enlaces \u00fatiles<\/h2>\n<p><\/p>\n<ol>\n<li>Teor\u00eda: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.amazon.com\/DAMA-DMBOK-Data-Management-Body-Knowledge\/dp\/1634622340\">DAMA-DMBOK: Cuerpo de Conocimientos sobre la Gesti\u00f3n de Datos: 2\u00aa Edici\u00f3n<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/training.ru\/#!\/Home?lang=ru\">Centro de formaci\u00f3n<\/a><\/noindex>&nbsp;EPAM&nbsp;<\/li>\n<li>Materiales recomendados para un ingeniero de Data Quality principiantes:\n<ol>\n<li>Curso gratuito en Stepik:&nbsp;<noindex><a rel=\"nofollow\" href=\"https:\/\/stepik.org\/course\/551\/syllabus\">Introducci\u00f3n a las bases de datos<\/a><\/noindex>.&nbsp;<\/li>\n<li>Curso en LinkedIn Learning:&nbsp;<noindex><a rel=\"nofollow\" href=\"https:\/\/www.linkedin.com\/learning\/data-science-foundations-data-engineering\/welcome\">Fundamentos de Data Science: Ingenier\u00eda de Datos<\/a><\/noindex>.<\/li>\n<li>Art\u00edculos:\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.stickyminds.com\/article\/business-intelligence-and-data-quality\">Inteligencia Empresarial y Calidad de Datos<\/a><\/noindex>;&nbsp;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.datagaps.com\/concepts\/etl-testing\">Pruebas ETL<\/a><\/noindex>;&nbsp;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/panoply.io\/analytics-stack-guide\/data-profiling-best-practices\">\u00bfQu\u00e9 es el perfilado de datos? Proceso, mejores pr\u00e1cticas y herramientas<\/a><\/noindex>;&nbsp;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.guru99.com\/software-testing-test-data.html\">Generaci\u00f3n de datos de prueba: qu\u00e9 es, c\u00f3mo hacerlo, ejemplos, herramientas;&nbsp;<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.testbytes.net\/blog\/5-test-data-generation-techniques-to-know\">5 t\u00e9cnicas de generaci\u00f3n de datos de prueba que necesitas conocer.<\/a><\/noindex>&nbsp;<\/li>\n<\/ul>\n<\/li>\n<li>Video:\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=HWaBdqmTqEA\">Conceptos de Calidad de Datos | Tutorial de Calidad de Datos | Tutorial de Almacenamiento de Datos<\/a><\/noindex>;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=avDqzhuHFkw\">Perfilado de Datos utilizando SSIS<\/a><\/noindex>;<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=r7SF5WldITk\">Perfilado de Datos y Procesamiento de Pipeline con Spark.<\/a><\/noindex><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p><\/p>\n<h2>Conclusi\u00f3n<\/h2>\n<p>\n<b>Calidad de Datos<\/b> \u2014 es un campo muy joven y prometedor, ser parte de \u00e9l significa ser parte de una especie de startup. Al ingresar en la Calidad de Datos, se sumergir\u00e1 en una gran cantidad de tecnolog\u00edas modernas y demandadas, pero lo m\u00e1s importante es que se abrir\u00e1n enormes oportunidades para generar y realizar sus ideas. Podr\u00e1 aplicar el enfoque de mejora continua no solo en el proyecto, sino tambi\u00e9n para usted mismo, desarroll\u00e1ndose continuamente como especialista.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/epam_systems\/blog\/495478\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0451\u0442 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0448\u0451\u043b \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0432 2020 \u0433\u043e\u0434\u0443 \u044d\u0442\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u0433\u0440\u0435\u0431\u043d\u0435 \u0432\u043e\u043b\u043d\u044b. \u041c\u0438\u0440\u043e\u0432\u043e\u0439 \u0442\u0440\u0435\u043d\u0434 \u0421\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u043c\u0438\u0440 \u043f\u0435\u0440\u0435\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u0443\u044e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0440\u0435\u0432\u043e\u043b\u044e\u0446\u0438\u044e, \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":77181,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-77180","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u0442\u0440\u0435\u043d\u0434\u044b, \u0442\u0435\u043e\u0440\u0438\u044f, \u043c\u043e\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-04-08T11:42:32+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-08T11:42:32+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Probador de grandes y peque\u00f1os datos: tendencias, teor\u00eda, mi historia | ProHoster","description":"Hola a todos, mi nombre es Alexander y soy un ingeniero de Calidad de Datos que se encarga de verificar los datos en cuanto a su calidad.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u0442\u0440\u0435\u043d\u0434\u044b, \u0442\u0435\u043e\u0440\u0438\u044f, \u043c\u043e\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u043c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440, \u0438 \u044f Data Quality \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u0438\u0445 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430.","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/testirovshhik-bolshih-i-malenkih-dannyh-trendy-teoriya-moya-istoriya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-04-08T11:42:32+00:00","article:modified_time":"2020-04-08T11:42:32+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"77180","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 17:22:32","updated":"2022-10-03 00:36:00","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/77180","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=77180"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/77180\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/77181"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=77180"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=77180"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=77180"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}