29
dec

Data Integratie met Microsoft Azure

De Microsoft Azure stack biedt met DataLakes of Blob Storages, de DataFactory en PolyBase al prima mogelijkheden om verschillende databronnen te ontsluiten, data te verzamelen in de cloud en aan te bieden aan reporting- of analytische tools. Dit alles als services in Azure.

De beweging van on-premise oplossingen naar de cloud lijkt in volle gang. Veel ondernemers zien de voordelen in van de onbegrensde schaalbaarheid, flexibiliteit en een nieuw- hoger niveau van service. Maar hoe doen wij dit bij DataVibes? Voor ons is het belangrijk dat een oplossing duurzaam is en zo min mogelijk (dus geen) handmatige handelingen vereist. Termen die we allemaal kennen zijn natuurlijk ontzorgen en verhogen van de effectiviteit. Technisch is alles mogelijk. Hoe ver de klant data wilt integreren, en hoeveel tijd en geld wilt investeren, bepalen onze grenzen. Er is een verschil tussen simpelweg visualiseren van data, en Business Intelligence. Wij staan voor Business Intelligence.

Business Intelligence richt zich erop inzichten te verschaffen in het presteren van een organisatie. Inzichten die juist niet voor de hand liggen. Sleutel hierin is het combineren van data, want het combineren van zoveel mogelijk data levert een vollediger beeld. Context geeft waarde aan de data. Dit maakt het vak Business Intelligence ook tot een mooie uitdaging. Data is namelijk zelden dusdanig gestructureerd dat hier inzichten uit worden gewonnen. En dan hebben we het nog niet over het combineren van data uit verschillende systemen. Data moet worden gestroomlijnd. Denk hierbij aan granulariteit of het leggen van relaties. Door de diversiteit van brondata, is een degelijke ETL nodig.

Verplaatsen van data – DataFactory

Bronsystemen kunnen op verschillende manieren ontsloten worden. In het belang van een duurzame oplossing willen wij zo dicht mogelijk tegen de bron aan zitten. Met Azure DataFactory kunnen wij rechtstreeks op de bron aansluiten. Officieel wordt de DataFactory gepositioneerd als Data Processing Service en het wordt volledig door Microsoft beheerd. De DataFactory bestaat uit vier lagen:

Eerste laag – dataset

Een dataset bestaat uit de definitie van de bron. Het verwijst naar data die opgehaald dient te worden. Dit kan bijvoorbeeld een tabel in een database zijn. Datasets worden gedefinieerd in JSON. Globaal ziet de opmaak van een dataset er als volgt uit:

   

Een dataset vertegenwoordigd data dat is opgeslagen in een Linked Service.

Tweede laag – Linked Service

Servers worden gedefinieerd in Linked Services. Dit zijn simpel gezegd connection strings met nodige informatie om verbinding te maken. Ook Linked Services worden in JSON gedefinieerd. Voor lokale bronsystemen heeft Azure de Data Management Gateway, waar deze bronnen aan cloud oplossingen kunnen worden verbonden.

Derde laag – Activity

De bewegingen tussen deze servers worden geconfigureerd in pipelines, waar ook de data wordt uitgelegd zodat DataFactory de data kan lezen en schrijven.

Vierde laag – Pipelines

In een pipeline worden datasets, linked services en activities verzameld en geeft mogelijkheid om te automatiseren, monitoren en beheren als geheel. Voor het kopiëren van data tussen verschillende servers heeft DataFactory een copy activity. Globaal bestaat de copy activity uit de volgende stappen:

  1. Data lezen
  2. Data serialiseren/deserialiseren, compimeren/decomprimeren en column mappings
  3. Data schrijven

De Copy Activity wordt ook door middel van JSON geconfigureerd.

In Azure kunnen de Blob Storage of een DataLake worden gebruikt om de data in te verzamelen. Dit zijn grote opslagplaatsen voor ruwe data.

Data structureren – PolyBase en SQL Server

PolyBase is een techniek die zowel gestructureerde als ongestructureerde data kan benaderen met T-SQL. Dit maakt het er uitermate geschikt voor om onze data te structureren. PolyBase kan nog veel meer, zoals Hadoop clusters benaderen. Dit houdt de oplossing ook flexibel. Met PolyBase kunnen we verschillende soorten data op dezelfde manier bekijken en onder dezelfde voorwaarden ophalen. PolyBase wordt opgebouwd met deze onderdelen in het SQL Data Warehouse of SQL Database:

1. Master Key – De encryptie van benodigde credentials.

2. Database Scoped Credential – De specificatie van benodigde authenticatie van een server.

3. External Data Source – De locatie van de server. PolyBase gebruikt Hadoop APIs om data te lezen in Azure Blob storage of DataLake.

4. External File Format – Hierin staat de structuur en de inhoud van de data uitgelegd.

5. Externe Tabel – De locatie van de tabel en de locatie van de data.

Nu er verbinding is tussen ons datawarehouse en de data vanuit verschillende systemen via een DataLake, kan vanuit het SQL Data Warehouse of SQL Database met bekende technieken een datamodel worden opgebouwd. PolyBase maakt externe tabellen aan. In SSMS komen we de volgende folders tegen:

Historie kunnen wij opbouwen door data van twee -of meer- dagen op te slaan in het DataLake of Blob storage. Met het aanmaken van de external tables vergelijken we verschillen in de data en registreren we of een regel een nieuwe INSERT, een UPDATE op een bestaande regel of dat een regel DELETE, dus verwijderd, is.

Datavibes en Azure dataintegratie

De DataVibes collega’s staan voor u klaar om u te helpen met de implementatie van cloud oplossingen met betrekking tot dataintegratie. Uiteraard kunnen wij u eerst adviseren en een plan opstellen voordat uw project start. Ook leveren wij vanuit de DataVibes Academy training en opleiding van (eind) gebruikers om uw collega’s snel op weg te helpen met Azure als dataplatform. Voor meer informatie neem contact met ons op.

Geen reacties

Leave a Comment

Your email address will not be published. Required fields are marked *

Contact