Saltear al contenido principal

Millones de datos Aleatorios en SQL Server

Cuando vas a realizar pruebas de tu código TSQL es muy importante verificar que lo que has programado no solo funcione en condiciones mínimas sino también en concurrencia, en tablas crecidas y cualquier condición de estrés. Entonces ¿dónde probar estos escenarios si no tenemos estructuras que nos apoyen? Veremos en este artículo cómo generar millones de datos aleatorios en SQL Server que puedan ayudarte en tus pruebas.

Iniciando el diseño

Para generar valores aleatorios, primero debes identificar qué es lo que necesitas probar. A veces serán cálculos, funciones, índices u otros. Con esta información podrás determinar cómo direccionar el diseño de tus datos. En esta publicación iremos por un camino estándar para que puedas adecuarlo.

¿Necesitas nombres y descripciones?

Puedes ver en nuestro repositorio de Github que tenemos una lista de nombres propios que puedes usar para llenar tablas con datos de prueba. También utilizaremos los textos lorem que seguro los has visto en páginas de prueba. En este sitio puedes crear texto de prueba de acuerdo a la cantidad de palabras o caracteres que necesites. Yo generé 500 caracteres para usarlos en una variable varchar y llenar una tabla con cantidad aleatoria de caracteres.

Números aleatorios

Para generar números aleatorios no basta con usar una función RAND pues podrías repetir el mismo número en todas las filas de tu tabla. Te explico de forma completa el cómo generar números aleatorios en SQL Server en el enlace anterior.

Ahora vamos a crear la tabla

Ahora bien, es evidente que la cantidad de campos, tamaños, tipos de datos, etc dependen de la necesidad de cada uno. Yo crearé una tabla estándar con una llave primaria que claro, puedes adecuarla como mejor te parezca.

Consideraciones finales para los millones de datos aleatorios

La cantidad de datos de tu tabla final estará definida en función al TOP que se ve en la creación de la tabla #TempNames. Si necesitas más registros de los que el CROSS JOIN se proporciona, puedes adicionar un nuevo CROSS JOIN como se ve a continuación.

Con toda la información ya puedes crear índices y hacer más pruebas. No te olvides que es importante que consideres que entre ambientes también puedes tener diferentes resultados, por eso te invito a que leas el artículo Desarrollo vs Producción.

Maneras de realizar más validaciones puede haber muchas, puedes ver también los detalles de Cómo hacer Testing en SQL Server.

El objetivo siempre será darle velocidad a tus programas. No olvides que la meta siempre es la misma y puedes ver más información en la publicación Cómo hacer Consultas más Rapidas.

Pablo Javier Fernández

www.datoptim.com
I love working on SQL Server Performance Tuning and finding the origin of the problems. Music and SQL Server passionate.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Close search

Carrito

Volver arriba