Había escrito una respuesta para lo mismo sobre cuáles son los escenarios para Big Data Testing. La siguiente respuesta ha sido recogida del siguiente hilo escrito por mí: – La respuesta de Yuvraj Gupta a ¿Cómo se realizan las pruebas de Big Data?
—————————————————————————————————————
Escenarios de prueba de Big Data
- ¿Qué sigue después de la regresión múltiple para la ciencia de datos?
- Cómo manejar datos incrementales en la tabla de la colmena
- ¿Qué asignaturas optativas de Matemáticas / Estadísticas son las mejores para obtener una buena base para el análisis de datos en Australia?
- ¿Soy comercializable para los empleadores como científico de datos autodidacta?
- Tengo 10 años de experiencia en mainframe. Estoy tratando de aprender Big Data Analytics. ¿Cómo procedo? No entiendo el mundo distribuido.
Echemos un vistazo a los escenarios para los que Big Data Testing se puede utilizar en los componentes de Big Data:
Ingestión de datos: –
Este paso se considera como una etapa previa a Hadoop donde los datos se generan a partir de múltiples fuentes y los flujos de datos en HDFS. En este paso, los probadores verifican que los datos se extraen correctamente y los datos se cargan en HDFS.
- Asegúrese de que se ingieran los datos adecuados de múltiples fuentes de datos, es decir, todos los datos requeridos se ingieran según su esquema definido y no se deben ingerir datos que no coincidan con el esquema. Los datos que no coinciden con el esquema deben almacenarse para fines de informes estadísticos. También asegúrese de que no haya corrupción de datos.
- Comparación de los datos de origen con los datos ingeridos para simplemente validar que se envían los datos correctos.
- Verifique que los archivos de datos correctos se generen y carguen en HDFS correctamente en la ubicación deseada.
Procesamiento de datos :-
Este paso se utiliza para validar trabajos Map-Reduce. Map-Reduce es un concepto utilizado para condensar gran cantidad de datos en datos agregados. Los datos ingeridos se procesan mediante la ejecución de trabajos Map-Reduce que proporcionan los resultados deseados. En este paso, el probador verifica que los datos ingeridos se procesen utilizando trabajos Map-Reduce y valida si la lógica de negocios se implementa correctamente.
- Asegúrese de que Map Reduce Jobs se ejecute correctamente sin excepciones.
- Asegúrese de que los pares clave-valor se generan correctamente después de los trabajos MR.
- Validar las reglas de negocio se implementan en los datos.
- Validar la agregación de datos se implementa en los datos y los datos se consolidan después de las operaciones de reducción.
- Valide que los datos se procesen correctamente luego de publicar trabajos Map-Reduce comparando los archivos de salida con los archivos de entrada.
Nota: – Para la validación en la ingestión de datos o en las capas de procesamiento de datos, debemos usar un pequeño conjunto de datos de muestra (en KB o MB). Al usar una pequeña muestra de datos, podemos verificar fácilmente que se ingieren los datos correctos comparando los datos de origen con los datos de salida en la capa de ingestión. Se hace más fácil verificar que los trabajos de MR se ejecutan sin ningún error, las reglas de negocio se implementan correctamente en los datos ingeridos y la validación de la agregación de datos se realiza correctamente comparando el archivo de salida con el archivo de entrada.
Inicialmente para probar en la ingestión de datos o en las capas de procesamiento de datos si usamos datos grandes (en GB), se hace muy difícil validar o verificar cada registro de entrada con el registro de salida y validar si las reglas de negocio se implementan correctamente se vuelve difícil.
Almacenamiento de datos :-
Este paso se utiliza para almacenar datos de salida en HDFS o cualquier otro sistema de almacenamiento (como Data Warehouse). En este paso, el probador verifica que los datos de salida se generan y cargan correctamente en el sistema de almacenamiento.
- Los datos de validación se agregan después de trabajos de reducción de mapas.
- Verifique que los datos correctos estén cargados en el sistema de almacenamiento y deseche los datos intermedios que estén presentes.
- Verifique que no haya corrupción de datos comparando los datos de salida con los datos de HDFS (o cualquier sistema de almacenamiento).
El otro tipo de escenarios de prueba que puede hacer un Big Data Tester es:
- Compruebe si se implementan mecanismos de alerta adecuados, como el correo en alerta, el envío de métricas en Cloud Watch, etc.
- Las excepciones o errores de verificación se muestran correctamente con el mensaje de excepción apropiado para que sea fácil resolver un error.
- Pruebas de rendimiento para probar los diferentes parámetros para procesar una porción aleatoria de datos grandes y monitorear parámetros tales como el tiempo necesario para completar los trabajos de reducción de mapas, la utilización de la memoria, la utilización del disco y otras métricas, según sea necesario.
- Pruebas de integración para probar el flujo de trabajo completo directamente desde la ingestión de datos hasta el almacenamiento / visualización de datos.
- Prueba de arquitectura para probar que Hadoop está altamente disponible todo el tiempo y los servicios de conmutación por error se implementan correctamente para garantizar que los datos se procesen incluso en caso de falla de los nodos.
Nota: – Para las pruebas, es muy importante generar datos para las pruebas que cubran varios escenarios de prueba (positivo y negativo). Los escenarios de prueba positivos cubren escenarios que están directamente relacionados con la funcionalidad. Los escenarios de prueba negativos cubren escenarios que no tienen relación directa con la funcionalidad deseada.
Lista de pocas herramientas utilizadas en Big Data
Ingestión de datos : Kafka, Zookeeper, Sqoop, Flume, Storm, Amazon Kinesis.
Procesamiento de datos : Hadoop (Map-Reduce), Cascading, Oozie, Hive, Pig.
Almacenamiento de datos : HDFS (Hadoop Distributed File System), Amazon S3, HBase.
Escribí un blog para comprender qué probar en el ecosistema de Big Data o cuáles son los escenarios para cubrir en Big Data Testing.
Enlace del blog: Pruebas de Big Data