Azure Synapse Analytics

In onze vorige blogs hebben wij het gehad over wat Azure is en het cloud-principe uitgelegd ten opzichte van on-premises. Ook hebben we enkele van de Azure data tools toegelicht en uitgelegd hoe Peacock het ETL-proces aanvliegt met deze tools. Een vervolgstap is een blog over de toekomst van het ETL-proces, namelijk de end-to-end datawarehouse oplossing; Azure Synapse Analytics. In dit blog vertellen wij u wat Synapse Analytics is, wat de voordelen zijn en geven wij u een best practice.

Wat is Azure Synapse Analytics?

Azure Synapse Analytics is een end-to-end datawarehouse oplossing (platform) waarin het ontsluiten, transformeren, opslaan en het in Power BI visualiseren van data binnen dezelfde schil van Synapse mogelijk is. Verder zijn alle SQL functionaliteiten geïntegreerd vanuit het voorheen bekende Azure SQL Data Warehouse. Synapse is volledig opgebouwd op het Azure Data Lake.

Synapse

Azure Synapse Analytics is een oneindige analyseservice waarin een gegevensintegratie, een bedrijfsgegevensopslag en big data-analyses zijn gecombineerd. Dit geeft u de vrijheid om onder uw eigen voorwaarden en op schaal query's op gegevens uit voeren met behulp van serverloze of toegewezen resources. In Azure Synapse komen deze werelden bij elkaar met een uniforme ervaring om gegevens op te nemen, te verkennen, voor te bereiden, te beheren en te leveren voor directe BI- en machine learning-behoeften.

Definitie Microsoft

In tegenstelling tot Azure SQL Data Warehouse zijn in Synapse Analytics functionaliteiten van Data Factory en Databrick samengevoegd. In dit Data Warehouse kon het ETL-proces alleen met SQL query’s worden ingericht. Nu kan de data ook in de notebooks worden bewerkt met programmeertalen zoals Python en Spark SQL. Daarnaast is ook Power BI volledig met deze oplossing geïntegreerd. U heeft met Synapse Analytics direct het hele ETL-proces tot uw beschikking plus de visualisatie laag!

Voordelen van Azure Synapse Analytics?

 
  1.  Alles in één
    Door het aanbieden van een oplossing met alle componenten van een datawarehouse, is het voor organisaties geen uitdaging meer om alle diensten/tools te combineren voor analyses. Binnen Synapse heb je namelijk volledige integratie met 150+ datasets. Voorheen moest je de integratie via een API-call doen of zelf een script schrijven in Data Factory, maar dat is nu door de goede integraties niet meer nodig.

  2. Makkelijker te monitoren
    Op één plek binnen deze oplossing kunt u alles monitoren. Bijvoorbeeld:
    – Eén overzicht van alle kosten en onderverdeling van de kosten per product
    – Eén overzicht of alle geplande taken (schedules) goed zijn uitgevoerd > monitoring van alerts en logs
    – Eén overzicht van alle endpoints en connectiviteit
    – Eén overzicht van alle (bewerkings)activiteiten
    – Security > firewall, encryption en auditing op één plek

  3. Toegangsbeheer
    Vanuit één plek hoeft u maar in te richten wie welke rol binnen Synapse krijgt. U verleent de juiste toegang aan beheerders, ontwikkelaars, beveiligingspersoneel en operators tot rekensources en gegevens.

  4. Geïntegreerde versiebeheer in DevOps
    Dit maakt het makkelijk om (tegelijk) samen te werken. Verlies geen werk en deploy (automatisch) werk naar productieomgeving.

  5. Integratie Power BI
    U maakt uw rapporten en datasets eenvoudig binnen uw datawarehouse. Power BI ontwikkelaars kunnen gemakkelijk met elkaar samenwerken.

  6. Verschillende templates
    Dit zijn voorontwikkelde datasets, notebooks, SQL-scripts of pipelines voor veel voorkomende processen in Synapse.

Beste practice Synapse Analytics

Het ophalen van data doet u voor zowel Synapse Analytics als het ‘oude’ ETL-proces op dezelfde manier. De data ophalen doet u met de standaard koppelingen of custom scripts (ingest). Deze data worden vervolgens opgeslagen in de Data Lake (store). De opgeslagen data worden vervolgens bewerkt (prepare). Hierin heeft u twee keuzes:

1. Notebooks

U bewerkt de data in notebooks; een script waarin u verschillende programmeertalen kunt gebruiken, zoals Python, Spark (scala), .net Spark en Spark SQL. U bewerkt de data dus met behulp van programmeertalen. U betaalt hiervoor €0,12 per vCore-uur.

2. Pipline maken

De pipeline is eigenlijk de Azure Synapse variant van de SSIS-package. U stelt een flow samen op basis van verschillende opvolgende activiteiten zoals een data flow, copy data, for each loop, filter, if/else condition, maar ook het uitvoeren van notebooks kan in een pipeline. De pipelines kunnen in serie of parallel gepland worden uitgevoerd.

Opslaan van data in Azure Synapse Analytics

Data bewerkt? Voorheen werden de getransformeerde data opgeslagen in een SQL-database, waarop u als organisaties uw rapportages en dashboard kon ontwikkelen. Binnen Synapse Analytics gebeurt dit iets anders. U heeft namelijk twee manieren om de data op te slaan en vervolgens beschikbaar te stellen:

1. Serverless

De data worden in een databasestructuur in de Data Lake opgeslagen. Niet in een plat tekstbestand, maar in een Parquet-file. U wilt natuurlijk de datatypes bewaren en niet iedere keer opnieuw de settings van de data definiëren. De Parquet-file bevat tabellen kolommen met gestructureerde data en de data types en relaties zijn gedefinieerd.

U heeft geen vaste resources tot uw beschikking, maar u betaalt per gebruikte resources (query); €4,21 per TB aan verwerkte gegevens. Voordelen zijn dat het laagdrempelig is om in te stappen en het datawarehouse al is opgezet, maar de kosten kunnen bij veel gebruik oplopen. Voor elke query die u runt om bijvoorbeeld een visueel te openen, betaalt u. 

2. Dedicated

De data worden in de geïntegreerde SQL-database in Synapse opgeslagen. De gestructureerde data staan dan in SQL-tabellen, dit format lijkt op een Parquet-file. De query performances kan alleen bij dedicated en niet bij serverless. Dit is een groot voordeel van dedicated. Indexeren en positionering van big data is bij dedicated beter dan bij serverless. Wanneer u een tabel heeft met minder dan 15 miljoen rijen, ervaart u weinig verschil tussen beide oplossingen.

Bij dedicated heeft u vaste resouces tot uw beschikking en deze kunt u onbeperkt gebruiken. U betaalt per uur een bedrag; €1,01/uur tot €303,58/uur afhankelijk van de gekozen hoeveelheid resources. Voordeel is dat u weet wat u kwijt bent qua kosten, nadeel is dat wanneer u er geen gebruik van maakt er wel voor betaalt. Daarop is iets bedacht en dat is de Pause and Resume mogelijkheid. Op ieder gewenst moment kunt u uw resources op pauze zetten. Daardoor betaalt u niet continu voor de resources. Echter, op het moment van pauze is de data ook niet beschikbaar. Binnen Peacock hebben wij hiervoor een oplossing ontwikkeld. Deze houdt in gaten of de dedicated pool wel query’s verwerkt en bij inactiviteit wordt de pool automatisch gepauzeerd. 

Uiteindelijk maakt u vanuit de Parquet-files of SQL-tabellen direct uw rapportages in Power BI. Power BI is m.b.t. gebruikersvriendelijkheid en prijs laagdrempelig. Heeft u een groot datamodel, dan is Azure Analyses Services een betere oplossing. Dit is een robuuste oplossing die ook direct verbindt met uw Synapse omgeving. 

Benieuwd of Azure Synapse Analytics iets voor u is? Neem via onderstaande knop contact met ons op.

Meer informatie?

App mij