Gå till huvudinnehåll Gå till ytterligare innehåll

Spegling av data till ett molndatalager

Med speglingsuppgifter kan du ställa frågor om data som lagras på Qlik Open Lakehouse från Snowflake. Data återspeglas i Snowflake utan att kopieras. Speglade tabeller gör att lagrings- och teknikkostnaderna är minimala och upprätthåller en enda källa till sanning.

När du har överfört dina data till ett Qlik Open Lakehouse kan du spegla dina data till Snowflake med hjälp av spegeltabeller. Data i Iceberg kan efterfrågas med hjälp av en frågemotor som har inbyggt stöd för Iceberg, t.ex. Amazon Athena. Spegeltabeller är perfekta när du vill implementera den öppna Iceberg-sjöhusarkitekturen men fortsätter att använda Snowflake som din frågemotor. Uppgiften Spegla data automatiserar processen med att göra Iceberg-tabeller tillgängliga i Snowflake genom att deklarera dem som externa tabeller. Snowflake refererar till Iceberg-tabellen som en extern tabell eftersom den inte hanterar tabellen utan bara läser från den. Med externa tabeller kan du ställa frågor om dina Iceberg-data i Snowflake utan att migrera data eller hanteringen av dina tabeller till Snowflake.

För att spegla data skapar du en extern volym i Snowflake som pekar på den S3-bucket där Iceberg-tabellerna är placerade och uppdateras av lagringsuppgiften. Du skapar sedan en Snowflake-katalogintegration som pekar till den datakatalog som används av ditt Qlik Open Lakehouse-projekt, till exempel AWS Glue datakatalog.

Speglingsuppgiften kör de DDL-satser som krävs för att skapa de externa tabellerna i Snowflake. Tabellen (schemat) visas i Snowflake tillsammans med tabellerna Ändringar och Historik, men om man tittar på tabelldefinitionen visas den som en vy som skapats ovanpå den externa tabellen. Snowflake-användare kan ställa frågor till vyerna som om data lagras i deras Snowflake-miljö. Speglade data ger hög prestanda, eftersom Qlik fortsätter att hantera och optimera data.

Uppdatera mekanism

Snowflake pekar på de metadata som återspeglar den senaste ögonblicksbilden av tillgängliga data i Iceberg. Det finns två sätt att uppdatera metadata:

  1. Qlik-hanterad: detta alternativ kräver ett aktivt Snowflake-lager och inkluderar övervakning och förhandsgranskning av data. Välj det här alternativet när du vill skapa nedströmstransformeringar och övervaka och schemalägga uppgiften. Qlik äger uppdateringsoperationen för metadata, så du kan konfigurera detta manuellt, till exempel för att köras var 30:e minut. Det här alternativet är särskilt relevant för transformeringar med flera tabeller, eftersom metadata för alla tabeller uppdateras samtidigt. Även om du kan förlora en del av den realtidsvinst som den Snowflake-hanterade uppdateringen erbjuder, behåller du konsekvensen tabellerna emellan. För transformeringar med flera tabeller kan du utlösa uppdateringen så ofta som behövs. Qlik rekommenderar att du ställer in händelsebaserad utlösning på nedströms omvandlingsaktiviteter som följer den schemalagda spegelaktiviteten.

  2. Snowflake-hanterad: en serverlös åtgärd som utnyttjar Snowpipe-infrastrukturen utan att kräva eller aktivera ett datalager. Detta alternativ rekommenderas när du inte behöver transformeringar nedströms. Uppdateringsintervallet konfigureras när du skapar katalogintegrationen för Snowflake. För att övervaka statusen för den automatiska uppdateringen ställer du en fråga till SYSTEM$AUTO_REFRESH_STATUS i Snowflake. Qlik förlorar äganderätten till processen och kan inte övervaka uppgifter av den här typen.

Varje spegeluppgift inom ett projekt kan konfigureras med sin egen uppdateringsmekanism: om du skapar två spegeluppgifter kan den ena använda Qlik-hanterad uppdatering och den andra kan använda Snowflake-hanterad uppdatering.

Utveckling av schema

Om du manuellt lägger till eller tar bort kolumner eller tabeller från lagringsuppgiften, eller indirekt från mellanlagringsuppgiften, återspeglas ändringarna automatiskt i spegeluppgiftens design. Du måste förbereda uppgiften för att tillämpa ändringarna i den speglade tabellen. Om schemautveckling är aktiverad i inställningarna för speglings- och lagringsåtgärder tillämpas alla schemaändringar som automatiskt upptäcks i lagringsåtgärden på speglingstabellerna.

Förutsättningar

En speglingsdatauppgift kan endast läggas till efter att en lagringsuppgift har skapats i ett Qlik Open Lakehouse-projekt. En lagringsuppgift kan ha flera speglingsdatauppgifter. En speglingsdatauppgift kan endast associeras med en lagringsuppgift.

För att spegla dina data till Snowflake behöver du:

  • En koppling till den Snowflake-databas där du vill spegla dina data. Alternativt kan du skapa en ny koppling under skapandet av spegeluppgiften. Kraven finns i instruktionerna för koppling till Snowflake.

  • Snowflake extern volym Detta ger Snowflake begränsad åtkomst till din S3-plats. För att konfigurera volymen, se Konfigurera en extern volym för Amazon S3.

  • En AWS Glue Data Catalog-integration. Detta gör det möjligt för Snowflake att få koppling till data i Icebergs öppna tabellformat i ditt objektlager. Om du vill konfigurera en katalogintegration, se Konfigurera en katalogintegration för AWS Glue.

Skapa en spegeldatauppgift

Gör så här för att spegla data till Snowflake:

  1. Öppna projektet som innehåller lagringsuppgiften för de data som du vill spegla.

  2. Klicka på Fler åtgärder i lagringsuppgiften. Välj Spegla data och konfigurera den:

    • Namn: ange ett namn för din speglingsuppgift.

    • Beskrivning: om du vill kan du beskriva syftet med uppgiften.

    • Koppling

      • Om du vill använda en befintlig koppling klickar du på Välj för att öppna dialogrutan Säker källkoppling. Välj det Utrymme där din koppling är placerad och välj sedan kopplingen. Klicka på Redigera för att ändra egenskaperna för kopplingen.

      • Om du vill skapa en ny koppling klickar du på Skapa koppling för att öppna dialogrutan Skapa koppling och följer instruktionerna.

    • Databas: ange namnet på den databas där du vill spegla data.

    • Extern volym i Snowflake: ange namnet på den externa volym som skapats i Snowflake.

    • Katalogintegration i Snowflake: ange namnet på den katalogintegration som skapats i Snowflake.

  3. Välj hur du vill att dina data ska uppdateras i Snowflake:

    • Qlik-hanterad: Välj det här alternativet om du vill skapa nedströmstransformeringar. Detta kräver ett aktivt Snowflake-lager och övervakas av Qlik.

    • Snowflake-hanterad: välj det här alternativet om du vill skapa nedströmstransformeringar. Ett Snowflake-lager är inte obligatoriskt och övervakas därför inte av Qlik. Detta administreras och övervakas i Snowflake.

  4. Skapa spegeluppgiften för att lägga till den till lagringsuppgiften i din pipeline.

  5. Klicka på Fler åtgärder i speglingsuppgiften och välj Öppna. Kontrollera att du visar vyn Design.

  6. Om du vill välja en delmängd av de tillgängliga datauppsättningarna klickar du på Välj källdata och tar bort oönskade datauppsättningar.

  7. Klicka på Förbered för att skapa den externa tabellen i Snowflake och spegla data.

Utföra transformeringar

Om du behöver transformera dina data kan du skapa ett Snowflake-projekt och använda en speglad datauppgift i ditt Qlik Open Lakehouse-projekt som källa. Om du vill skapa en datatransformering med data från ett befintligt projekt, se Bygga projektöverskridande pipelines.

Ta bort en spegeldatauppgift

När du tar bort en spegeluppgift tas de externa tabellerna och vyerna bort från Snowflake och är inte längre tillgängliga för frågor. En lagringsuppgift kan inte tas bort medan en spegeluppgift läser från den.

Gör följande för att ta bort en spegeldatauppgift:

  1. Klicka på menyn Fler åtgärder i den spegeldatauppgift som du vill ta bort och välj Ta bort.

  2. Klicka på Radera i bekräftelsedialogrutan.

Var den här sidan till hjälp för dig?

Om du stöter på några problem med den här sidan eller innehållet på den, t.ex. ett stavfel, ett saknat steg eller ett tekniskt fel – meddela oss!