¿Qué son las pruebas de Big Data y un ejemplo de ello?

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

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

Big data generalmente incluye conjuntos de datos con tamaños más allá de la capacidad de las herramientas de software comúnmente utilizadas para capturar, administrar y procesar datos dentro de un tiempo transcurrido tolerable. Big Data es uno de los términos más utilizados en estos días, ya que la mayoría de las organizaciones se ocupa de una gran cantidad de conjuntos de datos, lo cual es bastante complejo de administrar o manejar. Big data ha aumentado la demanda de especialistas en gestión de información.

Por lo tanto, la prueba de las aplicaciones de Big Data es un proceso muy necesario que se debe seguir, para mantener y administrar las características importantes de Big Data como el volumen, es decir, el tamaño de los datos, la velocidad, es decir, la velocidad de cambio y la variedad de fuentes de datos.

Uno de los mejores métodos que se pueden usar para probar aplicaciones de big data es probar con Automatización. Hay herramientas de prueba limitadas que se utilizan para automatizar las pruebas de big data. Uno de los buenos ejemplos de dicha herramienta es Testing-Whiz. Esta es una herramienta de automatización de pruebas sin código con múltiples funcionalidades como pruebas de servicios web, pruebas de bases de datos, pruebas de Big Data, pruebas de navegador cruzado, etc. con automatización.

Hablando específicamente sobre las pruebas de Big Data , TestingWhiz proporciona una solución de prueba de Big Data automatizada, que le ayuda a verificar conjuntos de datos estructurados y no estructurados, esquemas, enfoques y procesos inherentes que residen en diferentes fuentes en su aplicación. Esto también le ayuda a validar el volumen, la variedad y la velocidad de los datos. Para mayor claridad, puede visitar el sitio web y descargar su versión de prueba gratuita de esta herramienta y experimentar las pruebas automatizadas de las aplicaciones de Big Data.

Pocas herramientas más como Query surge, Tricentis también se utilizan para pruebas de big data.

¿Qué comenzar en BIG DATA en 10 minutos? Mira esto. Aquí está el enlace:

Enfoque para las pruebas de Big Data – Parte 1
Pruebas de Big Data – Parte 2

Estoy trabajando en bigdata durante los últimos 4 años y, según mi experiencia, Bigdata Testing es igual que otras pruebas de software. No hay diferencia entre eso …

Las aplicaciones de bigdata se desarrollarán inicialmente con datos de muestra y luego los desarrolladores realizarán pruebas unitarias.

luego va a las pruebas del sistema … y luego a las pruebas de regresión … y luego a UAT … según las comprobaciones regulares de calidad del software … pero lo único es que estaremos probando con datos grandes o alta velocidad …