Todos los productos
Search
Centro de documentos

Realtime Compute for Apache Flink:Datagen

Última actualización: Sep 03, 2026

El conector Datagen se usa para depuración. Genera datos de prueba aleatorios para tablas de origen, lo que permite validar la lógica de negocio durante el desarrollo y las pruebas sin conectarse a una fuente de datos externa. Este conector produce periódicamente valores aleatorios que coinciden con el esquema de su tabla.

Este conector también admite la sintaxis de columnas calculadas para generar datos de forma flexible.

Capacidades del conector

Elemento

Descripción

Tipo de tabla

Tabla de origen

Modo de ejecución

Modo por lotes y modo streaming

Formato de datos

N/A

Métrica

N/A

Tipo de API

SQL API

Actualización o eliminación de datos en una tabla sink

N/A

Límites

Solo Realtime Compute for Apache Flink con Ververica Runtime (VVR) 2.0.0 o posterior admite el conector Datagen.

Sintaxis

CREATE TABLE datagen_source (
  name VARCHAR,
  score BIGINT
) WITH (
  'connector' = 'datagen'
);

Parámetros en la cláusula WITH

Parámetro

Tipo de dato

Obligatorio

Valor predeterminado

Descripción

connector

String

Sí

Ninguna

Debe establecerse como datagen.

rows-per-second

Long

No

10000

Tasa de generación de filas, expresada en filas por segundo.

number-of-rows

Long

No

Ninguna

Número total de filas por generar. De forma predeterminada, el origen es ilimitado. Si se usa un generador de secuencias, el origen se vuelve acotado automáticamente al finalizar la secuencia.

fields.<field>.kind

String

No

random

Tipo de generador para el campo. Valores válidos: random o sequence. Para más detalles, consulte Generators.

fields.<field>.min

Igual que el tipo de dato de <field>

No

Valor mínimo del tipo de dato del campo

Valor mínimo para un generador aleatorio. Solo aplica a tipos numéricos.

fields.<field>.max

Igual que el tipo de dato de <field>

No

Valor máximo del tipo de dato del campo

Valor máximo para un generador aleatorio. Solo aplica a tipos numéricos.

fields.<field>.max-past

Duration

No

0

Desplazamiento máximo hacia el pasado respecto a la marca de tiempo local actual de la computadora al generar valores de marca de tiempo aleatorios. Solo aplica a los tipos TIMESTAMP y TIMESTAMP_LTZ.

fields.<field>.length

Integer

No

100

Longitud de la cadena aleatoria o tamaño de la colección generada. Tipos compatibles: CHAR, VARCHAR, BINARY, VARBINARY, STRING, ARRAY, MAP, MULTISET.

fields.<field>.start

Igual que el tipo de dato de <field>

No

Ninguna

Valor inicial para un generador de secuencias.

fields.<field>.end

Igual que el tipo de dato de <field>

No

Ninguna

Valor final para un generador de secuencias.

Reemplace <field> por el nombre del campo definido en su instrucción DDL.

Generadores

El conector Datagen admite dos tipos de generadores:

  • Generador aleatorio: genera valores aleatorios dentro del rango configurado. Especifique fields.<field>.min y fields.<field>.max para controlar el rango en tipos numéricos.

  • Generador de secuencias: genera valores ordenados desde un valor inicial hasta un valor final. Cuando la secuencia se agota, la generación de datos se detiene y se produce una tabla acotada. Especifique fields.<field>.start y fields.<field>.end para definir el rango.

La siguiente tabla muestra el tipo de generador compatible con cada tipo de dato.

Tipo de dato

Generador compatible

Notas

BOOLEAN

Aleatorio

CHAR

Aleatorio y secuencia

VARCHAR

Aleatorio y secuencia

BINARY

Aleatorio y secuencia

VARBINARY

Aleatorio y secuencia

STRING

Aleatorio y secuencia

DECIMAL

Aleatorio y secuencia

TINYINT

Aleatorio y secuencia

SMALLINT

Aleatorio y secuencia

INT

Aleatorio y secuencia

BIGINT

Aleatorio y secuencia

FLOAT

Aleatorio y secuencia

DOUBLE

Aleatorio y secuencia

DATE

Aleatorio

Siempre corresponde a la fecha actual de la computadora local.

TIME

Aleatorio

Siempre corresponde a la hora actual de la computadora local.

TIMESTAMP

Aleatorio

Genera valores dentro del rango de desplazamiento pasado respecto a la marca de tiempo local actual de la computadora. Configure el desplazamiento con fields.<field>.max-past.

TIMESTAMP_LTZ

Aleatorio

Genera valores dentro del rango de desplazamiento pasado respecto a la marca de tiempo local actual de la computadora. Configure el desplazamiento con fields.<field>.max-past.

ROW

Aleatorio

Genera subcampos aleatorios.

ARRAY

Aleatorio

Genera elementos aleatorios.

MAP

Aleatorio

Genera pares clave-valor aleatorios.

MULTISET

Aleatorio

Genera elementos aleatorios.

Ejemplos

Configuración mínima

Cree una tabla de origen con la configuración predeterminada:

CREATE TABLE datagen_source (
  name VARCHAR,
  score BIGINT
) WITH (
  'connector' = 'datagen'
);

Combinar generadores de secuencia y aleatorios

En la mayoría de los casos, el conector Datagen se usa junto con la cláusula LIKE para simular una tabla existente. El siguiente ejemplo genera un conjunto de datos acotado mediante un generador de secuencias para id y un generador aleatorio para score:

CREATE TABLE datagen_source (
  id INT,
  score INT
) WITH (
  'connector' = 'datagen',
  'fields.id.kind' = 'sequence',
  'fields.id.start' = '1',
  'fields.id.end' = '50',
  'fields.score.kind' = 'random',
  'fields.score.min' = '70',
  'fields.score.max' = '100'
);

El generador de secuencias produce valores de id del 1 al 50 y luego se detiene. Dado que se emplea un generador de secuencias, el origen es acotado. Por su parte, el generador aleatorio produce valores de score entre 70 y 100.