Database
 sql >> Database >  >> RDS >> Database

Come generare dati di test DB

Gli utenti di IRI RowGen possono generare dati di test sintetici strutturalmente e referenzialmente corretti per un intero database in un'unica operazione. I dati del test riflettono le caratteristiche di produzione (come intervalli di valori e frequenze) normalmente riscontrate nelle operazioni di database o ETL, ma non richiedono l'accesso o il mascheramento di dati reali.

Le procedure guidate per l'utente finale per RowGen nella GUI di IRI Workbench (basata su Eclipse™) aiutano nella generazione dei dati di test. Uno dei più utili è il New RowGen Database Test Data Job wizard, che crea un intero progetto RowGen per popolare automaticamente più tabelle contemporaneamente con valori chiave preordinati e l'opportunità di personalizzazione. Sebbene si basi sui metadati esistenti per ogni tabella di test, puoi anche personalizzare (e generalizzare tramite regole) la generazione dei valori delle colonne.

In questo articolo dimostrerò come utilizzare IRI Workbench per creare tabelle di destinazione in Oracle e rappresentarne uno schema, quindi utilizzare una delle sue procedure guidate RowGen per generare e caricare dati di test in tali tabelle.

Per inciso, voglio anche che RowGen inserisca valori reali selezionati casualmente in determinate colonne dai dati del file impostato. Un set file è un file di testo con una o più righe, che può avere più colonne delimitate da tabulazioni fornite o estratte automaticamente in un'altra procedura guidata di Workbench, Imposta file da colonna. Nel mio caso, invece, ho creato i miei file set manualmente:emp.set, item.set, project.set, quantity.set, stipendio.set, department.set e category.set.

Ecco i passaggi che ho seguito, notando che avevo le informazioni sulla mia tabella di destinazione e che avrai bisogno delle stesse:

Passaggio 1. Crea tabelle target vuote

  1. Stabilire la connessione al database (in questo caso Oracle) tramite JDBC in Data Source Explorer (DSE) di IRI Workbench
  2. Specificare Dipartimento, Emp, Progetto, Categoria, Articolo, Uso_oggetto, Vendita scrivendo le loro istruzioni CREATE TABLE e ALTER TABLE in un file .sql modificato nell'album SQL di DSE
  3. Salvalo in una cartella Progetto e fai clic con il pulsante destro del mouse per eseguire il file SQL per creare le tabelle

Passaggio 2. Crea e mostra il loro diagramma ER

  1. Dalla barra degli strumenti, seleziona Nuovo progetto IRI e crea una nuova cartella
  2. Fai clic su quella cartella, quindi evidenzia le 7 nuove tabelle sopra nel DSE
  3. Fai clic con il pulsante destro del mouse su IRI, quindi seleziona Nuovo modello di diagramma ER
  4. Questo crea un nuovo modello di schema e file, schema.sqlschema, nella cartella del tuo progetto

Si noti che il DSE e lo strumento ER Diagramming di IRI sono entrambi indipendenti dal DB.

Passaggio 3. Produci dati di test con la procedura guidata dei dati di test del database RowGen

  1. CTRL-clic per selezionare nuovamente quelle 7 tabelle nel DSE
  2. Fai clic con il pulsante destro del mouse e seleziona IRI, New Database Test Data Job
  3. Fai clic su Avanti quando si apre la procedura guidata, poiché avevi già preselezionato le tabelle da compilare:

  • Fai clic su Avanti e, nella schermata Opzioni, seleziona SQL*Loader come metodo di popolamento
  • Specifica il numero standard di righe su 1000 per tabella, notando che potrei anche variare questo conteggio:
    1. Fai clic su Avanti per passare alla finestra di dialogo Configurazione regole, dove puoi aggiungere o modificare varie regole di generazione a livello di campo generate graficamente nelle finestre di dialogo del Selettore regole:

    Poiché è qui che inserirò in modo condizionale dati reali selezionati casualmente (dai miei file impostati), in colonne simili su diverse tabelle, applicherò la generazione come regola ogni volta che il nome della colonna è conforme a un modello da me specificato.

    1. Sto avviando la mia applicazione di set di dati con "item" da quel file, quindi ora aggiungi il campo del modello aggiungi Item_Name* e fai clic su prova per corrispondenze per verificare se (e dove) il nome della colonna esiste
    2. Successivamente, seleziona un campo dal menu Opzioni regola e seleziona Imposta file. Scorro al mio file item.set per specificarne l'uso in qualsiasi colonna denominata o come Item_Name.
    3. Ripeto questi passaggi per applicare i dati dai miei file di set alle colonne denominate Category_Name, Dept_Num, Emp_Name, Item_Name per migliorare il realismo dei dati di test:

    1. Fai clic su Avanti per arrivare a questa schermata di riepilogo del lavoro:

    1. Fai clic su Fine per completare la procedura guidata.

    La procedura guidata RowGen ha creato automaticamente gli script del linguaggio di controllo in testo normale (.rcl) che specificano la generazione dei dati di test per ciascuna tabella, nonché i file di set dipendenti (per l'integrità referenziale), i file di controllo SQL*Loader e un file batch per eseguire tutto in una volta, all'interno o all'esterno di IRI Workbench.

    L'esecuzione del file batch prodotto da RowGen crea tutti i dati di test necessari in file flat e popola tutte le tabelle di destinazione con quei dati scelti nella procedura guidata (tramite ODBC o l'utilità di caricamento del database), nell'ordine necessario per preservare il primario- relazioni di chiave esterna. Le tabelle caricate in blocco sono state ordinate in base alla chiave di indice per ciascuna tabella e i valori nei file impostati sono stati inseriti casualmente nelle colonne di destra.

    Questa schermata di IRI Workbench mostra uno degli script di lavoro RowGen e una tabella di destinazione:

    Tutti gli script di lavoro RowGen sono stati salvati nella cartella che avevo selezionato all'inizio e sono disponibili per la modifica, il riutilizzo, la condivisione del team, il controllo della versione, ecc. Il modello di flusso di lavoro creato per la generazione dei dati di test può anche essere schematizzato nel editor di flusso di lavoro visivo, con ETL e altri progetti di gestione dei dati IRI.

    Contatta [email protected] se hai bisogno di aiuto per pianificare o utilizzare questa procedura guidata.