{"id":7490,"date":"2015-07-15T16:53:50","date_gmt":"2015-07-15T20:53:50","guid":{"rendered":"http:\/\/www.iri.com\/blog\/?p=7490"},"modified":"2021-09-07T12:23:37","modified_gmt":"2021-09-07T16:23:37","slug":"how-to-generate-db-test-data-2","status":"publish","type":"post","link":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/","title":{"rendered":"How to Generate DB Test Data"},"content":{"rendered":"<p><a href=\"http:\/\/www.iri.com\/products\/rowgen\" target=\"_blank\" rel=\"noopener\">IRI RowGen<\/a>\u00a0users can generate structurally and referentially correct synthetic test data for an entire database in a single operation. The test data <a href=\"http:\/\/www.iri.com\/blog\/test-data\/making-realistic-test-data-production\/\" target=\"_blank\" rel=\"noopener\">reflects production<\/a>\u00a0characteristics (such as values ranges and frequencies) normally encountered in database or ETL operations, but does not require access to, or the masking of, real data.<\/p>\n<p>End-user job wizards for RowGen in\u00a0the <a href=\"http:\/\/www.iri.com\/products\/workbench\/rowgen-gui\" target=\"_blank\" rel=\"noopener\">IRI Workbench<\/a> GUI\u00a0(built on Eclipse\u2122) aid in test data generation. One of the most useful is the <em>New RowGen Database Test Data Job<\/em>\u00a0wizard, which builds an entire RowGen project to auto-populate multiple tables at once with <a href=\"https:\/\/www.iri.com\/blog\/vldb-operations\/high-speed-database-loading\/\">pre-sorted<\/a> key values and the opportunity for customization. Though it relies on existing metadata for each test table, you can also customize &#8212; and generalize via rules &#8212; the generation of column values.<\/p>\n<p>In this article, I will demonstrate how you can use IRI Workbench to create target tables in Oracle and diagram their schema, and then use one of its RowGen wizards to generate and load test data into those tables.<\/p>\n<p>As an aside, I also want RowGen to insert randomly selected real values into certain columns from set file data. A set file is text file with one or more rows, which can have multiple, tab-delimited columns you supply or auto-extract in another Workbench wizard, Set File from Column. In my case, however, I created my set files manually: emp.set, item.set, project.set, quantity.set, salary.set, department.set, and category.set.<\/p>\n<p>Here are the steps I followed, noting that I had my target table information, and that you will need the same:<\/p>\n<p><strong>Step 1.<\/strong> Create Empty Target Tables<\/p>\n<ol start=\"1\">\n<li>Establish the database (Oracle in this case) connection via JDBC in IRI Workbench\u2019s Data Source Explorer (DSE)<\/li>\n<li>Specify Dept, Emp, Project, Category, Item, Item_Use, Sale by writing their CREATE TABLE and ALTER TABLE statements into an\u00a0.sql file edited in DSE\u2019s SQL scrapbook<\/li>\n<li>Save it in a Project folder and right click on it to Execute the SQL file to build the tables<\/li>\n<\/ol>\n<p><strong>Step 2.<\/strong> Create &amp; Show their ER Diagram<\/p>\n<ol start=\"1\">\n<li>From above the toolbar, select New, IRI Project\u00a0and create a New Folder<\/li>\n<li>Click on that folder, then highlight the 7 new tables above in the DSE<\/li>\n<li>Right click on IRI, then select New ER diagram model<\/li>\n<li>This creates a new schema model and file, schema.sqlschema, in your project folder<\/li>\n<\/ol>\n<p><a href=\"\/blog\/wp-content\/uploads\/2015\/07\/How-to-Generate-DB-Test-Data-.jpg\"><img decoding=\"async\" class=\"wp-image-14053 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2015\/07\/How-to-Generate-DB-Test-Data-.jpg\" alt=\"\" width=\"485.42px\" height=\"299.50px\" \/><\/a><\/p>\n<p>Note that the DSE and the <a href=\"https:\/\/www.iri.com\/blog\/vldb-operations\/er-diagrams-in-iri-workbench\/\">ER Diagramming<\/a> tool from IRI are both DB-agnostic.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Step 3.<\/strong> Produce Test Data with the RowGen Database Test Data Wizard<\/p>\n<ol start=\"1\">\n<li>CTRL-click to select those 7 tables in the DSE again<\/li>\n<li>Right click and select IRI, New Database Test Data Job<\/li>\n<li>Click\u00a0Next when the wizard opens, as you\u2019d already pre-selected the tables to populate:<\/li>\n<\/ol>\n<p><a href=\"\/blog\/wp-content\/uploads\/2015\/07\/t_How-to-Generate-DB-Test-Data-1.jpg\"><img decoding=\"async\" class=\"wp-image-14053 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2015\/07\/t_How-to-Generate-DB-Test-Data-1.jpg\" alt=\"\" width=\"355.35px\" height=\"348.50px\" \/><\/a><\/p>\n<li>Click Next, and in the Options screen, select SQL*Loader as the population method<\/li>\n<li>Specify the standard number of rows at 1000 per table, noting that I could also vary this count:<\/li>\n<\/ol>\n<p><a href=\"\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14052 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg\" alt=\"\" width=\"600\" height=\"437\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg 717w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2-300x218.jpg 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<ol start=\"6\">\n<li>Click Next to advance to the Rules Configuration dialog, where you can add or modify various field-level generation rules generated graphically in dialogs from the Rule Selector:<\/li>\n<\/ol>\n<p><a href=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2021\/07\/data-gen-rules1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14441 size-full aligncenter\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2021\/07\/data-gen-rules1.png\" alt=\"\" width=\"511\" height=\"535\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2021\/07\/data-gen-rules1.png 511w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2021\/07\/data-gen-rules1-287x300.png 287w\" sizes=\"(max-width: 511px) 100vw, 511px\" \/><\/a><\/p>\n<p>As this is where I will conditionally insert randomly selected real data (from my set files), in like columns across several tables, I will apply the generation as rule whenever the column name conforms to a pattern I specify.<\/p>\n<ol start=\"7\">\n<li>I\u2019m starting my application of set data with \u2018item\u2019 from that file, and so now add the pattern field add Item_Name* and click test for matches\u00a0to verify if (and where) that column name exists<\/li>\n<li>Next, select a field from the Rule Options\u00a0menu and select\u00a0Set File. I browse to my item.set file to specify its use in any column named as or like Item_Name.<\/li>\n<li>I repeat these steps to apply data from my set files for columns named for Category_Name, Dept_Num, Emp_Name, Item_Name to enhance test data realism:<\/li>\n<\/ol>\n<p><a href=\"\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-3.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14053 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-3.jpg\" alt=\"\" width=\"600\" height=\"437\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-3.jpg 717w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-3-300x218.jpg 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<ol start=\"10\">\n<li>Click Next\u00a0to arrive at this job summary screen:<\/li>\n<\/ol>\n<p><a href=\"\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-4.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-14055 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-4.jpg\" alt=\"\" width=\"600\" height=\"437\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-4.jpg 717w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-4-300x218.jpg 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<ol start=\"11\">\n<li>Click Finish\u00a0to complete the wizard.<\/li>\n<\/ol>\n<p>The RowGen wizard automatically created the plain-text (.rcl) control language scripts that specify the generation of\u00a0test data for each table, as well as dependent set files (for referential integrity), SQL*Loader control files, and a batch file to execute everything at once, in or outside the IRI Workbench.<\/p>\n<p>Running the batch file that RowGen produced creates all the necessary test data in flat files, and populates all the target tables with that data as you chose in the wizard (via ODBC or your DB load utility), in the order necessary to preserve primary-foreign key relationships. The bulk-loaded tables\u00a0were\u00a0pre-sorted on the index key for each table, and the values in the set files were\u00a0randomly inserted into the right columns.<\/p>\n<p>This IRI Workbench screenshot shows one of the RowGen job scripts and a target table:<\/p>\n<p><a href=\"\/blog\/wp-content\/uploads\/2015\/07\/How-to-Generate-DB-Test-Data-5.jpg\"><img decoding=\"async\" class=\"wp-image-14053 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2015\/07\/How-to-Generate-DB-Test-Data-5.jpg\" alt=\"\" width=\"624.00px\" height=\"377.33px\" \/><\/a><\/p>\n<p>All the RowGen job scripts were saved in the folder I\u2019d selected in the beginning, and are available for modification, <a href=\"https:\/\/www.iri.com\/blog\/iri\/iri-workbench\/introduction-metadata-management-hub\/\">reuse, team sharing, version control<\/a>, etc. The job flow model created for the test data generation can also be diagrammed in the <a href=\"https:\/\/www.iri.com\/services\/training\/courseware#workbench\">visual workflow<\/a> editor, with ETL and other IRI data management projects.<\/p>\n<p>Contact <a href=\"mailto:rowgen@iri.com\">rowgen@iri.com<\/a>\u00a0if you need help planning for, or using, this wizard.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>IRI RowGen\u00a0users can generate structurally and referentially correct synthetic test data for an entire database in a single operation. The test data reflects production\u00a0characteristics (such as values ranges and frequencies) normally encountered in database or ETL operations, but does not require access to, or the masking of, real data. End-user job wizards for RowGen in\u00a0the<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\" title=\"How to Generate DB Test Data\">Read More<\/a><\/div>\n","protected":false},"author":53,"featured_media":14052,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[776,91,29,3],"tags":[823,173,71,822,100,818,526,850,50,255,824,819,1484,825],"class_list":["post-7490","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-etl","category-iri-workbench","category-test-data","category-vldb-operations","tag-data-wizard","tag-database-testing","tag-eclipse","tag-er-diagram","tag-etl","tag-generate-db-test-data","tag-iri-rowgen","tag-iri-workbench","tag-oracle","tag-prototype-etl-job","tag-sqlloader-control-files","tag-structurally-and-reverentially-correct","tag-test-schema","tag-visual-workflow-editor"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.4 (Yoast SEO v23.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Generate DB Test Data - IRI<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Generate DB Test Data\" \/>\n<meta property=\"og:description\" content=\"IRI RowGen\u00a0users can generate structurally and referentially correct synthetic test data for an entire database in a single operation. The test data reflects production\u00a0characteristics (such as values ranges and frequencies) normally encountered in database or ETL operations, but does not require access to, or the masking of, real data. End-user job wizards for RowGen in\u00a0theRead More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2015-07-15T20:53:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-09-07T16:23:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"717\" \/>\n\t<meta property=\"og:image:height\" content=\"522\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Chaitali Mitra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Chaitali Mitra\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\"},\"author\":{\"name\":\"Chaitali Mitra\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf\"},\"headline\":\"How to Generate DB Test Data\",\"datePublished\":\"2015-07-15T20:53:50+00:00\",\"dateModified\":\"2021-09-07T16:23:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\"},\"wordCount\":872,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg\",\"keywords\":[\"data wizard\",\"database testing\",\"Eclipse\",\"ER Diagram\",\"ETL\",\"generate db test data\",\"IRI RowGen\",\"IRI Workbench\",\"Oracle\",\"prototype ETL job\",\"SQL*Loader control files\",\"structurally and reverentially correct\",\"test schema\",\"visual workflow editor\"],\"articleSection\":[\"ETL\",\"IRI Workbench\",\"Test Data\",\"VLDB\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\",\"url\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\",\"name\":\"How to Generate DB Test Data - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg\",\"datePublished\":\"2015-07-15T20:53:50+00:00\",\"dateModified\":\"2021-09-07T16:23:37+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg\",\"width\":717,\"height\":522},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Generate DB Test Data\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.iri.com\/blog\/#website\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf\",\"name\":\"Chaitali Mitra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g\",\"caption\":\"Chaitali Mitra\"},\"sameAs\":[\"http:\/\/www.iri.com\"],\"url\":\"https:\/\/www.iri.com\/blog\/author\/chaitalim\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Generate DB Test Data - IRI","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/","og_locale":"en_US","og_type":"article","og_title":"How to Generate DB Test Data","og_description":"IRI RowGen\u00a0users can generate structurally and referentially correct synthetic test data for an entire database in a single operation. The test data reflects production\u00a0characteristics (such as values ranges and frequencies) normally encountered in database or ETL operations, but does not require access to, or the masking of, real data. End-user job wizards for RowGen in\u00a0theRead More","og_url":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/","og_site_name":"IRI","article_published_time":"2015-07-15T20:53:50+00:00","article_modified_time":"2021-09-07T16:23:37+00:00","og_image":[{"width":717,"height":522,"url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg","type":"image\/jpeg"}],"author":"Chaitali Mitra","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Chaitali Mitra","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#article","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/"},"author":{"name":"Chaitali Mitra","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf"},"headline":"How to Generate DB Test Data","datePublished":"2015-07-15T20:53:50+00:00","dateModified":"2021-09-07T16:23:37+00:00","mainEntityOfPage":{"@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/"},"wordCount":872,"commentCount":0,"publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg","keywords":["data wizard","database testing","Eclipse","ER Diagram","ETL","generate db test data","IRI RowGen","IRI Workbench","Oracle","prototype ETL job","SQL*Loader control files","structurally and reverentially correct","test schema","visual workflow editor"],"articleSection":["ETL","IRI Workbench","Test Data","VLDB"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/","url":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/","name":"How to Generate DB Test Data - IRI","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage"},"image":{"@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg","datePublished":"2015-07-15T20:53:50+00:00","dateModified":"2021-09-07T16:23:37+00:00","breadcrumb":{"@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#primaryimage","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg","width":717,"height":522},{"@type":"BreadcrumbList","@id":"https:\/\/www.iri.com\/blog\/vldb-operations\/how-to-generate-db-test-data-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Generate DB Test Data"}]},{"@type":"WebSite","@id":"https:\/\/www.iri.com\/blog\/#website","url":"https:\/\/www.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.iri.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/www.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf","name":"Chaitali Mitra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g","caption":"Chaitali Mitra"},"sameAs":["http:\/\/www.iri.com"],"url":"https:\/\/www.iri.com\/blog\/author\/chaitalim\/"}]}},"jetpack_featured_media_url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2020\/09\/How-to-Generate-DB-Test-Data-2.jpg","_links":{"self":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/7490"}],"collection":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/users\/53"}],"replies":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=7490"}],"version-history":[{"count":26,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/7490\/revisions"}],"predecessor-version":[{"id":14821,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/7490\/revisions\/14821"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media\/14052"}],"wp:attachment":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=7490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=7490"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=7490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}