Потребителите на IRI RowGen могат да генерират структурно и референтно правилни синтетични тестови данни за цяла база данни с една операция. Тестовите данни отразяват производствени характеристики (като диапазони на стойности и честоти), които обикновено се срещат при операции с база данни или ETL, но не изискват достъп или маскиране на реални данни.
Съветниците за задачи за крайния потребител за RowGen в GUI на IRI Workbench (изграден върху Eclipse™) помагат при генерирането на тестови данни. Едно от най-полезните е Ново задание за тестови данни за база данни RowGen съветник, който изгражда цял проект RowGen за автоматично попълване на множество таблици наведнъж с предварително сортирани ключови стойности и възможност за персонализиране. Въпреки че разчита на съществуващи метаданни за всяка тестова таблица, можете също да персонализирате — и да обобщавате чрез правила — генерирането на стойности на колони.
В тази статия ще демонстрирам как можете да използвате IRI Workbench за създаване на целеви таблици в Oracle и диаграмиране на тяхната схема и след това да използвате един от неговите съветници на RowGen, за да генерирате и зареждате тестови данни в тези таблици.
Като настрана искам също RowGen да вмъкне произволно избрани реални стойности в определени колони от зададени файлови данни. Наборният файл е текстов файл с един или повече редове, които могат да имат множество колони, разделени с табулатори, които предоставяте или автоматично извличате в друг съветник на Workbench, Set File from Column. В моя случай обаче създадох своите наборни файлове ръчно:emp.set, item.set, project.set, quantity.set, salary.set, department.set и category.set.
Ето стъпките, които следвах, отбелязвайки, че имах информация за целевата ми таблица и че ще ви трябва същата:
Стъпка 1. Създайте празни целеви таблици
- Установете връзката с базата данни (Oracle в този случай) чрез JDBC в Data Source Explorer (DSE) на IRI Workbench
- Посочете Dept, Emp, Project, Category, Item, Item_Use, Sale, като напишете техните CREATE TABLE и ALTER TABLE изрази в .sql файл, редактиран в SQL лексикон на DSE
- Запазете го в папка на проекта и щракнете с десния бутон върху него, за да изпълните SQL файла, за да създадете таблиците
Стъпка 2. Създайте и покажете тяхната ER диаграма
- От над лентата с инструменти изберете Нов, IRI проект и създайте нова папка
- Щракнете върху тази папка, след което маркирайте 7-те нови таблици по-горе в DSE
- Щракнете с десния бутон върху IRI, след което изберете Нов модел на диаграма на ER
- Това създава нов модел на схема и файл, schema.sqlschema, в папката на вашия проект
Имайте предвид, че DSE и инструментът за диаграмиране на ER от IRI са независими от DB.
Стъпка 3. Произвеждайте тестови данни със съветника за тестови данни на базата данни RowGen
- Щракнете с CTRL, за да изберете отново тези 7 таблици в DSE
- Щракнете с десния бутон и изберете IRI, New Database Test Data Job
- Щракнете Напред, когато се отвори съветникът, тъй като вече сте избрали предварително таблиците за попълване:
- Щракнете върху Напред, за да преминете към диалоговия прозорец за конфигуриране на правила, където можете да добавяте или променяте различни правила за генериране на ниво поле, генерирани графично в диалогови прозорци от инструмента за избор на правила:
Тъй като това е мястото, където условно ще вмъквам произволно избрани реални данни (от моите зададени файлове), в подобни колони в няколко таблици, ще прилагам генерирането като правило винаги, когато името на колоната съответства на шаблон, който посочвам.
- Започвам приложението си на набор данни с „item“ от този файл и така сега добавете полето за шаблон add Item_Name* и щракнете върху тест за съвпадения за да проверите дали (и къде) съществува това име на колоната
- След това изберете поле от менюто Опции на правилата и изберете Задаване на файл. Преглеждам моя файл item.set, за да посоча използването му във всяка колона с име или като Item_Name.
- Повтарям тези стъпки, за да приложа данни от моите наборни файлове за колони с имена на Category_Name, Dept_Num, Emp_Name, Item_Name, за да подобря реализма на тестовите данни:
- Щракнете върху Напред , за да стигнете до този екран с обобщена работа:
- Щракнете върху Готово, за да завършите съветника.
Помощникът RowGen автоматично създаде скриптовете на контролния език с обикновен текст (.rcl), които определят генерирането на тестови данни за всяка таблица, както и зависими наборни файлове (за референтна цялост), SQL*Loader контролни файлове и пакетен файл за изпълнява всичко наведнъж, в или извън IRI Workbench.
Изпълнението на пакетния файл, който създаде RowGen, създава всички необходими тестови данни в плоски файлове и попълва всички целеви таблици с тези данни, както сте избрали в съветника (чрез ODBC или вашата помощна програма за зареждане на DB), в реда, необходим за запазване на първичния- връзки с външни ключове. Групово заредените таблици бяха предварително сортирани по индексния ключ за всяка таблица и стойностите в зададените файлове бяха вмъкнати на случаен принцип в десните колони.
Тази екранна снимка на IRI Workbench показва един от скриптовете за работа на RowGen и целева таблица:
Всички скриптове за работа на RowGen бяха запазени в папката, която бях избрал в началото и са достъпни за модификация, повторна употреба, споделяне на екип, контрол на версиите и т.н. Моделът на потока на заданията, създаден за генериране на тестови данни, може също да бъде диаграмиран в визуален редактор на работни потоци, с ETL и други проекти за управление на данни на IRI.
Свържете се с [email protected] ако имате нужда от помощ при планирането или използването на този съветник.