Slik setter du Azure Data Factory (ADF) ) Snowflake Connector to Use

(Mohini Kalamkar) (3. des 2020)

Bedriftene lagrer dataene sine på forskjellige steder, fra interne databaser til SaaS-plattformer. For å få innsikt i disse dataene, vil du trekke ut og laste inn dataene fra forskjellige kilder i et datalager eller et datasjø. For å koble til eller bygge det som noen ganger kan være ganske komplekse ETL / ELT-datarørledninger, foretrekker bedrifter å bruke moderne verktøy som Matillion, Azure Data Factory, Fivetran, Talend Stitch og mange flere. Avhengig av arkitekturen og datakravene dine, kan du velge ett eller flere ETL / ELT-verktøy for din brukstilfelle.

Nylig hadde jeg muligheten til å utforske begge Matillion og Azure Data Factory (ADF) for å laste data til Snowflakes Data Cloud . Det meste av dette innlegget vil være fokusert på min erfaring med ADF, men jeg vil også berøre Matillion kort.

Før du går inn i diskusjonen om verktøy for dataintegrering, hvis du vurderer en skydataplattform i noen av de tre store offentlige skyene, vil jeg anbefale å sjekke ut Snowflake. Snowflake fortsetter å imponere med en effektiv og kostnadseffektiv tjeneste som sjekker alle nøkkelboksene for teamet vårt på Hashmap, og det er en første SQL-løsning som du kan komme i gang med veldig raskt.

Rask tanker på Matillion

Jeg fant at Matillion har et ekstra modenhetsnivå sammenlignet med ADF med hensyn til å integrere kilder med Snowflake. Spesielt:

  • Flott brukergrensesnitt
  • Alter Warehouse for å skalere opp og ned på jobb-for-jobb-basis
  • Lag filformatkomponent (oppretter et navngitt filformat som kan brukes til masseinnlasting av data i og lossing av data fra Snowflake-tabeller)

Microsoft ADF-team jobber fortsatt med å legge til noen av disse funksjonene i ADF-kontakten for Snowflake.

ADF Snowflake Connector

La oss hoppe inn i ADF Snowflake-kontakt . Jeg vil dekke flere emner som er oppført nedenfor:

  1. Bruke ADF Snowflake-kontakten – Implementering av SCD type 1 .
  2. ADF Snowflake-kontaktfunksjoner.
  3. ADF Snowflake-kontaktbegrensninger (fra og med dette skrivet).

Azure Data Factory (ADF) er Azures skytjeneste som lar deg lage datadrevne arbeidsflyter for å organisere og automatisere databevegelse og datatransformasjon.

ADF har en rekke innebygde kontakter som tillater integrering med forskjellige datakilder og mål, og i juni 2020 la Microsoft ADF engineering team til støtte for Snowflake som et måldatalager.

En rask merknad om at jeg også har hatt behov for å integrere og koble Azure Functions til Snowflake, men jeg vil lagre diskusjonen for et annet innlegg.

For å begynne å utforske ADF Snowflake-kontakten, la oss se hvordan SCD type 1 kan implementeres med ADF-kontakt!

Komme i gang

For denne imp lementasjon brukes følgende Azure-tjenester: Azure Blob-lagring, Azure Data Factory (koblede tjenester, datasett og datastrømmer).

Forutsetning:

  • ADF-tilknyttede tjenester for Azure blob lagring og Snowflake-kontoen din blir opprettet.
  • Det opprettes en plan-tabell i Snowflake med skjemaet nedenfor:
CREATE TABLE Planes (
ICAO nvarchar(200),
IATA nvarchar(200),
MAKER nvarchar(200),
DESCRIPTION nvarchar(200)
);
  1. La oss først laste opp en CSV-fil til Azure-blob.
CSV-fil
CSV-fil

2. I ADF oppretter du et (kilde) datasett for blob-filen.

Datasett for blob
Datasett for blob-fil

3. Opprett et (vask) datasett for Snowflake.

Datasett for Snowflake

4. La oss nå lage en ADF-dataflyt med 3 komponenter. Kilde, AlterRow og vask.

Som vist nedenfor, velg kildedatasettet som ble opprettet i trinn 1.

Kildeinnstilling for dataflyt

5. Innstilling for dataflytskilde fortsatte:

Innstilling av dataflytskilde

6. La oss forhåndsvise kildedata.

Skjermbildet nedenfor viser forhåndsvisning av data for kilden.

Dataflyt kildedata forhåndsvisning

7. Nå etter at kilden er klar, la oss legge til Alter-transformasjon.Endre transformasjon tillater innlegg / oppdateringer / oppsett, og sletter poster i henhold til gitte betingelser.

Jeg har spesifisert betingelsen for Upsert.

Dataflow AlterRow

8. Dataflow Sink setting.

Som vist nedenfor, velg den tilknyttede tjenesten opprettet for Snowflake.

Dataflow Sink

9. Innstilling for vaske for dataflyt.

Velg snøfnuggskjema, tabellnavn og oppdateringsmetode.

Velg den primære nøkkelen til snøfnuggtabellen i ‘Nøkkelkolonner’. Basert på Nøkkelkolonner vil postene bli satt inn / upserted / slettet / oppdatert i vasktabellen.

Det er god praksis å sjekke Data Preview før du går til neste oppgave i Dataflow.

Dataflow Sink

10. Importer dataflyt til rørledningen og klikk på feilsøk.

Importer dataflyt til rørledning

11. La oss nå bekrefte Plan-tabeller i Snowflake.

Alle poster settes inn i Snowflake-tabellen.

Snowflake table – Planes

12. La oss deretter oppdatere CSV-filen.

Oppdatert A318 og satt inn B713.

Oppdatert CSV-fil

13. Feilsøk rørledningen og sjekk Planes-tabellen i Snowflake.

Som skjermbilde nedenfor viser, har du en oppdatert post for A318.

Oppdatert post i plan-tabell

14. Ny post B713 settes inn i Planes-tabellen.

Plan-tabell – ny post satt inn fra CSV-tabell

Som vist i trinn 13 og 14, er oppdaterte og nye poster tilgjengelige i Snowflake-tabellen.

Så uten å skrive noen kode, er det ganske enkelt og greit å oppnå SCD type 1 ved hjelp av ADF Snowflake-kontakten.

ADF Snowflake Connector Capabilities

Ved implementering av ADF Connecto r for Snowflake vet at du vil ha støtte for følgende typer aktiviteter:

For mer informasjon, se dette dokumentet – https://docs.microsoft.com/en-us/azure/data-factory/connector-snowflake

Så, kontakten har noen gode evner, men det er noen få begrensninger å være klar over også. La oss se på det.

Begrensninger for ADF Snowflake Connector

  1. Mens du oppretter en koblet tjeneste for Snowflake-kontoen, støttes SSO-integrasjon (ekstern ekstern nettleser) ennå ikke.
  2. ADF Snowflake Connector støtter ikke utføring av en Snowflake-lagret prosedyre. Imidlertid er et alternativ eller en løsning på dette å ringe lagrede prosedyrer ved hjelp av Azure Functions.
  3. En Snowflake-tabell må være tilgjengelig før du laster inn dataene.
  4. Direkte kopi fra / til Snowflake støttes bare for følgende formater: Parkett, avgrenset tekst og JSON (Snowflake-tabellen eller spørringsresultatet har bare en enkelt kolonne, og datatypen til denne kolonnen er VARIANT, OBJECT eller ARRAY). Når datalageret eller formatet for kilde / synke ikke er kompatibelt med Snowflake COPY-kommandoen, må du aktivere den innebygde iscenesatte kopien ved hjelp av en midlertidig Azure Blob-lagringsforekomst som gir ekstra kostnader til Azure fakturering.

Avsluttende tanker

ADF Snowflake Connector gjør fremskritt for å gjøre det lettere å koble innfødte Microsoft-verktøy til Snowflake og implementere SCD type 1. Som med alle dataintegreringsverktøy, er det alltid anbefalt å designe, arkitektere og distribuere en endelig løsningstilnærming basert på brukstilfeller / mønstre, SLA, ferdighetssett og dataforbrukskrav som din individuelle situasjon tilsier. Digital transformasjon?

På Hashmap samarbeider vi med våre kunder om å bygge bedre sammen.

Hvis du vurderer å flytte data- og analyseprodukter og applikasjoner til skyen, eller hvis du ønsker det hjelp og veiledning og noen få gode fremgangsmåter for å levere resultater med høyere verdi i din eksisterende skyprogram, så kontakt oss.

Hashmap tilbyr en rekke aktiviseringsverksteder og vurderingstjenester, skymodernisering og migreringstjenester og konsulenttjenestepakker som en del av skyen vår ( og Snowflake ) tjenestetilbud. Vi vil gjerne jobbe gjennom dine spesifikke krav.

Andre verktøy og innhold du kanskje vil like

Snowflake Utilities & Akseleratorer | Gjør mer med Snowflake | Hashmap

Prøv alle Snowflake-verktøyene som Hashmap har tilgjengelig, og gjør mer med Snowflake: Snowflake Inspector …

www.hashmapinc.com

(

Overlad snøfnuggfaktureringserklæringen din med brukerberegninger

Et enkelt triks kan være nøkkelen til å forstå utgiftene til Snowflake-beregning

medium.com

)

Hashmap Megabyte | Bite-Size Video Series

Hashmap Megabytes er en ukentlig videoserie der mega sky-ideer blir forklart i bitstørrelsesdeler.

www.hashmapinc.com

(

5 trinn for å konvertere Python-jobber til PySpark

Flytte fra Pandas til PySpark ved hjelp av Apache Arrow eller Koalas

medium.com

)

Del gjerne på andre kanaler og vær sikker og følg med alt nytt innhold fra Hashmap her . For å lytte til en uformell samtale om alle ting data engineering og skyen, sjekk ut Hashmaps podcast Hashmap på trykk også på Spotify, Apple, Google og andre populære streaming-apper.

Hashmap on Tap | Hashmap Podcast

En roterende rollebesetning av Hashmap-verter og spesielle gjester utforsker forskjellige teknologier fra forskjellige perspektiver mens de nyter en drink etter eget valg.

www.hashmapinc.com

Mohini Kalamkar er en sky- og dataingeniørkonsulent med Hashmap levere data-, sky-, IoT- og AI / ML-løsninger og rådgivningskompetanse på tvers av bransjer med en gruppe innovative teknologer og domeneksperter, som akselererer høyverdige forretningsresultater for våre kunder.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *