sql >> Database >  >> RDS >> Database

Database subsetting – Hoe in IRI Voracity

Zodra een database een bepaalde grootte overschrijdt, wordt het duur - en riskant vanuit beveiligingsperspectief - om kopieën op volledige grootte te leveren voor ontwikkeling, testen en training. De meeste teams hebben kleinere exemplaren van de grotere database nodig en hebben vaak de PII binnen gemaskeerd.

Database-subsetting is dat proces waarbij een kleinere, referentieel correcte kopie van een grotere database wordt gemaakt op basis van echte tabelextracten. Subsets kunnen worden gebruikt met, of in plaats van, het maskeren van gegevens of het synthetiseren van testgegevens om de kosten en risico's van volledige sets te verminderen. Het proces om handmatig zinvolle subsets te maken is complex en arbeidsintensief, aangezien u kleinere databases zou moeten vullen met willekeurige steekproeven uit elke productietabel en ervoor moet zorgen dat de relationele structuur tussen de tabellen nog steeds correct is in de subset.

Een end-to-end database-subset-taakwizard in de IRI Workbench maakt dit proces sneller en gemakkelijker. De wizard is beschikbaar voor gelicentieerde gebruikers van het IRI Voracity-gegevensbeheerplatform, IRI RowGen voor het genereren van testgegevens en IRI FieldShield voor gegevensmaskering. Dit artikel introduceert de wizard en laat zien hoe deze referentieel correcte subsets maakt, met opties voor kolommaskering en veldbehoudende codering.

De wizard voor het maken van subsets laat de gebruiker de bron van de subset selecteren, de grootte en sortering ervan, de namen voor de subsetdoelen en eventuele versleuteling of maskering van de subsetgegevens. De wizard maakt vervolgens een reeks taakscripts die subsettabellen of platte bestanden maken.

Taakopties

Deze pagina definieert het uitvoertype. Als de lader leeg wordt gelaten, wordt een plat bestand met een tab-scheidingsteken gemaakt. Voor database-opties kan ODBC of de specifieke databaselader worden geselecteerd.

Subset-opties

Op deze pagina geeft u de details van de subset op. Selecteer het verbindingsprofiel en de tabel die de gemaakte subset zal "aansturen". Beschouw de rijtabel als de hoofdtabel van waaruit u de subset wilt laten ontstaan. Als u bijvoorbeeld een tabel met verkopen en alle tabellen die eraan verbonden zijn, wilt subsetten, selecteert u hier de tabel met verkoopinformatie. Selecteer ook de grootte van de subset. Als u bijvoorbeeld een subset van de 100 hoogste verkochte hoeveelheden wilt krijgen, sorteert u op het veld verkochte hoeveelheid (zoals in dit voorbeeld) en voert u 100 in het aantal rijen in. Er kan ook een filter worden toegevoegd aan de bestuurderstabel.

Sorteren

Op deze pagina geeft u de sorteervolgorde van de subset op. Als u echter wilt dat de rijen willekeurig worden geselecteerd, laat u de lijst met sleutelvelden leeg.

De sorteerpagina heeft 3 opvallende secties:

  1. De lijst met invoervelden
  2. De lijst met sleutelvelden
  3. Sleutelopties

Stappen:

  1. Als u een subset van gesorteerde gegevens wilt, selecteert u de kolom waarop u wilt sorteren en klikt u op 'Sleutel toevoegen'.
  2. Er zijn enkele opties beschikbaar in het vak Sleutelopties:
    • Selecteer het selectievakje Stabiel om records te dupliceren om te laden in de volgorde waarin ze in de productietabel staan.
    • Als u geen duplicaten of alleen duplicaten in uw subset wilt, selecteert u het selectievakje Duplicaten en het juiste keuzerondje.

Doelnaamgeving

Deze pagina wordt weergegeven als het uitvoertype een database is. Het heeft twee functies. Met de eerste kunt u de relaties van uw chauffeurstabel bekijken. De tweede is om de outputdoelen voor de subset een naam te geven.

De pagina Doelnaamgeving heeft 5 opvallende secties:

  1. Het doelprofiel en -schema
  2. De uitvoermodus is altijd maken omdat deze taak alle bestaande tabellen met dezelfde naam afkapt
  3. SQL-opties voor de taak
  4. De naamgevingsopties
  5. De lijst met referenties

Stappen:

  1. Selecteer het verbindingsprofiel.
  2. Selecteer het schema.
  3. Geef de SQL-opties op.
  4. Selecteer de naamgevingsoptie om de subsetdoelen een naam te geven. Als een ander profiel of schema wordt gebruikt, is deze stap optioneel:
    • Voorvoegsel voor alles voegt een voorvoegsel toe aan elke tafelnaam en stelt deze in als het doel van die tafel.
    • Alles achteraf corrigeren voegt een postfix toe aan elke tabelnaam en stelt deze in als het doel van die tabel.
    • Individueel een naam geven staat toe dat elk subsetdoel onafhankelijk van de andere doelen wordt benoemd.
  5. Bekijk de Waarnaar verwezen wordt door en Referenties  lijsten om te controleren of de relaties van de tabel correct zijn gevonden:
    • In de Geïmporteerd door  lijst, worden alle tabellen waarmee de door u gekozen tabel is geïmporteerd weergegeven.
    • In de Import lijst, alle tabellen waarmee de door u gekozen tafel een relatie heeft, worden weergegeven.

Regels

Op deze pagina kunnen regels worden toegevoegd aan elk van de doelen. In dit voorbeeld is een regelovereenkomst toegevoegd aan alle velden die eindigen op het woord "NAAM". De regel wordt toegepast op de overeenkomende doeltabel. Deze regel maskeert deze twee velden met sterretjes. Er moet op worden gelet dat er geen regels worden opgenomen voor velden met externe sleutels.

Samenvatting

Deze pagina vat de vacature samen. Het geeft duidelijk de kolommen weer die overeenkomen met een regel, en de doeltabellen die overeenkomen met de brontabellen als ze niet bestaan. Houd er rekening mee dat er voor nieuwe tabellen DDL wordt gemaakt.

Zodra al deze pagina's zijn voltooid, kunt u Voltooien selecteren. De wizard maakt vervolgens taakscripts en een uitvoerbaar batchbestand voor Windows of Unix dat u vanuit Workbench of de opdrachtregel kunt starten om subsets uit de stuurprogrammatabel en de bijbehorende tabellen te extraheren.

Hier is een stroomdiagram dat de acht taken toont die voor de taak in Voracity zijn gemaakt:


Neem contact op met [email protected] als je vragen hebt.


  1. Row_to_json() gebruiken met geneste joins

  2. java.sql.SQLException:geen geschikte driver gevonden voor jdbc:microsoft:sqlserver

  3. Hoe converteer ik van BLOB naar TEXT in MySQL?

  4. Hoe EBS R12-componenten te vinden Versie: