Generar información aleatoria

Mientras desarrollamos una aplicación, muchas veces nos vemos en la necesidad de contar con datos sobres los cuales probar el comportamiento de la misma.

Si no necesitamos de una gran cantidad de datos, podemos inventar algunos de ellos, y cargarlos en la base de datos, para ver como se muestran en la aplicación. Ahora, la creatividad no da para tanto y terminan apareciendo nombres como “dfnhsdbsdlbfsdjk”, nombres de los compañeros de trabajo, apodos, etc. Si necesitamos hacer una demostración de la aplicación ante el cliente, vamos a tener que cuidarnos de llenar la base de datos con información que no nos haga quedar tan mal.

El problema surge cuando necesitamos de una gran cantidad de registros, y los mismos necesitan guardar ciertas formas, formatos y coherencia entre ellos, para lo cual existen algunas aplicaciones que nos ayudarán a realizar esta tarea.

Generalmente estos programas se dividen en dos grupos. Unos son más simples de usar (con interfáz gráfica, generan los tipos más comunes, no requieren de mucho esfuerzo su uso) y otros que son verdaderas herramientas de producción de datos, los cuales se integran con otras programas, generan datos a partir de un esquema (el cual debe ser definido por el usuario en un lenguaje particular), se integran a una o varias bases de datos de diferentes tipos incluso y tienen opciones avanzadas de generación para que los datos guarden más coherencias entre si (relacionando foreing keys por ejemplo).

Casi todos tienen la opción de generar como salida un archivo separado por comas (.csv), un archivo xml, un script SQL para importar a la base de datos, o la conexión a la DB para subir directamente los datos.

Los datos que pueden generar son nombres, apellidos, direcciones, direcciones de correo, fechas, números, textos, direcciones IP, selecciones de un conjunto predefinido, etc. Algunos permiten generar más tipos de datos que otros y configurar más opciones de cada tipo de datos. Por ejemplo de las fechas se pueden definir los rangos de fechas entre los cuales se generarán los datos.

Veamos algunas de las opciones que podemos usar.

dgMaster

Puede generar los siguientes tipos de datos:

  • booleanos
  • fechas
  • numeros
  • cadenas de caracteres
  • SQLDate
  • SQLTimestamp
  • SQLTime
  • textos
  • nombres y/o apellidos
  • direcciones de correo

Por ahora solo puede exportar los datos a archivos delimitados por coma, pero en un futuro se espera agregar soporte para XML y base de datos (pero se encuentra sin actividad desde 2009).

dgMaster

dgMaster generando un archivo de texto

El sitio web de la aplicación es http://dgmaster.sourceforge.net/index.html

Spawner

Este soft puede generar:

  • números enteros o de punto flotante en un rango especificado
  • secuencias de enteros (se puede especificar el inicio y reglas para el incremento del valor)
  • valores elegido de un conjunto (tipos enumerados)
  • líneas seleccionada de un archivo
  • texto (de longitud fija o variable de palabras)
  • cadenas de caracteres (con diferentes opciones de composición)
  • direcciones IPv4
  • nombres de personas (nombres y/o apellidos)
  • direcciones
  • ciudades, estados y países
  • códigos postales (US-UK)
  • números de teléfonos
  • direcciones de correo electrónico
  • fechas y horas (dentro de un rango, en incremento o decremento)

La salida de los datos generados puede ser en los siguientes formatos:

  • texto delimitado
  • script SQL
  • migración directa a la base de datos

El programa es muy fácil de usar y tiene opciones muy completas. Al estar orientado a MySQL no deja cambiar el formato de la fecha, algo que puede resultar útil si lo vamos a usar con otros fines. Corre en Windows y en Linux, pero el binario de Linux no funcionó.

Spawner

Spawner

Sitio web de la aplicación http://sourceforge.net/projects/spawner/

GenerateData

Quizás sea la aplicación que mayor cantidad de tipos diferentes de datos pueda generar (lo que también puede resultar un poco complejo). Además permite aplicar ciertas funciones que transformen esos datos durante su generación.

Lo bueno es que puede generar datos tomando registros al azar de diferentes “archivos semilla” como ser nacionalidades, equipos de futbol, bancos, edificios, entre otros y los que se nos ocurran a nosotros.

Si bien es una aplicación Java, solo corre bajo Windows, una lástima.

generatedata

generatedata

Sitio web de la aplicación http://sourceforge.net/projects/generatedata/

Otros proyectos son más específicos y permiten originar datos orientados a una temática específica.

DataBot

Se trata de una aplicación web, la cual permite generar en forma rápida información más relacionada con personas:

  • id
  • nombres, apellidos
  • teléfonos
  • fechas de nacimiento
  • ciudades, estados
  • códigos postales y direcciones

El sitio web de la aplicación es http://databot.info/

 Fake Name Generator

En esta página se pueden generar datos de identidades falsas. Se destaca la posibilidad de elegir el origen de los nombres (ingleses, alemanes, hispanos, etc.)

En esta página puede generarse una lista de hasta 50.000 registros exportables a diferentes bases de datos.

El sitio web de la aplicación es http://es.fakenamegenerator.com

Lorem Ipsum

Los desarrolladores web seguramente conocerán este texto sin sentido usado para rellenar espacios en las páginas web o para demostracciones tipográficas.

Existen varios generadores de este texto uno on-line llamado Lipsum y otro que funciona como extensión de Firefox llamado Dummy Lipsum.

Mapas

Para los que trabajan con mapas les pueden resultar útiles aplicaciones que generen puntos en el mapa o rutas entre diferentes puntos.

Para esto existe Random Point Generator, una aplicación on-line capaz de generar las latitudes y longitudes de los puntos a una distancia determinada (en millas o kilómetros) de un punto dado.

Por otro lado RouteGen permite generar rutas y exportarlas en diferentes formatos.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s