Ga naar hoofdinhoud Ga naar aanvullende inhoud

Gegevens spiegelen naar een clouddatawarehouse

Met spiegeltaken kunt u gegevens opvragen die zijn opgeslagen in uw Qlik Open Lakehouse vanuit uw clouddatawarehouses. Gegevens worden weergegeven in uw warehouse, zonder dat ze worden gedupliceerd. Gespiegelde tabellen zorgen ervoor dat de opslag- en engineeringkosten minimaal zijn en dat er één enkele bron van waarheid blijft bestaan.

Na het toevoegen van uw gegevens in een Qlik Open Lakehouse, kunt u uw gegevens spiegelen naar uw clouddatawarehouse met behulp van spiegeltabellen. Gegevens in Iceberg kunnen worden opgevraagd met een query-engine die Iceberg ondersteunt, zoals Amazon Athena. Spiegeltabellen zijn echter ideaal wanneer u de open Iceberg lakehouse-architectuur wilt implementeren en uw datawarehouse-query-engine wilt blijven gebruiken. De gegevens spiegelen-taak automatiseert het proces om Iceberg-tabellen toegankelijk te maken in uw datawarehouse door ze te bestempelen als externe tabellen en weergaven. Het datawarehouse verwijst naar de Iceberg-tabel als een externe weergave omdat het de tabel niet beheert, maar er alleen uit leest. Met externe tabellen en weergaven kunt u uw Iceberg-gegevens in uw datawarehouse opvragen zonder gegevens of het beheer van uw tabellen naar uw datawarehouse te migreren.

De spiegeltaak voert de nodige DDL-opdrachten uit om de externe tabellen en weergaven aan te maken. De tabel (schema) wordt weergegeven in het datawarehouse, samen met de wijzigings- en geschiedenistabellen, maar als u naar de tabeldefinitie kijkt, wordt deze weergegeven als een weergave die bovenop de externe tabel is gemaakt. Gegevensverbruikers kunnen de weergaven opvragen alsof de gegevens in hun datawarehouse-omgeving zijn opgeslagen. Gespiegelde gegevens bieden hoge prestaties, omdat Qlik de gegevens blijft beheren en optimaliseren.

Spiegelen naar meerdere datawarehouses

Eén enkele dataset kan worden gespiegeld naar meerdere clouddatawarehouses. De volgende afbeelding laat zien hoe een Qlik Open Lakehouse pijplijnproject kan worden gebruikt om gegevens te spiegelen naar Amazon Redshift en Snowflake:

  • De pijplijn neemt gegevens op uit een MySQL-database via de verbinding, MySQL QCDI-BETA.

  • De Lake-tussenopslagtaak, EnergyGen_Lake_landing, neemt de onbewerkte gegevens op in een Amazon S3-bucket.

  • Vervolgens kopieert de opslagtaak, EnergyGen_Storage, de gegevens naar een S3-locatie om de gegevens op te slaan in Apache Iceberg-indeling.

  • De Mirror-gegevenstaak, Redshift Mirror, maakt de benodigde weergaven om de gegevens vanuit Redshift op te vragen en vernieuwt de gegevens automatisch.

  • De transformatietaak, Redshift_Energygen_Silver, wordt gebruikt om de mirror-gegevens in Redshift te transformeren en te verbruiken.

  • Een tweede Mirror-gegevenstaak, Snowflake Mirror, wordt toegevoegd om de noodzakelijke weergaven te creëren zodat de gegevens vanuit Snowflake kunnen worden opgevraagd.De mirror-taak maakt gebruik van het door Qlik beheerde vernieuwingsmechanisme, dat downstream-transformaties mogelijk maakt.

  • De transformatietaak, Snowflake_Energygen_Data_Products, wordt gebruikt om de gegevens in Snowflake te transformeren en te verbruiken.

Vernieuwingsmechanisme

Het vernieuwingsmechanisme dat voor u beschikbaar is, hangt af van uw clouddatawarehouse-provider, zoals hieronder beschreven.

Redshift

Gegevens die naar Redshift zijn gespiegeld, worden automatisch vernieuwd en het is niet nodig om de taak te plannen of uit te voeren. Alle tabel- en weergavenamen worden in Redshift omgezet naar kleine letters, aangezien Qlik Open Lakehouse geen hoofdlettergevoelige objectnamen (database, schema, tabel of kolom) ondersteunt.

Snowflake

Snowflake verwijst naar de metagegevens die de laatste momentopname van de beschikbare gegevens binnen Iceberg weergeeft. Er zijn twee manieren om de metagegevens te vernieuwen:

  1. Qlik-beheerd: deze optie vereist een actief Snowflake-warehouse en omvat bewaking en een gegevensvoorbeeld. Selecteer deze optie als u downstream transformaties wilt maken en de taak wilt bewaken en plannen. Qlik is eigenaar van de vernieuwingsbewerking voor metagegevens, zodat u deze handmatig kunt configureren, bijvoorbeeld om de 30 minuten. Deze optie is vooral relevant voor transformaties met meerdere tabellen, aangezien de metagegevens voor alle tabellen tegelijkertijd bijgewerkt worden. Hoewel u misschien iets van de realtimewinst verliest die de door Snowflake-beheerde vernieuwing biedt, behoudt u wel de consistentie tussen tabellen. Voor transformaties met meerdere tabellen kunt u het vernieuwen zo vaak als nodig activeren. Qlik raadt u aan om gebeurtenisgebaseerde activering in te stellen voor downstream transformatietaken die de geplande spiegeltaak volgen.

  2. Snowflake-beheerd: een serverloze bewerking die de Snowpipe-infrastructuur gebruikt zonder een warehouse met rekenkrachtig nodig te hebben of te activeren. Deze optie wordt aanbevolen als u geen downstream transformaties nodig hebt. De vernieuwingsinterval wordt geconfigureerd wanneer u de Snowflake-catalogusintegratie maakt. Om de status van de automatische vernieuwing te controleren, raadpleegt u SYSTEM$AUTO_REFRESH_STATUS in Snowflake. Qlik verliest het eigenaarschap van het proces en kan dit soort taken niet controleren.

InformatieElke spiegeltaak binnen een Snowflake-project kan worden geconfigureerd met zijn eigen vernieuwingsmechanisme: als u twee spiegeltaken maakt, kan de ene de door Qlik beheerde vernieuwing gebruiken en de andere de door Snowflake-beheerde vernieuwing.
InformatieAls u probeert de spiegeluitvoer op te vragen of te gebruiken in transformaties en een interne serverfout ziet (zie voorbeeld hieronder), dan is uw Iceberg-metadata niet gesynchroniseerd met de externe catalogus. Om dit probleem op te lossen, voert u de spiegeltaak uit om de Iceberg-metadata te vernieuwen.

The parquet file 'tg_open_lakehouse/bronze/sales/tables/tg_sales_ingestion_bronze__internal.order_details__internal/data/hdr__scd_partition=asset_state/2025_09_12_00_37_asset_state_apply-4bcbb2eb-4ad3-4d88-bea6-ea611576624e.parquet' for table 'OPENLAKEHOUSE."snowflake_mirror__internal"."ext__order_details"' was inaccessible.

Vereisten

De volgende vereisten gelden voor alle ondersteunde datawarehouse-doelen:

  • Een gegevens spiegelen-taak kan alleen worden toegevoegd nadat een opslagtaak is gemaakt in een Qlik Open Lakehouse-project.

  • Een opslagtaak kan meerdere gegevens spiegelen-taken hebben, waarbij elke taak gericht is op een ander datawarehouse.

  • Een gegevens spiegelen-taak kan slechts aan één opslagtaak worden gekoppeld.

  • Om transformaties uit te voeren, maakt u een datawarehouseproject aan en gebruikt u de taak Gegevens spiegelen als bron. Het project en de spiegeltaak moeten hetzelfde datawarehouseplatform gebruiken, bijvoorbeeld Redshift.

Om uw gegevens te spiegelen, configureert u de instellingen voor uw doeldatawarehouse.

Redshift

  • Een verbinding met de datawarehouse-database waarin u uw gegevens wilt spiegelen. Optioneel kunt u een nieuwe verbinding maken tijdens het maken van de spiegeltaak. Ga voor meer informatie naar Amazon Redshift.

  • Een IAM-rol die door Redshift wordt aangenomen met Glue Data Catalog-leesrechten.Het volgende script biedt de nodige machtigingen om toegang te krijgen tot uw catalogus. Zorg ervoor dat u <ICEBERG_BUCKET_NAME> vervangt door de naam van uw bucket:

    {
    	 "Version": "2012-10-17",
            "Statement": [
                 {
                	 "Effect": "Allow",
                    "Action": [
                        "glue:GetDatabase",
                        "glue:GetDatabases",
                        "glue:GetTable",
                        "glue:GetTables",
                        "glue:GetPartition",
                        "glue:GetPartitions"
                    ],
                    "Resource": "*"
                 },
                 {
                    "Effect": "Allow",
                    "Action": [
                        "s3:GetObject",
                        "s3:ListBucket"
                    ],
                    "Resource": [
                        "arn:aws:s3:::<ICEBERG_BUCKET_NAME>",
                        "arn:aws:s3:::<ICEBERG_BUCKET_NAME>/*"
                    ]
                }
    }

    Deze rol vereist de volgende vertrouwensrelatie:

    {
    	"Version": "2012-10-17",
            "Statement": [
                 {
                     "Effect": "Allow",
                     "Principal": {
                           "Service": "redshift-serverless.amazonaws.com"
                      },
                     "Action": "sts:AssumeRole"
                 },
                 {
                     "Effect": "Allow",
                     "Principal": {
                        "Service": "redshift.amazonaws.com"
                        },
                        "Action": "sts:AssumeRole"
                 }
          ]
    }

    InformatieVoor meer informatie, zie IAM-beleid voor Amazon Redshift Spectrum.
  • Een extern schema in Redshift dat verwijst naar de database van de opslagtaak. U moet een extern Redshift-schema aanmaken door het uitvoeren van het CREATE EXTERNAL SCHEMA commando en te verwijzen naar de interne database van de bron-Iceberg-opslagtaak. Externe consumenten moeten consumeren van de consumptieweergaven van het spiegeltaakschema. Om uw externe schema aan te maken, gebruikt u de volgende syntaxis, waarbij u ervoor zorgt dat de DATABASE eigenschap de database is die door de opslagtaak is aangemaakt:


    CREATE EXTERNAL SCHEMA <local_schema_name>
    FROM DATA CATALOG
    DATABASE '<database_name>'
    IAM_ROLE 'arn:aws:iam::<AWS account-id>:role/<role-name>'
    REGION '<aws-region>'

Snowflake

  • Een verbinding met de datawarehouse-database waarin u uw gegevens wilt spiegelen. Optioneel kunt u een nieuwe verbinding maken tijdens het maken van de spiegeltaak. Ga voor meer informatie naar Snowflake.

  • Een Snowflake extern volume. Hierdoor krijgt Snowflake beperkte toegang tot uw S3-locatie. Zie Een extern volume voor Amazon S3 configureren om het volume te configureren.

  • Een AWS Glue Data Catalog-integratie. Hierdoor kan Snowflake verbinding maken met gegevens in de Iceberg open tabelindeling in uw objectstore. Zie Een catalogusintegratie configureren voor AWS Glue om een catalogusintegratie te configureren.

Een gegevens spiegelen-taak maken

Om gegevens naar uw datawarehouse te spiegelen, doet u het volgende:

  1. Open het project dat de opslagtaak bevat voor de gegevens die u wilt spiegelen.

  2. Klik op Meer acties van de opslagtaak. Selecteer Gegevens spiegelen en configureer deze:

    • Naam: Voer een naam in voor uw spiegeltaak.

    • Beschrijving: Beschrijf optioneel het doel van de taak.

    • Datawarehouse: Selecteer uw doeldatawarehouse.

    • Verbinding

      • Om een bestaande verbinding te gebruiken, klikt u op Selecteren om het dialoogvenster Beveiligde bronverbinding te openen. Kies de Ruimte waar uw verbinding zich bevindt en selecteer vervolgens de verbinding. Klik op Bewerken om de verbindingseigenschappen te wijzigen.

      • Om een nieuwe verbinding te maken, klikt u op Verbinding maken om het dialoogvenster Verbinding maken te openen en volgt u de instructies.

    • Database: voer de naam in van de database waarin u de gegevens wilt spiegelen.

    • Spiegelen naar Redshift:

      • Extern schema: Voer de naam in van het schema waar de weergaven worden gemaakt.

        InformatieAlle tabel- en weergavenamen worden in Redshift naar kleine letters geconverteerd.
    • Spiegelen naar Snowflake:

      • Snowflake extern volume: voer de naam in van het externe volume dat in Snowflake is gemaakt.

      • Snowflake-catalogusintegratie: voer de naam in van de catalogusintegratie die in Snowflake is gemaakt.

      • Selecteer hoe u uw gegevens in Snowflake wilt laten vernieuwen:

        • Qlik-beheerd: selecteer deze optie als u downstream transformaties wilt maken. Dit vereist een actief Snowflake-warehouse en wordt bewaakt door Qlik.

        • Snowflake-beheerd: selecteer deze optie als u geen downstream transformaties wilt uitvoeren. Een Snowflake-warehouse is niet vereist en wordt daarom niet bewaakt door Qlik. Dit wordt beheerd en gecontroleerd in Snowflake.

  3. Klik op OK om de spiegeltaak te maken en toe te voegen aan de opslagtaak in uw pijplijn.

  4. Klik op Meer acties van de spiegeltaak en selecteer Openen. Zorg ervoor dat u de ontwerpweergave gebruikt.

  5. Om een subset van de beschikbare gegevensverzamelingen te selecteren, klikt u op Gegevensbron selecteren en verwijdert u ongewenste gegevensverzamelingen.

  6. Klik op Voorbereiden om de externe objecten aan te maken en de gegevens te spiegelen.

Transformaties uitvoeren

Als u uw gegevens moet transformeren, kunt u een Redshift- of Snowflake-project maken en een gegevens spiegelen-taak binnen uw Qlik Open Lakehouse-project als bron gebruiken.De bron van de spiegeltaak moet hetzelfde clouddatawarehouse-platform zijn als het project.Bijvoorbeeld, wanneer u een Redshift-project maakt om transformaties uit te voeren, moet u een Redshift-gegevens spiegelen-taak als bron gebruiken.

InformatieZie Projectoverschrijdende pijplijnen bouwen om een transformatietaak te maken met gegevens uit een bestaand project.

Een gegevens spiegelen-taak verwijderen

Wanneer u een spiegeltaak verwijdert, worden de interne schema's en weergaven die door de spiegeltaak zijn gemaakt, verwijderd. Externe schema's en tabellen in Redshift worden niet verwijderd. Als een tabel wordt verwijderd uit AWS Glue, bijvoorbeeld wanneer een gebruiker de dataset in opslag verwijdert of de hele opslagtaak verwijdert, wordt de wijziging automatisch doorgevoerd in het externe Redshift-schema. De tabel wordt verwijderd en hoeft niet afzonderlijk te worden verwijderd. Als best practice verwijdert u het externe schema volledig als het niet langer in gebruik is.

InformatieEen opslagtaak kan niet worden verwijderd terwijl een spiegeltaak ervan leest.

Doe het volgende om een gegevens spiegelen-taak te verwijderen:

  1. Klik in de gegevens spiegelen-taak die u wilt verwijderen op het menu Meer acties van de taak en selecteer Verwijderen.

  2. Klik in het bevestigingsvenster op Verwijderen.

Was deze pagina nuttig?

Als u problemen ervaart op deze pagina of de inhoud onjuist is – een tikfout, een ontbrekende stap of een technische fout – laat het ons weten!