Så här sätter du Azure Data Factory (ADF) ) Snowflake Connector att använda

(Mohini Kalamkar) (3 dec 2020)

Företag lagrar sin data på olika platser, från interna databaser till SaaS-plattformar. För att få insikt i den här informationen skulle du extrahera och ladda in data från olika källor till ett datalager eller en datalag. För att ansluta eller bygga vad som ibland kan vara ganska komplexa ETL / ELT-datarörledningar föredrar företag att använda moderna verktyg som Matillion, Azure Data Factory, Fivetran, Talend Stitch och många fler. Beroende på din arkitektur och dina datakrav kan du välja ett eller flera ETL / ELT-verktyg för ditt användningsfall.

Nyligen fick jag möjlighet att utforska både Matillion och Azure Data Factory (ADF) för att ladda data till Snowflakes datamoln . Det mesta av det här inlägget kommer att fokuseras på min erfarenhet av ADF, men jag kommer också att beröra Matillion kort.

Innan vi går in i diskussionen om dataintegreringsverktyg, om du funderar på en molndataplattform i någon av de 3 stora offentliga molnen, skulle jag rekommendera att kolla in Snowflake. Snowflake fortsätter att imponera med en effektiv och kostnadseffektiv tjänst som kontrollerar alla nyckelrutor för vårt team på Hashmap, och det är en första SQL-lösning som du kan komma igång med mycket snabbt.

Snabbtanke på Matillion

Jag fann att Matillion har en extra mognadsnivå jämfört med ADF när det gäller att integrera källor med Snowflake. I synnerhet:

  • Bra användargränssnitt
  • Alter Warehouse för att skala upp och ner från jobb till jobb
  • Skapa filformatkomponent (skapar ett namngivet filformat som kan användas för massladdning av data till och lossning av data från Snowflake-tabeller)

Microsoft ADF-teamet arbetar fortfarande med att lägga till några av dessa funktioner i ADF-kontakten för Snowflake.

ADF Snowflake Connector

Låt oss hoppa in i ADF Snowflake-kontakt . Jag kommer att täcka flera ämnen enligt listan nedan:

  1. Använda ADF Snowflake-anslutningen – Implementering av SCD typ 1 .
  2. ADF Snowflake-kontaktfunktioner.
  3. ADF Snowflake-kontaktbegränsningar (från och med detta skrivande).

Azure Data Factory (ADF) är Azures molntjänst som låter dig skapa datadrivna arbetsflöden för att organisera och automatisera dataförflyttning och datatransformation.

ADF har en rad inbyggda kontakter som möjliggör integration med olika datakällor och mål, och i juni 2020 lade Microsofts ADF-teknikteam till stöd för Snowflake som måldatalager.

En snabb notering att jag också har haft behov av att integrera och anslut Azure-funktioner med Snowflake, men jag kommer att spara den diskussionen för ett annat inlägg.

För att börja utforska ADF Snowflake-anslutningen, låt oss se hur SCD typ 1 kan implementeras med ADF-kontakt!

Komma igång

För denna imp lementation används följande Azure-tjänster: Azure Blob-lagring, Azure Data Factory (länkade tjänster, datamängder och dataflöden).

Förutsättning:

  • ADF-länkade tjänster för Azure blob lagring och ditt Snowflake-konto skapas.
  • En planplan skapas i Snowflake med schemat nedan:
CREATE TABLE Planes (
ICAO nvarchar(200),
IATA nvarchar(200),
MAKER nvarchar(200),
DESCRIPTION nvarchar(200)
);
  1. Låt oss först ladda upp en CSV-fil till Azure-blob.
CSV-fil
CSV-fil

2. I ADF skapar du en (källa) dataset för blob-filen.

Dataset för blob
Dataset för blob-fil

3. Skapa en (sink) dataset för Snowflake.

Dataset för Snowflake

4. Nu ska vi skapa en ADF-dataflöde med 3 komponenter. Källa, AlterRow och Sink.

Som visas nedan väljer du källdatauppsättningen som skapades i steg 1.

Inställning av dataflödeskälla

5. Inställning av dataflödeskälla fortsatte:

Inställning av dataflödeskälla

6. Låt oss nu förhandsgranska källdata.

Skärmdumpen nedan visar dataförhandsgranskningen för källa.

Förhandsgranskning av dataflödeskälla

7. Nu när källan är klar, låt oss lägga till Alter-transformation.Ändra transformation möjliggör infogningar / uppdateringar / upserts och tar bort poster enligt givna villkor.

Jag har angett villkoret för Upsert.

Dataflödet AlterRow

8. Inställning för dataflödessink.

Som visas nedan väljer du den länkade tjänsten som skapats för Snowflake.

Dataflödesink

9. Inställning för dataflöde.

Välj snöflingaschema, tabellnamn och uppdateringsmetod.

Välj den primära nyckeln i snöflingstabellen i ”Nyckelkolumner”. Baserat på ”nyckelkolumner” kommer poster att införas / uppåt / raderas / uppdateras i diskbänken.

Det är bra praxis att kontrollera ”Data Preview” innan du går till nästa uppgift i Dataflödet.

Dataflödessink

10. Importera dataflödet till rörledningen och klicka på felsökningen.

Importera dataflöde till pipeline

11. Låt oss nu verifiera Plan-tabeller i Snowflake.

Alla poster infogas i Snowflake-tabellen.

Snowflake table – Planes

12. Låt oss sedan uppdatera CSV-filen.

Uppdaterade A318 och infogade B713.

Uppdaterad CSV-fil

13. Felsöka rörledningen och kontrollera tabellen Planes i Snowflake.

Som skärmdump nedan visar, du har en uppdaterad post för A318.

Uppdaterad post i planplanen

14. Ny post B713 infogas i planplanen.

Plantabell – ny post infogad från CSV-tabell

Som visas i steg 13 och 14 finns uppdaterade och nya poster tillgängliga i Snowflake-tabellen.

Så utan att skriva någon kod är det ganska enkelt och enkelt att uppnå SCD typ 1 med ADF Snowflake-anslutningen.

ADF Snowflake Connector Capabilities

Vid implementering av ADF Connecto r för Snowflake vet att du kommer att ha stöd för följande typer av aktiviteter:

Mer information finns i det här dokumentet – https://docs.microsoft.com/en-us/azure/data-factory/connector-snowflake

Så, kontakten har några bra funktioner, men det finns också några begränsningar att vara medveten om. Låt oss titta på det.

ADF Snowflake Connector Limitations

  1. Samtidigt som du skapar en länkad tjänst för Snowflake-kontot stöds inte SSO-integrering (extern autentiseringsläsare). li>
  2. ADF Snowflake Connector stöder inte körning av en Snowflake-lagrad procedur. Ett alternativ eller en lösning till detta är dock att anropa lagrade procedurer med Azure-funktioner.
  3. En Snowflake-tabell måste vara tillgänglig innan data laddas.
  4. Direktkopia från / till Snowflake stöds endast för följande format: Parkett, avgränsad text och JSON (Snowflake-tabellen eller frågeresultatet har bara en enda kolumn och datatypen för den här kolumnen är VARIANT, OBJECT eller ARRAY). När ditt käll- / diskdatalager eller -format inte är kompatibelt med kommandot Snowflake COPY måste du aktivera den inbyggda iscensatta kopian med hjälp av en tillfällig Azure Blob-lagringsinstans som tillför extra kostnad för Azure-fakturering.

Slutliga tankar

ADF Snowflake Connector gör framsteg för att göra det lättare att ansluta inbyggda Microsoft-verktyg till Snowflake och implementera SCD typ 1. Som med alla dataintegrationsverktyg är det rekommenderas alltid att utforma, arkitekt och distribuera en slutlig lösningsmetod baserad på användningsfall / -mönster, -mönster, SLA, kompetensuppgifter och datakonsumtionskrav som din individuella situation dikterar. Digital transformation?

På Hashmap arbetar vi tillsammans med våra kunder för att bygga bättre tillsammans.

Om du funderar på att flytta data- och analysprodukter och applikationer till molnet eller om du vill hjälp och vägledning och några bästa metoder för att leverera högre värde resultat i din befintliga molnprogram, vänligen kontakta oss.

Hashmap erbjuder en rad möjliggörande workshops och utvärderingstjänster, molnmodernisering och migreringstjänster och konsulttjänstpaket som en del av vårt moln ( och Snowflake ) tjänsterbjudanden. Vi skulle gärna arbeta igenom dina specifika krav.

Andra verktyg och innehåll som du kanske gillar

Snowflake Utilities & Acceleratorer | Gör mer med Snowflake | Hashmap

Testa alla Snowflake-verktyg som Hashmap har tillgängliga och gör mer med Snowflake: Snowflake Inspector …

www.hashmapinc.com

(

Komplettera ditt Snowflake-faktureringsmeddelande med användarmått

Ett enkelt knep kan vara nyckeln till att förstå dina Snowflake-datorutgifter

medium.com

)

Hashmap megabyte | Bite-Size Video Series

Hashmap Megabytes är en veckoserie där mega molnidéer förklaras i bitstorlekar.

www.hashmapinc.com

(

5 steg för att konvertera Python-jobb till PySpark

Flytta från Pandas till PySpark med Apache Arrow eller Koalas

medium.com

)

Dela gärna på andra kanaler och var säker och fortsätt med allt nytt innehåll från Hashmap här . Om du vill lyssna på en avslappnad konversation om alla datateknik och molnet, kolla in Hashmaps podcast Hashmap on Tap samt på Spotify, Apple, Google och andra populära streamingappar.

Hashmap on Tap | Hashmap Podcast

En roterande roll av Hashmap-värdar och specialgäster utforskar olika teknologier från olika perspektiv medan de njuter av en drink att välja.

www.hashmapinc.com

Mohini Kalamkar är en moln- och datateknisk konsult med Hashmap tillhandahålla data-, moln-, IoT- och AI / ML-lösningar och konsultkompetens inom branscher med en grupp innovativa tekniker och domenexperter som påskyndar högkvalitativa affärsresultat för våra kunder.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *