Databasekoppeling en ETL (Extract, Transform, Load)

Maak een overzicht en converteer gegevens tussen databases of andere dataformaten

  • ETL-functionaliteit voor elke database
  • Voer databasequery's uit op alle belangrijke databasesystemen
  • Ondersteuning voor SQL- en NoSQL-databases
  • Conversie van het ene databasetype naar een ander
  • Converteer gegevens uit een kaartdatabase naar andere dataformaten, of andersom
  • Specificeer de instellingen voor de database-sleutel
  • Logboekregistratie en foutafhandeling
  • Definieer de acties die op de database-tabel kunnen worden uitgevoerd
  • Raadpleeg databases direct
  • Verbind met en visualiseer database-XML-gegevens in tabellen
  • Sorteer de invoerelementen van de database

Tools voor het in kaart brengen van databases

MapForce is een tool voor data-integratie en ETL (Extract, Transform, Load) met uitgebreide ondersteuning voor databaseconversie. U kunt gegevens converteren tussen vrijwel elke combinatie van databases en XML, JSON, PDF, CSV en andere platte bestanden, EDI, Excel, protobuf, XBRL, webdiensten, Shopify/GraphQL en zelfs andere databaseformaten.

Wanneer u een database structuur in het ontwerpvenster laadt, interpreteert MapForce automatisch het databaseschema, stelt u in staat om beschikbare databasetabellen en -weergaven te selecteren, en herkent het de relaties tussen de tabellen. U kunt de database structuur vervolgens visueel bekijken.

Grafische database-mapping in MapForce om databasegegevens eenvoudig te integreren

Zodra u alle benodigde contentmodellen voor uw database-mapping heeft ingeladen, kunt u de mapping voltooien door eenvoudig verbindingslijnen tussen de bron- en doelstructuren te slepen.

Ondersteund relationeel databases: databases: databanken

  • Firebird
  • IBM DB2 for iSeries®
  • IBM DB2®
  • Informix®
  • MariaDB
  • Microsoft Access™
  • Microsoft® Azure SQL
  • Microsoft® SQL Server®
  • MySQL®
  • Oracle®
  • PostgreSQL
  • Progress OpenEdge
  • SQLite
  • Sybase® ASE
  • Teradata

Ondersteunde NoSQL databases:

  • MongoDB
  • CouchDB
  • Microsoft Azure Cosmos DB

MapForce ondersteunt alle belangrijke relationele databases, evenals populaire NoSQL-databases, waardoor u grafische database-mapping ontwerpen kunt maken tussen brondata van databases, databewerkingfuncties en filters, en andere datastructuren van verschillende types. Dit maakt het mogelijk om veelvoorkomende database-migratiescenario's te ondersteunen, zoals van MySQL naar PostgreSQL, evenals talloze andere mogelijkheden, waaronder één-op-veel-relaties en gekoppelde datatransformaties.

Tools voor het extraheren, transformeren en laden van data in databases

MapForce bevat krachtige ETL-tools voor het schrijven van data naar SQL- en NoSQL-databases. Dit omvat niet alleen het omzetten van XML, JSON, Shopify/GraphQL en andere dataformaten naar databases, maar ook het omzetten van data van het ene databasetype naar een ander, bijvoorbeeld na een fusie en overname of een systeemmigratie.

  • Uittreken: Zodra de verbinding is gemaakt, leest MapForce de gegevens uit elk ondersteund bronformaat voor het uitvoeren van de extractie.
  • Transformatie: MapForce ondersteunt een breed scala aan transformatiefuncties, waaronder tekstbewerking, wiskundige bewerkingen, datumconversies en meer. Daarnaast biedt het ook mogelijkheden voor aangepaste functies en voorwaardelijke logica om complexe transformaties te verwerken.
  • Importeren/laden: MapForce maakt het eenvoudig om verbindingen met doeldatabases te configureren, SQL-scripts te genereren om getransformeerde gegevens in te voegen, en acties zoals invoegen, bijwerken of verwijderen in te stellen om te bepalen hoe gegevens worden geschreven. Dit alles met uitgebreide opties voor foutafhandeling en logging.

Filteren en verwerken van databasegegevens

Veel database-transformaties vereisen het manipuleren van gegevens tussen de bron en de bestemming, gebaseerd op boolean-voorwaarden of SQL- en SQL/XML-statements. Mogelijk moet u logische vergelijkingen uitvoeren, wiskundige berekeningen maken of string-bewerkingen uitvoeren, controleren of databasegegevens een bepaalde waarde hebben, en andere wijzigingen aan de gegevens aanbrengen. In de bovenstaande screenshot worden de databewerkingfuncties weergegeven als de vakken tussen de lijnen die de bron- en doeldatamodellen verbinden.

De functies voor dataverwerking stellen u in staat om geavanceerde databasekoppelingen in real-time te maken, voor een breed scala aan praktische transformatiebehoeften. U kunt bijvoorbeeld databasekoppelingen maken die XML- of EDI-berichten gebruiken om databasegegevens te extraheren op basis van filtercriteria die zijn afkomstig van de XML- of EDI-elementen.

Directe databaseconversie

Zodra uw mapping is gedefinieerd, stelt de ingebouwde MapForce-engine u in staat om de resultaten met één klik te bekijken en op te slaan.

Database-naar-XML-koppelingen produceren een XML-uitvoerbestand. Database-naar-plattekst-koppelingen hebben een uitvoer in CSV- of tekstbestanden met een vaste lengte. Koppelingen van databases naar EDI kunnen EDIFACT-, X12- of HL7-berichten genereren. Database-naar-.. Excel Het systeem genereert Office Open XML (OOXML)-bestanden en maakt koppelingen naar XBRL, waardoor XBRL-rapporten voor financiële gegevens kunnen worden gegenereerd.

De mapping naar een database genereert uitvoer in de vorm van SQL-scripts (bijvoorbeeld SELECT-, INSERT-, UPDATE- en DELETE-statements) of NoSQL-scripts, die direct vanuit MapForce worden uitgevoerd op uw doeldatabase.

Naast de directe transformatie, ETL-oplossing met hoge prestaties Is beschikbaar via MapForce Server.

Loggen (of traceren) van de output van de database

Met behulp van database-output tracing is het eenvoudig om alle wijzigingen die een mapping- of ETL-project aanbrengt in de database vast te leggen, terwijl de mapping wordt uitgevoerd.

Wanneer het traceren is ingeschakeld, worden gebeurtenissen zoals database-invoegingen of -wijzigingen, of fouten, vastgelegd in een XML-bestand. Dit bestand kan u later analyseren of op een geautomatiseerde manier verder verwerken.

Het volgen van databaseactiviteit kan worden ingeschakeld op het niveau van de databasecomponent, de tabel, de opgeslagen procedure of het databaseveld. U kunt ervoor kiezen om alle berichten te volgen, of alleen fouten, of u kunt het volgen volledig uitschakelen.

Zodra u het gewenste traceerniveau heeft geselecteerd, wordt het betreffende databasecomponent in het mappingproject uitgebreid met een XML-structuur die de logstructuur weergeeft. Als u de logbestanden liever in een ander formaat dan XML wilt, kunt u de gegevens uit het bestand mappen naar een ander gegevensformaat dat door MapForce wordt ondersteund (bijvoorbeeld een tekstbestand of zelfs een andere database).

Wanneer de ontwikkelaar op de knop "Output" klikt om het resultaat van de mapping te bekijken, kan hij ook een voorbeeld zien van hoe het traceerlog eruit zal zien wanneer de mapping wordt uitgevoerd.

Database-tracking om loggegevens te genereren voor database-extractie, -transformatie en -lading (ETL)

Behandeling van fouten bij database transacties

MapForce biedt ook ondersteuning voor database-transacties, waardoor een foutieve bewerking in de databaseconversie ongedaan kan worden gemaakt. In geval van een fout kan de bewerking dus worden teruggedraaid, en eventueel kan de rest van de conversie worden voortgezet.

Soms treedt er een fout op die de rest van het database-mappingproces niet verhindert, bijvoorbeeld wanneer bepaalde databasebeperkingen voorkomen dat het ETL-proces ongeldige gegevens invoegt of bijwerkt.

Het inschakelen van transactieverwerking voor databases zorgt ervoor dat alle wijzigingen die door het databasecomponent worden aangebracht, worden omgeven door een transactie. In geval van een fout wordt deze transactie teruggedraaid. U kunt ervoor kiezen om door te gaan met de rest van de mapping of om de verdere uitvoering van de mapping te stoppen. U kunt transacties inschakelen op het niveau van het databasecomponent en op het niveau van de tabelactie.

Het mogelijk maken van database transacties voor foutafhandeling

Dit is erg handig wanneer de ontwerper van de data-omzetting geldige inkomende gegevens wil vastleggen en ongeldige gegevens simpelweg wil negeren.

Geavanceerde database-mapping en ETL-processen

Voor gebruikers die met SQL werken, bevat MapForce een tabblad "Database Query" waarmee directe databasequery's kunnen worden uitgevoerd. Wanneer u verbinding maakt met een database via dit tabblad, toont MapForce de tabellen van de database in een hiërarchische boomstructuur in het venster van de browser.

Raadpleeg de database terwijl u een conversiemapping voor de database definieert

U kunt vervolgens het tabblad "SQL-editor" gebruiken om SQL- of SQL/XML-statements weer te geven, te bewerken en uit te voeren. Dit kan door bestaande SQL-bestanden te openen, of door SQL-statements vanaf nul te creëren met behulp van drag-and-drop-functionaliteit en automatische suggesties.

U kunt uw SQL-script uitvoeren en de resultaten in tabelvorm bekijken. U kunt zowel de opgehaalde gegevens als het SQL-script afzonderlijk opslaan in aparte bestanden.

Instellingen voor de database-sleutel

De database-sleutelinstellingen in MapForce stellen u in staat om te bepalen hoe primaire en externe sleutelwaarden worden toegevoegd aan een database die als doel dient voor de datamapping. U kunt zelf waarden voor de sleutels invoeren binnen MapForce, of u kunt het databasesysteem de taak laten om automatisch waarden te genereren.

In situaties waarin de primaire en/of externe sleutelrelaties niet expliciet zijn gedefinieerd in uw databasetabellen, stelt MapForce u in staat om deze relaties direct te definiëren, zonder dat dit invloed heeft op de brongegevens.

Definieer de acties die op de database tabel kunnen worden uitgevoerd

Wanneer u gegevens naar een database importeert, stelt MapForce u in staat om database-acties te selecteren, waarmee u kunt bepalen hoe de gegevens naar de database worden geschreven. Dit geeft u volledige flexibiliteit om de meest geavanceerde taken op het gebied van gegevensbeheer te automatiseren.

Het gebruiksvriendelijke dialoogvenster "Database Tabel Acties" stelt u in staat om de kolommen binnen de geselecteerde tabel te definiëren die gebruikt worden om te bepalen welke actie (INVOEGEN, UPDATEN, VERWIJDEREN) in de database moet worden uitgevoerd.

Dit biedt ongekende flexibiliteit bij het bewerken van databasegegevens in reactie op XML, databases, EDI, XBRL, platte bestanden, Excel, JSON, JSON5, webdiensten of andere databasegegevens, allemaal via MapForce.

Ondersteuning voor SQL-opgeslagen procedures

MapForce biedt uitgebreide ondersteuning voor opgeslagen procedures, zowel als invoercomponenten (procedures die resultaten leveren) of als uitvoercomponenten (procedures die gegevens invoegen of bijwerken). Bovendien kunnen opgeslagen procedures worden gebruikt als een functie-achtige aanroep, waardoor gebruikers invoergegevens kunnen aanleveren, de opgeslagen procedure kunnen uitvoeren en de uitvoergegevens kunnen lezen en toewijzen aan andere componenten.

Deze screenshot toont hoe een opgeslagen procedure in SQL Server wordt gebruikt om een XML-bestand te genereren. De procedure retourneert een tabel met gegevens die alle managers in de hiërarchie boven de opgegeven medewerker-ID weergeeft. Deze medewerker-ID wordt als een invoerparameter opgegeven – in dit voorbeeld de constante 67.

De parameter kan ook worden aangeleverd als een berekende waarde of als een data-element dat elders in de database is opgeslagen.

MapForce biedt een contextmenu waarmee gebruikers de opgeslagen procedure kunnen uitvoeren om de datastructuur weer te geven, die gebruikt wordt voor het maken van de mapping. Het uitvoeren van de getoonde mapping genereert de XML-uitvoer.

Geavanceerde tools voor data-mapping omvatten ondersteuning voor opgeslagen procedures

Kaartgegevens in XML-formaat opgeslagen in databasevelden

MapForce stelt u ook in staat om verbinding te maken met en te mappen XML-gegevens die zijn opgeslagen in velden van relationele databases (momenteel ondersteund voor SQL Server en IBM DB2). U wijst eenvoudigweg een XML-schema toe aan het veld – ofwel een schema dat is geregistreerd in de database, of een schema van uw lokale bestandssysteem – en MapForce toont dit schema als een subboom van het databaseveld, zodat u het kunt gebruiken voor het maken van mappings.

Sorteer de invoercomponenten van de database

SQL-query's die binnen de database worden uitgevoerd, zijn niet altijd voldoende voor complexe datatransformaties. MapForce biedt extra functionaliteit voor het sorteren van gegevens in de database via de SQL-WHERE/ORDER-component. Dit is handig voor database-invoer die extra verwerking vereist, of wanneer andere gegevens of voorwaarden in de transformatie de sorteervolgorde van de dataregels beïnvloeden.

Ondersteuning voor NULL-waarden in database-tabelbewerkingen

Het dialoogvenster "Database tabelacties" ondersteunt het vergelijken van NULL-waarden. Vergelijkingen die rekening houden met NULL-waarden bieden een verbeterde manier om databases te verwerken die NULL-waarden bevatten. MapForce-gebruikers kunnen een database-mapping configureren, zodat de gegevensvergelijking op een manier plaatsvindt die rekening houdt met NULL-waarden, en dit gebeurt volgens regels die van toepassing zijn op het type database dat bij de mapping betrokken is.

De datamapping die aan de rechterkant wordt weergegeven, is bedoeld om de doel-tabel bij te werken zonder dubbele vermeldingen toe te voegen. Beide tabellen zijn zo gedefinieerd dat het e-mailveld een NULL-waarde kan bevatten, waardoor er in elke tabel overeenkomende naamvermeldingen met een NULL-waarde in het e-mailveld kunnen bestaan.

Door op het pictogram "Acties" naast de database tabel "TARGET" te klikken, wordt het dialoogvenster "Database Acties" geopend. Het vakje "NULL gelijk aan" naast het e-mailveld stelt MapForce in staat om NULL-waarden in de bron en de doelbestemming als gelijk te behandelen voor data-mappingdoeleinden, zelfs als ze volgens de database-regels niet als gelijk worden beschouwd.

Database-mapping met ondersteuning voor null-waarden in MapForce

Database naar XML

MapForce ondersteunt het koppelen van databases aan XML-bestanden, of andersom, op basis van XML-schema's of DTD-contentmodellen. Om een databasekoppeling naar of vanuit XML te maken, importeert u eenvoudig een XML-schema en een database in MapForce en sleept u verbindingslijnen tussen XML-elementen en databaseobjecten.

Als er geen bijbehorend schema is voor een XML-instantiedocument, genereert MapForce een XML-schema op basis van dat XML-instantiedocument.

MapForce: XML-database mapping

Ondersteuning voor XML-wildcards

Het `<xs:any>`-element en `<xs:anyAttribute>` in een XML-schemaontwerp maken het mogelijk om elk nieuw element of attribuut op de overeenkomstige locatie in een XML-instantiedocument te plaatsen, zelfs als het nieuwe element of attribuut niet is gedefinieerd in het XML-schema. Dit staat bekend als een XML-wildcard en is een veelgebruikte methode om een zekere mate van aanpassing mogelijk te maken in veel XML-schema's die industriestandaarden ondersteunen voor een breed scala aan bedrijven.

MapForce ondersteunt `<xs:any>` en `<xs:anyAttribute>` voor het omzetten naar uitvoer in XML of een ander uitvoerformaat. Een nieuwe selectieknop naast `<xs:any>` of `<xs:anyAttribute>` in een XML-mappingcomponent opent een dialoogvenster voor het selecteren van jokertekens.

Het `<xs:any>`-element, evenals `<xs:anyAttribute>`, worden veel gebruikt bij het ontwerpen van XML-schema's, en de ondersteuning hiervan in MapForce is een veelvoorkomend verzoek van gebruikers.

Leer hoe u databasegegevens kunt omzetten naar XML en andere formaten in MapForce

JSON-databasekoppeling

MapForce biedt ondersteuning voor het definiëren en uitvoeren van database-mappingen op basis van JSON-modellen (JavaScript Object Notation). U kunt JSON-instantiebestanden of JSON-schema's toevoegen als bron- of doelcomponenten van een database-mapping. MapForce leest en schrijft JSON-bestanden op basis van het JSON Draft 04-schema.

Zoals hieronder te zien is, worden JSON-componenten weergegeven met de juiste syntaxis en hun datatypes worden duidelijk aangegeven.

Converteer databasegegevens naar JSON in MapForce

Functies voor dataverwerking uit de MapForce-functiebibliotheek kunnen worden gebruikt om JSON-gegevens te transformeren, net zoals ze worden gebruikt met andere componenten.

Automatisch JSON-schema's genereren

Wanneer u een JSON- of JSON5-bestand toevoegt aan een database-mapping, detecteert MapForce automatisch of het een schema- of een instantiebestand is. Voor JSON- of JSON5-instantiebestanden vraagt MapForce u om een schema te selecteren of om er automatisch één te genereren. MapForce gebruikt het JSON- of JSON5-schema om de structuur van het component te construeren.

Hoge prestaties bij data-integratie en automatisering van ETL-processen

Altova MapForce Server bevat de ingebouwde datatransformatie-engine die is ontwikkeld voor MapForce en is aanzienlijk verbeterd om te kunnen functioneren in serveromgevingen. MapForce Server voert.. gegevensomzettingen voor elke combinatie van XML, PDF, databases, EDI, XBRL, platte bestanden, Excel, JSON en/of webdiensten, met behulp van vooraf verwerkte en geoptimaliseerde datamappingen die zijn opgeslagen in uitvoeringsbestanden, gebaseerd op.. gegevenskoppelingen die in MapForce zijn gedefinieerdMapForce Server brengt data-extractie, transformatie en laden (ETL) naar een hoger niveau met serverfunctionaliteiten, waaronder parallelle verwerking, multi-threading, bulk-SQL-inserts, ondersteuning voor verschillende platforms en meer.

Voorbewerking maakt snellere prestaties en een kleiner geheugengebruik mogelijk voor de meeste datatransformaties. MapForce Server wordt beheerd door FlowForce Server en kan op verschillende manieren worden gebruikt: als een standalone configuratie die via de commandoregel wordt uitgevoerd, of programmatisch via een API.

Nadat een MapForce-mapping is ontworpen en getest, kan deze worden uitgevoerd door MapForce Server om bedrijfsprocessen te automatiseren die repetitieve datatransformaties vereisen.

Automatiseer taken voor het in kaart brengen van databases met behulp van MapForce

MapForce verwerkt en optimaliseert datamappingen, slaat ze op in uitvoerbestanden voor MapForce Server, zodat MapForce Server ze via de commandoregel kan uitvoeren, en uploadt ze voor gebruik in taken van FlowForce Server.

Wanneer MapForce Server wordt beheerd door FlowForce Server, worden de datamappingen en ETL-processen uitgevoerd als stappen binnen een FlowForce Server-taak, gebaseerd op triggers die zijn gedefinieerd als onderdeel van die FlowForce Server-taak. Bijvoorbeeld, een nieuw XBRL-document komt in een map terecht, wat een meerstaps FlowForce Server-taak activeert. Deze taak valideert eerst het bestand met behulp van RaptorXML+XBRL Server, en voert vervolgens MapForce Server uit om bepaalde gegevens uit het XBRL-bestand te extraheren en deze in een database op te slaan.

MapForce Server ondersteunt het bulk-invoegen van gegevens voor databases

"Bulk Insert" is een functie die beschikbaar is voor bepaalde databases en waarmee een grote hoeveelheid data in één keer in een databasetabel kan worden ingevoegd, in plaats van de gebruikelijke methode waarbij voor elke rij een afzonderlijke "Insert"-instructie wordt gebruikt. Omdat de verwerkingsbelasting voor de database-engine aanzienlijk wordt verminderd, is de prestatie veel sneller. Tests met MapForce Server, met behulp van enkele voorbeelden, hebben aangetoond dat "Bulk Insert" meer dan 10 keer sneller kan zijn dan het gebruik van individuele "Insert"-instructies.

Bulk Insert is ook voordelig in omgevingen met meerdere gebruikers. Een lange reeks "Insert"-commando's die door één gebruiker naar de database worden verzonden, kan potentieel worden onderbroken door een andere gebruiker die een "Select"-verzoek naar dezelfde tabel stuurt. In dat geval zou de reeks "Insert"-commando's worden hervat. In een dergelijke situatie zou de "Select"-operatie leiden tot onvolledige of ongeldige gegevens.