Cree estadísticas de suscripción en Oracle Data Generator

Si necesita llenar una base de datos con datos para probar, generalmente es muy conveniente que estos datos encajen en un esquema dinámico, como en la vida real. En tales situaciones, los propios registros deben parecer realistas y formar una imagen general similar a la vida. Por ejemplo, si desea llenar una hoja de cálculo con datos de prueba para un servicio en línea con un modelo de suscripción, los registros deben ser dinámicos día a día. En el mundo real, la cantidad de suscripciones siempre cambiará: algunas personas abandonan el servicio y llegan nuevos suscriptores. Por supuesto, me gustaría que prevaleciera la última cifra sobre la primera.
Con Data Generator for Oracle y algunos scripts básicos de Python, podemos generar datos de prueba que mostrarán un patrón de crecimiento dinámico.

Índice

    Cómo crear datos de prueba realistas con una imagen de crecimiento dinámico

    Crear las tablas necesarias

    En primer lugar, necesitamos una base de datos que pueda describir correctamente la información que queremos almacenar.

    En este ejemplo, queremos que las tres tablas contengan nuestros datos: producto, abonadoy suscripciones.

    La siguiente consulta SQL creará estas tablas:

    CREATE TABLE "Product" (
    "id" NUMBER(10, 0),
    "name" VARCHAR2(50 BYTE),
    CONSTRAINT PK_PRODUCT_ID PRIMARY KEY ("id") USING INDEX TABLESPACE USERS
    )
    TABLESPACE USERS
    LOGGING;
    CREATE TABLE "Subscriber" (
    "id" NUMBER(10, 0),
    "name" VARCHAR2(50 BYTE),
    CONSTRAINT PK_SUBSCRIBER_ID PRIMARY KEY ("id") USING INDEX TABLESPACE USERS
    )
    TABLESPACE USERS
    LOGGING;
    CREATE TABLE "Subscriptions" (
    "day" NUMBER,
    "product_id" NUMBER,
    "subscriber_id" NUMBER,
    CONSTRAINT FK_SUBSCRIPTIONS_PRODUCT_ID FOREIGN KEY ("product_id")
    REFERENCES "Product" ("id"),
    CONSTRAINT FK_SUBSCRIPTIONS_SUBSCRIBER_ID FOREIGN KEY ("subscriber_id")
    REFERENCES "Subscriber" ("id")
    )
    TABLESPACE USERS
    LOGGING;
    

    Puede crear el archivo SQL apropiado en el Generador de datos para Oracle. Para hacer esto, presione el botón SQL nuevo un botón ubicado en la barra de herramientas en la parte superior izquierda de la pantalla. Si aún no se ha conectado al servidor, Conectarse al servidor aparecerá una ventana - aquí seleccione la conexión deseada. Cuando haya terminado, haga clic en Conectar. En la pestaña que se abre, ingrese la consulta que enviamos anteriormente:

    Crear tablas

    Luego puede ejecutar esta consulta para crear las tablas necesarias para los siguientes pasos.

    Después de configurar estas tres mesas, podemos continuar.

    Crear un nuevo documento de generador de datos

    Vamos a crear un nuevo documento de generador de datos.

    En dbForge Data Generator para Oracle, haga clic en Una nueva generación de datos en la parte superior izquierda de la pantalla. El Propiedades del proyecto del generador de datos la ventana se abrirá. У Conexión en la pestaña, seleccione la conexión del servidor y el esquema que contiene las tablas creadas en el paso anterior. Luego haga clic próximo continuar. У Opciones en la pestaña, podrá configurar varias opciones de generación de datos si es necesario. También puede ir a la configuración predeterminada.

    Nuevo documento de generación de datos

    Cuando todo esté configurado, haga clic en Abierto. Se abrirá la ventana principal del generador de datos.

    Aplicación de script de generación de datos personalizados.

    Ahora seleccione la tabla que acabamos de crear marcando la casilla correspondiente. Entonces ve a la mesa DÍA campo. У Parámetros de generación de columnas instalar la ventana a la derecha Generador valor a Pitón.
    En la sección de script de Python, reemplace el script predeterminado con lo siguiente:

    def main(config):
    
      v_day = 1;
      v_count = 4
      while True:
        for x in range(v_count):
          yield v_day;    
        v_day = v_day + 1; v_count= v_count + 4;

    Script de generación de Python

    Cuando se ingresa el script, puede ver qué datos está generando Vista previa de los datos que se van a crear sección en la parte inferior de la pantalla:

    El resultado de la generación de datos.

    ¿Qué significan los valores iniciales del script?

    Tres cosas son importantes para nosotros en el guión: v_día y v_count variables y crecimiento diario de suscripciones.

    v_día determina el valor numérico del día de nuestro servicio. Por lo tanto, el día en que lanzamos el servicio se marcará como el día 1 y el día dos semanas después se marcará como el día 15.

    v_count determina cuántos suscriptores reclutamos el día que comenzamos a generar datos. En la versión inicial del script comenzamos con v_cuenta = 4lo que significa que tendremos 4 nuevas suscripcioness en el primer día.

    Al final del script, encontrará la siguiente línea:

    v_count= v_count + 4;

    Esta línea muestra el aumento diario de suscripciones. Entonces, por defecto, el crecimiento diario de suscripciones es 4. Con todos estos valores iniciales, obtenemos 4 nuevos suscriptores el primer día, 8 nuevos suscriptores el segundo día, 12 el tercer día y así sucesivamente.

    Cambie el script para que se adapte mejor a sus necesidades.

    Para afinar el proceso de generación de datos, puede cambiar los valores correspondientes en el script.

    Cambiar el valor inicial v_día en el script puede generar datos a partir de un día determinado de la vida útil de nuestro servicio. Por ejemplo, puede iniciar el proceso de generación de datos cuando nuestro servicio tenga 1 mes cambiando la primera línea del script a:

    v_day = 31;

    Cambiando el valor de c v_count, cambia la cantidad de nuevos suscriptores que obtiene el día que comienza a generar datos. Entonces, digamos que tenemos 2000 suscriptores el día 31. Podemos mostrar esto modificando la segunda línea del script de la siguiente manera:

    v_count = 2000;

    Finalmente, cambiemos nuestro crecimiento diario de suscripciones. Si recibimos 12 nuevos suscriptores todos los días, necesitaremos cambiar la última línea del script a:

    v_day = v_day + 1; v_count= v_count + 12;

    Entonces, con estos parámetros modificados, comenzaremos a generar datos a partir del día 31 de nuestro servicio, con 2000 suscriptores iniciales y un crecimiento diario de suscripción de 12.

    Como puede ver, crear una plantilla de datos dinámicos para su hoja de cálculo no es tan difícil con dbForge Data Generator for Oracle: puede descargarlo y probarlo usted mismo.

    Artículos de interés

    Subir