Operaciones

Sintetizar

La operación Sintetizar te permite generar nuevas filas sintéticas basadas en tu conjunto de datos o usando funciones propias. Es especialmente útil para crear conjuntos de datos más grandes para pruebas manteniendo características de datos realistas.

En la cuadrícula de operaciones aparece en Operaciones de transformación como Sintetizar ("Rellenar entidades con datos simulados").

La operación usa los campos y etiquetas encontrados por el descubrimiento. Si el modelo aún no se ha descubierto, el panel pide ejecutar primero un descubrimiento.

Resumen

La operación Sintetizar te permite:

  • Generar nuevos registros que mantienen características realistas
  • Crear conjuntos de datos del tamaño que necesites
  • Aplicar distintas técnicas de síntesis a distintos campos
  • Usar datos falsos, funciones, funciones guardadas o código propio
  • Elegir entre añadir los datos sintetizados a los existentes o sustituirlos por completo

Configuración

Sintetización automático

La sección Sintetización automático fija los parámetros para todas las entidades.

Tamaño esperado de los datos de salida

Selecciona el tamaño del nuevo dataset según el tamaño de la entidad origen:

  • Mismo tamaño que la entidad de origen (por defecto): genera exactamente el mismo número de filas para cada entidad.
  • Proporcional: genera otro tamaño usando un multiplicador del tamaño de origen, de 0 a 50 (por ejemplo 0.5 para la mitad de filas, 1.5 para el 150%, 10 para diez veces más). Se puede fijar con la caja numérica o con el deslizador (marcas en 1%, 10%, 50%, 100%, 10x y 50x). También puedes marcar Filas mínimas: y Filas máximas: para mantener cada entidad entre un mínimo y un máximo de filas.

Comportamiento

Determina qué hacer con los datos sintetizados al escribirlos:

  • Añadir a la fuente de datos (por defecto): mantiene las filas existentes y añade al final de cada entidad las filas sintetizadas.
  • Sustituir los datos de origen: elimina las filas existentes e inserta únicamente las filas sintetizadas.

Si usas Añadir a la fuente de datos, las filas originales no se anonimizan, por lo que tu conjunto de datos podría contener información sensible.

Por entidad

La sección Por entidad lista las entidades, con una caja de búsqueda y orden por Nombre. Para cada entidad ves los Registros actuales y los Datos de salida esperados, y:

  • Procesar esta entidad: un interruptor para incluir u omitir la entidad.
  • Personalizar: abre los campos de la entidad para elegir cómo se sintetiza cada uno.

Síntesis a nivel de campo

Cada campo muestra su Campo, Tipo, Etiqueta, si Es PII, si Permite valores nulos o si es Clave primaria, y la Acción con la que se genera:

AcciónQué genera
Utilizar datos falsosDatos falsos realistas para la etiqueta elegida (nombres, emails, direcciones, ...). La etiqueta mixed combina varias etiquetas por porcentaje
Funciones / Heredar(Solo claves foráneas) Una clave al azar de las filas generadas para la entidad padre
Funciones / ListaValores al azar de una lista de datos
Funciones / NúmeroNúmeros secuenciales o aleatorios
Funciones guardadasUna función creada en las funciones del proyecto
Función personalizadaTu propio código JavaScript. Consulta cómo crear una función personalizada
Establecer como nullNULL en todas las filas
No sintetizarNo se genera valor: el campo queda vacío

Las columnas que no admiten NULL reciben un valor por defecto en lugar de quedar vacías: 0 en números, false en booleanos, la fecha actual en fechas y un texto vacío en el resto.

Los campos de tipo enum ofrecen Lista del enum (valores al azar del enum), Establecer como null y No sintetizar.

El lápiz (Editar opciones) abre el panel Editar la función con la Información de campo (Nombre, Tipo, Etiqueta), la Configuración de la acción y los botones Cancelar / Guardar. En las funciones personalizadas el icono de código (Editar el código) abre el editor de código.

Opciones de datos falsos

Con Utilizar datos falsos el panel muestra primero las opciones de la etiqueta, con el nombre de la opción como título del campo (por ejemplo locale). Para la etiqueta person/name la opción type elige qué parte del nombre se genera:

typeGeneraEjemplo
nombre (first)Solo el nombreLaura
apellido (last)Solo el apellidoMartín
completo (nombre, apellido) (full)Nombre y después apellidoLaura Martín
completo (apellido, nombre) (last_first)Apellido y después nombre, separados por un espacioMartín Laura

type empieza con el tipo que el descubrimiento detectó para el campo. Usa completo (apellido, nombre) en columnas que guardan nombres como Pérez Juan.

Después vienen las opciones de texto comunes:

  • Formato del texto: Ninguno, MAYÚSCULAS, minúsculas, Title Case, Snake_case (espacios a guiones bajos) o Kebab-case (espacios a guiones).
  • Prefijo / Sufijo: marca la casilla y escribe un texto para añadirlo antes o después de cada valor generado.

Con la etiqueta mixed añades varias etiquetas, cada una con un porcentaje (Porcentaje de entrada). El lápiz junto a cada etiqueta (Editar Etiqueta) abre las mismas opciones para esa etiqueta, incluida type para person/name.

Opciones de número

  • Tipo: Secuencial (por defecto) o Números aleatorios.
  • Empezar desde: primer valor de la secuencia (por defecto 0).
  • Límites: para números aleatorios, marca las casillas para fijar un valor mínimo y uno máximo.

Garantizar integridad referencial

La casilla Garantizar integridad referencial al final mantiene los datos sintetizados coherentes con las claves foráneas:

  • Cuando solo se sintetizan algunas entidades, sus entidades padre se añaden automáticamente.
  • Las entidades se procesan primero los padres, para que las filas hijas puedan referenciar las filas padre generadas.

Es la misma opción que en Donde, Límite y Leer consulta: si está marcada en cualquiera de estas operaciones, se activa para toda la regla. Solo se aplica en taps SQL: en otros taps la opción no tiene efecto.

Ejemplos

Síntesis básica con Sintetización automático

Para generar un dataset un 150% del tamaño de los datos de origen:

  1. Añade la operación Sintetizar a tu regla
  2. Selecciona Proporcional como tamaño esperado
  3. Fija el multiplicador en 1.5
  4. Elige Sustituir los datos de origen
  5. Deja activado Procesar esta entidad en las entidades a generar

Personalización a nivel de campo

Para personalizar la síntesis de algunos campos de una entidad de clientes:

  1. Haz clic en Personalizar en la entidad de clientes
  2. Para el campo "name", elige Utilizar datos falsos con la etiqueta person/name y pon type en completo (nombre, apellido)
  3. Para el campo "email", elige Utilizar datos falsos con una etiqueta de email
  4. Para el campo "id", elige Funciones / Número con Secuencial para generar IDs únicos
  5. Para el campo "age", elige Funciones / Número con Números aleatorios y límites 18 y 80
  6. Para el campo "phone", elige Función personalizada para mantener el formato

Funciones personalizadas

Para aplicar un algoritmo de síntesis propio:

  1. Selecciona un campo y elige Función personalizada
  2. Escribe código JavaScript que genere valores sintéticos adecuados
  3. Usa ayudas integradas como chance(), faker o genLike() para generar datos realistas

Ejemplo:

// Genera códigos postales realistas con la función genLike
return genLike('A1A 1A1') // Crea valores como 'K9P 7N3' o 'M2J 4V8'

Esta operación ofrece una potente generación de datos que te ayuda a crear datasets de prueba realistas, cumpliendo con la privacidad cuando se combina con operaciones de anonimización.