Rondreis op een modern dataplatform met Azure Synapse Analytics e

/

September 12, 2024

Kevin Chant is Lead BI & Analytics Architect en schrijft blogs die een rondreis vormen op een modern dataplatform met Azure Synapse Analytics en Azure DevOps. Lees hier deel 1 of bekijk de vacatures.
Naar vacatures
 
 

Modern dataplatform met Azure Synapse Analytics en Azure DevOps

Dit artikel is deel één van twee blogs die samen een inkijk geven in een modern dataplatform met Azure Synapse Analytics en Azure DevOps. Het doel van deze serie is om je vertrouwd te maken met moderne dataplatforms als Azure Synapse Analytics(externe link) en je de voordelen te laten zien van de integratie met Azure DevOps. In dit eerste blog geef ik een korte inleiding tot Azure Synapse Analytics, met name vanuit het perspectief van Synapse Studio, en een rondleiding in de vorm van een stoomcursus van vijf minuten.

Inleiding tot Azure Synapse Analytics

Een aantal van jullie vraagt zich waarschijnlijk af: “Wat is Azure Synapse Analytics”?
Kort gezegd: dat is een nieuwe geïntegreerde dienst van Microsoft. Het doel van deze dienst is om gegevensintegratie, big data-analyses en datawarehousing onder één dak te brengen, in plaats van gebruik te maken van verschillende diensten.
In het verleden zou je bijvoorbeeld Azure Data Factory gebruiken om data via pipelining naar binnen te halen. Daarna zou je daar analyses op loslaten door gebruik te maken van Spark-clusters in Azure Databricks en/of de data dan, zoals hieronder aangegeven, voor langere tijd opslaan in een Azure SQL Datawarehouse.

Azure-Synapse-Analytics

Eén oplossing voor het integreren, analyseren en opslaan van data.
Met Azure Synapse Analytics kun je deze drie handelingen nu tegelijk doen.

Azure-Synapse-Analytics-2

Integratie, analyses en opslag in Azure Synapse Analytics

Gegevensintegratie

Het integreren van data met Azure Synapse Analytics kan zowel intern (met gebruik van eigen pipelines) als extern (door gebruik te maken van diensten als Azure Data Factory). De pipelines in Azure Synapse Analytics lijken overigens sterk op die in Azure Data Factory. Het verschil is dat je bij Azure Synapse Analytics geen SSIS Integration Runtime kunt gebruiken.
Je kunt data echter wel op andere manieren in Azure Synapse Analytics integreren. Zo is het bij sommige Azure-diensten mogelijk om een zogeheten Azure Synapse Link te creëren, zodat je data vrijwel in realtime kunt integreren.
Sterker nog, Microsoft kwam onlangs met een nieuwe koppeling tussen Azure Synapse Analytics en Dataverse(externe link). Met deze koppeling kan Azure Synapse vrijwel in realtime data vanuit Microsoft Dataverse(externe link) integreren.
Microsoft biedt uitgebreide documentatie over hoe dit werkt. Een van de populairste methoden die Microsoft beschrijft, is hoe je data in Azure Synapse Analytics laadt met behulp van Azure Data Factory of een Synapse-pipeline(externe link).
Wat ik fijn vind aan Azure Synapse Analytics, is dat het andere manieren biedt om nieuwe data te integreren, maar dat het tegelijkertijd ook de vertrouwde methoden ondersteunt.

Big data-analyses

Voor het analyseren van big data hoef je geen afzonderlijke cloudoplossingen meer op te tuigen. Dat is allemaal al in de suite inbegrepen. Daarnaast biedt Azure Synapse Analytics een heel scala aan oplossingen. Zo kun je met Azure Synapse bijvoorbeeld Apache Spark-pools creëren die in Azure Synapse worden gehost. Hiermee profiteer je van de bekende en grootste open-sourcestandaard voor big data met verschillende soorten runtimes. Om degenen die vooral met Azure Databricks hebben gewerkt een handje te helpen met de terminologie: Apache Spark-groepen in Azure Synapse zijn vergelijkbaar met de Spark-clusters van Azure Databricks; ook al worden ze onafhankelijk gehost en beheerd. Je leest er meer over in de handleiding van Microsoft over Apache Spark in Azure Synapse Analytics(externe link).

Datawarehousing

Azure Synapse Analytics bevat een datawarehouse dat uses cases mogelijk maakt waarbij historische en in hoge mate gestandaardiseerde en verzamelde data van essentieel belang zijn. Daarvoor kan er bijvoorbeeld gebruik worden gemaakt van Azure SQL-pools. Binnen Azure Synapse kun je gebruikmaken van dedicated SQL-pools of serverloze pools. Dedicated SQL-pools stonden voorheen bekend als Azure SQL Datawarehouse. Een dedicated pool komt in feite neer op een ingerichte pool die voor jou draaiende wordt gehouden en waar je permanent voor betaalt. Serverloze SQL-pools zijn een interessant aspect binnen Azure Synapse Analytics. Voor de beeldvorming: je kunt ze zien als Spark-pools die T-SQL-instructies uitvoeren.
Ik had ook serverloze SQL-pools in het analysegedeelte kunnen opnemen. Deze kunnen namelijk gebruikt worden voor het analyseren van de data die in Data Lake Storage is opgeslagen. Dat gebeurt dan in de T-SQL-taal die de kenners van SQL Server welbekend is. Je kunt ze echter ook gebruiken om een logisch datawarehouse te creëren. Het leek me daarom goed om ze te vermelden in combinatie met de dedicated SQL-pools. Door ruwe data in Data Lake Storage op te slaan en daar vervolgens een logische structuur in aan te brengen, kun je er makkelijker query’s in T-SQL-taal in uitvoeren.
Je kunt indien nodig SQL-pools opzetten en deze weer opheffen als je ze niet meer nodig hebt. Het is wel belangrijk om te weten dat serverloze pools minder uitgebreide functies hebben dan de dedicated SQL-pools. Maar als je deze tekortkomingen kent en er verstandig mee omgaat, dan kun je op den duur veel kosten besparen.

Andere integraties

Behalve dat je met Azure Synapse Analytics over een volledig geïntegreerde interne oplossing beschikt, kun je het ook nog integreren met een heel scala aan externe Azure-diensten. Zo kun je het koppelen aan Cosmos DB voor hybride analyseverwerking. Daarbij kan Azure Synapse Analytics data van Cosmos DB naar binnen halen zonder de werklast ervan te belasten.

Synapse-werkruimte

Voor het beheer van Azure Synapse Analytics maak je doorgaans een Azure Synapse-werkruimte aan. Je moet je dit voorstellen als een logische server waarop je je Azure Synapse Analytics-omgeving opslaat. Je leest er meer over in het Azure Synapse Analytics-terminologie-bestand van Microsoft(externe link).

Azure Portal

Hieronder zie je hoe een Azure Synapse Analytics-werkruimte er op dit moment uitziet in de Microsoft Azure Portal. Deze portal omvat ook de nieuwste mogelijkheid om Data Explorer-pools toe te voegen. Zoals je ziet, heeft het veel weg van andere diensten in Azure.

Azure Synapse in de Azure Portal

Azure Synapse in de Azure Portal

Op de overzichtspagina zie je behalve de werkruimte ook een link naar Azure Data Lake Storage Generation 2. Dit is een vereiste van Azure Synapse Analytics en kan worden gebruikt voor de opslag van bestanden waaraan wordt gewerkt. Daarnaast zie je twee eindpunten voor de dedicated en de serverloze pools. Hiermee kun je verbinding maken met zowel de dedicated SQL-pools als met alle serverloze SQL-pools die je op afstand hebt gemaakt. Verder zie je nog een gebruikersnaam van de systeembeheerder voor de SQL-runtime. (Ook al adviseert Microsoft tegenwoordig om in plaats daarvan gebruik te maken van verificatie via Azure Active Directory. Het is goed om deze eindpunten en referenties in gedachten te houden voor wanneer we het gaan hebben over het gebruik van continue integratie en levering (CI/CD). Kijk je naar alle opties aan de linkerkant van de Azure Portal, dan vallen daar verschillende dingen op. Zoals de SQL-pools en de Spark-pools die speciaal voor deze werkruimte zijn geconfigureerd. Verder zien we hier een hele reeks aan beveiligingsinstellingen die bij de dienst horen, waaronder goedgekeurde Azure AD-tenants die voor de Azure-systeembeheerders van belang kunnen zijn.

Synapse Studio

Je zult je nu misschien afvragen: “Hoe in hemelsnaam kunnen we nu alles dat Kevin hierboven beschrijft, gaan beheren?” Geen zorgen: dat kan met behulp van Azure Synapse Studio, een beheeromgeving die standaard bij Azure Synapse Analytics is inbegrepen. Links van de SQL-eindpunten zie je de URL van de werkruimte. Via deze URL krijg je toegang tot Synapse Studio. Eenmaal in Synapse Studio kun je naar verschillende onderdelen navigeren. In goed jargon heten deze onderdelen ‘hubs’. Je ziet ze hieronder.

hubs van Synapse Studio

De hubs van Synapse Studio

Om niet opnieuw het wiel uit te vinden, verwijs ik je hier naar een eerder geschreven blog met daarin een stoomcursus van vijf minuten over Synapse Studio(externe link). Een handig blog om te lezen als je snel met Synapse Studio aan de slag wilt gaan. Ik raad het je beslist aan, zodat je een idee krijgt van wat je zoal in Synapse Studio kunt doen. Wil je een voorbeeld zien van de toepassing van Git-integratie? Lees dan mijn blog over het configureren van je persoonlijke Azure DevOps-organisatie voor Azure Synapse Studio Git-integratie(externe link). Af en toe publiceer ik ook andere artikelen over Azure Synapse Analytics. Het meest recente gaat over de manier waarop je CI/CD naar serverloze SQL-pools kunt uitvoeren. Daarvoor kun je namelijk geen traditionele SSDT-methode gebruiken. Je leest er meer over in mijn blogs over Azure Synapse Analytics(externe link).

Tot slot over deel 1

In het volgende blog geef ik een korte inleiding tot Azure DevOps. Daarin leg ik uit hoe je Azure DevOps kunt gebruiken in combinatie met Azure Synapse Analytics om de implementatieketen te versterken, en dat te herhalen dankzij gestandaardiseerde bouwstenen en automatisering.

Verder met Azure DevOps

Meer weten? Over twee weken in het volgende blog geef ik een korte inleiding tot Azure DevOps. Daarin leg ik uit hoe je Azure DevOps kunt gebruiken in combinatie met Azure Synapse Analytics om de implementatieketen te versterken, en dat te herhalen dankzij gestandaardiseerde bouwstenen en automatisering. 

Wil jij iedere dag leren en kunnen sparren met vakgenoten? Neem gerust contact op, ik vertel je er graag meer over. Of bekijk de vacatures.

Naar vacatures

Maaike
Maaike Somers

Recruiter