sql >> Database >  >> RDS >> Database

RowGen v3 automatiseert het genereren van databasetestgegevens

De waarde van goede testgegevens voor DBA's is bekend:

“Het testen van database-intensieve applicaties heeft unieke uitdagingen die voortkomen uit verborgen afhankelijkheden, subtiele verschillen in datasemantiek, doeldatabaseschema's en impliciete bedrijfsregels. Deze uitdagingen worden nog moeilijker wanneer de toepassing geïntegreerde en heterogene databases of vertrouwelijke gegevens omvat. Goede testgegevens die real-world gegevensproblemen simuleren, zijn van cruciaal belang voor het bereiken van redelijke kwaliteitsbenchmarks voor functionele invoervalidatie, belasting, prestaties en stresstests. ” – Ali Raza &Stephen Clyde, samenvatting van Datasets maken voor het testen van relationele databases

Het testen van databasebewerkingen, het maken van prototypes van datawarehouse- en ETL/ELT-taken, het veilig uitbesteden van bestandsvoorbeelden en rapporten, en het uitvoeren van prestatiebenchmarks op DB-appliances vereisen allemaal testgegevens met het uiterlijk van de productiedatabase, zodat de toepassingen die die testgegevens nu gebruiken, later succesvol uitvoeren met echte gegevens. In hun boek uit 2012 vergelijken Raza en Clyde het genereren van testgegevens met het extraheren van testgegevens.

IRI en zijn gebruikers weten dat het gebruik van echte gegevens voor testen ongewenst is. De meest voor de hand liggende reden is dat echte gegevens het risico lopen om persoonlijk identificeerbare informatie (PII) bloot te leggen die vertrouwelijk moet worden gehouden. Een ontwikkelaar of tester wil in deze fase geen processen uitvoeren of een databasesysteem testen en het risico lopen klantinformatie zoals burgerservicenummers, creditcardgegevens, geboortedata, enz. te delen. De momenteel beschikbare echte gegevens zijn mogelijk ook niet robuust of realistisch genoeg om applicaties of databases te stresstesten die grotere volumes en/of waardebereiken moeten verwerken.

Helaas schreven Raza en Clyde hun boek voordat RowGen v3 werd uitgebracht, toen ze misschien hebben waargenomen dat het testgegevens genereert die:

1) stelt PII niet bloot omdat het nieuwe of gerandomiseerde echte kolomwaarden bevat
2) behoudt de structurele en referentiële integriteit die is gedefinieerd in de oorspronkelijke DDL
3) is niet beperkt tot de gegevensvolumes van de oorspronkelijke database of waardebereiken
4) kan worden aangepast door het genereren van scripts om aan complexe vereisten te voldoen
5) is voorgesorteerd en automatisch in bulk geladen voor de snelst mogelijke populatie
6) worden in batch gedefinieerd scripts die diverse flexibiliteit hebben en die naar behoefte kunnen worden geëxporteerd, hergebruikt en gewijzigd

IRI RowGen v3 is de nieuwste release van 's werelds snelste en meest robuuste testgegevensgenerator voor grote volumes voor relationele databases. RowGen werkt vanuit de IRI Workbench GUI die is gebouwd op Eclipse, op de opdrachtregel of vanuit batchprogramma's, om de kwaliteit en kwantiteit van testgegevens te produceren die nodig zijn om de reikwijdte, lay-outs en relaties binnen productiedatabases nauwkeurig weer te geven, en op zijn beurt, datawarehouses en operationele datastores.

De nieuwe DB Test Data-wizard van RowGen v3, wanneer deze wordt gestart vanuit de IRI Workbench GUI, leidt gebruikers door de specificatie en automatisering van:

Ontcijferen – door het schema en de tabellen te selecteren die moeten worden ingevuld, vertaalt RowGen de databasetabelbeschrijvingen en integriteitsbeperkingen naar .rcl-scripts die de bronstructuur, afhankelijke sets en gegevenscreatie specificeren, in de volgorde die nodig is om de tabellen in het juiste formaat te vullen, en waarbij alle primaire sleutels, unieke indexen en relaties met externe sleutels worden gerespecteerd.

Generatie – door de .rcl-scripts te bouwen en uit te voeren om één testbestand per tabel te maken dat in bulk kan worden geladen en/of opgeslagen voor toekomstig gebruik.

Bevolking – door de doeltabellen in de juiste volgorde in bulk te laden met voorgesorteerde testgegevens die structureel en referentieel correct zijn.

Het proces kan snel enorme testdatabases laden en voldoen aan zowel bedrijfsregels als wetten inzake gegevensprivacy. De gegenereerde gegevens zijn realistisch en robuust genoeg om databasebewerkingen en querytoepassingen te belasten.

RowGen v3 ondersteunt ook op regels en scripts gebaseerde opties om specifieke veldwaarden en waardebereikdistributies te beheren die rekening houden met specifieke databasebeperkingen en die het uiterlijk en de frequenties van gegevens in productie het beste weergeven. Gebruikers kunnen ook grafieken maken en visueel onderbouwen dat de testwaarden voldoen aan lineaire, genormaliseerde, gewogen of standaardverdelingen.

Ga voor meer informatie over RowGen v3 naar www.iri.com/products/rowgen,  www.iri.com/products/rowgen/gui  of lees de andere artikelen in het gedeelte Testgegevens van de IRI-blog.


  1. 4 functies die microseconden extraheren uit een tijdwaarde in MariaDB

  2. @BatchSize slim of dom gebruiken?

  3. sql-query om verschillen tussen twee tabellen te retourneren

  4. Hoe gebruik je meerdere WITH-statements in één PostgreSQL-query?