Synapse Analytics | En guide

03.05.2023 | 6 min lesetid

Vi går gjennom hva Azure Synapse Analytics er, hvilke komponenter som utgjør dets økosystem, og hvordan Azure Synapse kan passe inn i en dataplattform-arkitektur. Deretter diskuterer vi hvordan Azure Synapse Analytics posisjonerer seg i markedet sammenlignet med alternative produkter. Vi gir eksperttips om hvordan Azure Synapse Analytics bør brukes for data engineering og maskinlæring. Vi gir også ressurser for å hjelpe deg med å komme i gang.

Hva er Azure Synapse Analytics?

Azure Synapse Analytics er en integrert analyseplattform som sømløst knytter sammen flere kjente Azure-tjenester innenfor data-integrasjon, -lagring, datavarehus, dataanalyse og maskinlæring. Med dette dekkes flere behov fra mange interessenter i samme plattform.

Azure Synapse Analytics er en skyløsning som skalerer sin kapasitet for å balansere kostnader og prosseseringstid - man betaler for konsum av en gitt tjeneste (f.eks. kjøretid for en gitt spørring).

Ideen rundt Azure Synapse Analytics har vært å tilby én plattform for eksisterende og kjente løsninger som bl.a. Azure Data Lake Storage, Azure Data Factory og Azure SQL Data Warehouse - nå pakket inn som integrerte tjenester med nye navn (som f.eks. Pipelines og Provisioned SQL Pools), og krydret med nye tjenester som f.eks. “serverless” datavarehus (On Demand SQL Pools) og støtte for Spark med Provisioned Spark Pools.

Oversikt over Azure Synapse Analytics-arkitekturen
Oversikt over Azure Synapse Analytics-arkitekturen

Hvordan passer Azure Synapse Analytics inn i en moderne dataarkitektur?

Azure Synapse Analytics tilbyr tjenester som dekker flere behov for ulike “use case” og interessenter.

  1. Dataintegrasjon: Azure Synapse Analytics inneholder en tjeneste for dataintegrasjon, dvs. for å hente kildedata, kjent som Azure Synapse Pipelines. Man kan også benytte seg av Azure Data Factory som en enkeltstående komponent om man ikke ønsker å benytte seg av Synapse Analytics sin integrerte løsning - noe som kan være aktuelt da disse to tjenestene avviker noe.
  2. Fleksibilitet: Tjenester i Azure Synapse Analytics støtter flere behov i en moderne dataarkitektur. Valgfriheten gjør at man ikke må binde seg til flere produkter fra ulike tjenesteleverandører med egne vilkår. Ønsker man et lettvekts-datavarehus som ikke krever enorme ressurser for prosessering kan man spinne opp en serverless database med SQL “on demand”, en såkalt On Demand SQL Pool. Trenger man tyngre skyts eller man ser at kjøretid for serverless når en gitt terskel, kan man spinne opp en såkalt Dedicated SQL Pool. Skulle man trenge Spark for prosessering - provisjoner en Spark Pool. Her er det flere redskaper i kjøkkenskuffen.
  3. Integrert plattform: En stor fordel med Azure Synapse Analytics er at man har mulighet for en sømløs integrasjon seg med eksisterende tjenester i Azure, som f.eks. Azure Active Directory, Azure Key Vault, Azure DevOps, Azure Machine Learning og Power BI. Dette kan forkorte tiden for å sette opp funksjonalitet i støttetjenester som sikkerhet- og tilgangsstyring, versjonskontroll og monitorering i Azure Synapse Analytics.
Azure Synapse som en del av en plattform som støtter bruk rettet mot både datavarehus og data science
Azure Synapse som en del av en plattform som støtter bruk rettet mot både datavarehus og data science

Hvordan posisjonerer Azure Synapse Analytics seg mot andre verktøy?

Azure Synapse Analytics kan være et godt alternativ for organisasjoner som allerede benytter Microsoft Azure:

  1. Kjent og testet datavarehus-teknologi: Microsoft har vært lenge i gamet og har hatt store markedsandeler med kjente løsninger i Microsoft SQL Server som Integration Services, Analysis Services og Reporting Services. For mange utviklere vil det være kjente komponenter og funksjoner i Azure Data Factory og Azure Synapse Pipelines som man finner igjen fra SQL Server Integration Services (SSIS). T-SQL vil også være en kjent standard for de fleste utviklere.
  2. Fleksibel kostnadsmodell: Valget av tjenester og behov man har gjør at man kan være prisbevisst. Som de fleste skyløsninger i Azure i data- og analyse så har de en “consumption”-basert prismodell, som innebærer at man betaler for prosseseringstid. Videre kan man velge å låse prisen ved å velge dedikerte ressurser om man har mer statiske behov for prosessering over tid.
  3. Plattformtankegang: Azure Synapse Analytics er en del av Azure som gjør at det er enkelt å sette opp integrasjoner mot andre tjenester. Dette øker samtidig risikoen for vendor lock-in - som man i noe mindre grad er utsatt for med Databricks og Snowflake.

Noen råd fra våre erfarne data engineers før implementering av Azure Synapse Analytics

  1. Planlegg arkitekturen nøye: Gjennomgå og forstå nåværende og fremtidige brukerkrav som setter føringer for tekniske krav. Tenk også tidlig på volum, kompleksitet og design av ende-til-ende dataflyt for å evaluere komponenter som passer arkitekturen.
  2. Velg riktige tjenester for dataintegrasjon og -lagring: Avhengig av tekniske behov så er det ikke nødvendig å gå for Synapse Pipelines. Her kan man fint gå for Azure Data Factory - som enkeltstående tjeneste, på bekostning av annen funksjonalitet som f.eks. å trigge en notebook i Spark Pools. Samme avklaring bør gjøres for datalagring - hvor man har fleksibilitet i tjenester som serverless og dedikerte SQL-databaser.
  3. Skaler ressurser etter behov: Tjenester i Azure Synapse kan skaleres med ressurser etter behov. Planlegg for dette når ressursbehovet øker for prosessering - og tilsvarende nedskalering når ressursbehovet har gått ned.
  4. Sikkerhet og overvåkning: Sikre at du har designet for sikkerhet i tråd med organisasjonens krav og retningslinjer. Dette kan gjelde tilgangsstyring til tjenester, nettverk, lese-tilgang av data og lignende sikkerhetskrav. For monitorering har de fleste tjenester i Azure Synapse dette innebygget - men benytt gjerne muligheten for å se på tjenester som Azure Log Analytics og Azure Monitor for mer helhetlig logging, monitorering og varsling.
  5. Beste praksis: Etablert praksis for databaser gjelder også for Azure Synapse. Start tidlig med å adressere lavthengende frukter som kan spare prosesseringstid og kostnader som indeksering, partisjonering og objekttyper.
  6. Undersøk integrasjoner mot andre Azure-tjenester: Dra nytte av enkle integrasjoner mot andre tjenester fra Azure og Microsoft som Azure Machine Learning, Power BI og Azure Stream Analytics for å utvide analyse- og rapporteringsmulighetene.
  7. Ikke velg alle tjenestene og produktene som tilbys fra Microsoft: Selv om det kan være formålstjenlig å ha færrest mulig leverandører, opplever vi at noen av tjenestene og produktene som tilbys har manglende funksjonalitet, og at andre alternativer kan gi mer verdi og mindre frustrasjon. Velg derfor med omhu. Det er også mange gode tredjepartsløsninger som integrerer godt med øvrig Microsoft-teknologi.

Vanlige spørsmål om Azure Synapse Analytics

Hvilke språk og rammeverk støtter Azure Synapse Analytics?

Azure Synapse Analytics støtter flere språk og rammeverk, inkludert T-SQL, Python, Scala og .NET. Dette gjør at utviklere kan bruke kjente verktøy og språk.

Hvordan fungerer prissettingen for Azure Synapse Analytics?

Prissettingen er avhengig av hvilke tjenester du ønsker å benytte. Tjenester på Azure for data- og analyse følger ofte “consumption”-basert prismodeller, der man betaler for bruk. I tillegg har man også ofte mulighet til å låse prisen ved å velge dedikerte ressurser, noe som kan være relevant om man har mer statiske behov for prosessering over tid og ønsker mer forutsigbarhet.

Hvordan fungerer sikkerheten i Azure Synapse Analytics?

Azure Synapse Analytics tilbyr ulike sikkerhetsfunksjoner som kryptering av “data at rest” og under overføring, Azure Private Link, administrerte private endepunkter, brannmurregler og virtuelle nettverkstjeneste-endepunkter. I tillegg overholder tjenesten samsvarsstandarder som GDPR, HIPAA og FedRAMP.

Slik kommer du i gang med Azure Synapse Analytics

Hvis du vil lære mer om Azure Synapse Analytics er det mange ressurser tilgjengelig. Her er noen anbefalinger:

  1. For å komme igang med Azure Synapse Analytics for testing og demo av kapabiliteter kan du følge denne veilederen publisert av Azure på Github.
  2. Microsoft tilbyr en rekke kurs og sertifiseringer relatert til Azure Synapse Analytics og andre Azure-tjenester via Microsoft Learn.
  3. Youtube har som vanlig mange gode introduksjonsvideoer som gjør deg i stand til å forstå de viktigste konseptene. Her er en serie vi synes var bra:


author image

Magne Bakkeli

Magne har over 20 års erfaring som rådgiver, arkitekt og prosjektleder innen data & analytics, og forstår godt forretningsmessige og tekniske problemstillinger.