Azure Cloud Storage
Azure Cloud Storage is de beheerde objectopslagservice van Microsoft voor ongestructureerde gegevens, waaronder tekst, binaire bestanden, media, logboeken en applicatieback-ups. Het ondersteunt hot, cool en archive toegangslagen, biedt geo-redundante replicatie en integreert met Microsoft Entra ID (voorheen Azure Active Directory) voor veilige toegangscontrole.
Qlik Talend Cloud maakt verbinding met Azure Cloud Storage met behulp van een Microsoft Entra ID-applicatie (service-principal) die leestoegang heeft tot de doelopslagaccount-container. De connector haalt bestanden op uit de opgegeven container, ontdekt automatisch schema's door bestandsinhoud te bemonsteren en voert incrementele gegevensreplicatie uit op basis van tijdstempels van bestandswijzigingen.
Voorbereiden op authenticatie
Om toegang te krijgen tot uw gegevens, moet u de verbinding authenticeren met uw accountgegevens.
Om uw Azure Cloud Storage-account in te stellen, hebt u het volgende nodig:
- Een Azure-abonnement met een Azure Storage-account.
- Een blob-container in het opslagaccount die de bestanden bevat om te repliceren.
- Een Microsoft Entra ID-applicatieregistratie met een clientgeheim.
- De rol Storage Blob Data Reader toegewezen aan de service-principal van de applicatie, met als bereik het opslagaccount of de specifieke container. Dit is de aanbevolen rol met de minste rechten voor alleen-lezen toegang.
Om een Microsoft Entra ID-applicatie te registreren en uw inloggegevens op te halen:
- Log in op uw Azure-account.
- Navigeer naar Microsoft Entra ID > App-registraties > Nieuwe registratie.
- Voer de volgende informatie in voor uw applicatie:
- Naam: Voer een naam in, bijvoorbeeld QlikDataIntegration.
- Ondersteunde accounttypen: Selecteer Alleen accounts in deze organisatiemap.
- Klik op Registreren.
- Kopieer op de Overzicht-pagina van de applicatie zowel de Applicatie (client)-ID als de Map (tenant)-ID en sla deze op in een beveiligd bestand.
- Navigeer naar Certificaten en geheimen > Clientgeheimen > Nieuw clientgeheim.
- Voer een beschrijving in en selecteer een vervalperiode voor het clientgeheim.
- Klik op Toevoegen.
- Kopieer de waarde van uw clientgeheim en sla deze op in een beveiligd bestand.
- Open uw opslagaccount in de Azure-portal en navigeer vervolgens naar Toegangsbeheer (IAM) > Toevoegen > Roltoewijzing toevoegen.
- Selecteer de rol Storage Blob Data Reader en wijs deze rol toe aan de applicatie die u zojuist hebt geregistreerd.
- Klik op Opslaan.
Ondersteunde bestandsindelingen
- Gescheiden tekstbestanden:
.csv,.tsv,.psv,.txt(met configureerbaar scheidingsteken) - JSON Lines:
.jsonl - Parquet:
.parquet - Avro:
.avro - Excel:
.xlsx(meerdere werkbladen per werkmap worden ondersteund; de rijen van elk werkblad worden gerepliceerd en de naam van het werkblad wordt toegevoegd aan de kolom_sdc_source_file) - Gzip-gecomprimeerde bestanden:
.gz(die een van de bovenstaande indelingen bevatten)
De verbinding maken
Ga voor meer informatie naar Verbinding maken met SaaS-applicaties.
- Vul de vereiste verbindingseigenschappen in.
-
Geef in Verbindingsnaam een naam voor de verbinding op.
-
Selecteer Metagegevens verbinding openen om metagegevens te definiëren voor de verbinding nadat deze is gemaakt.
-
Klik op Maken.
| Instelling | Beschrijving |
|---|---|
| Data gateway |
Selecteer een Data Movement gateway als dit is vereist voor uw usecase. Informatie
Dit veld is niet beschikbaar met het Qlik Talend Cloud Starter-abonnement, omdat het geen ondersteuning biedt voor Data Movement gateway. Als u een ander abonnementsniveau hebt en Data Movement gateway niet wilt gebruiken, selecteer dan Geen. Raadpleeg Qlik Gegevensgateway - Gegevensverplaatsing voor informatie over de voordelen van Data Movement gateway en usecases waarvoor deze is vereist. |
| Startdatum |
Voer de datum in, in het formaat |
| Naam opslagaccount | Naam van het Azure Storage-account, bijvoorbeeld mijnopslagaccount zonder https:// of .blob.core.windows.net. |
| Naam container | Naam van de blob-container, bijvoorbeeld mijn-container. |
| Tenant-ID | Tenant-ID. |
| Tabellen | Tabelconfiguratie bepaalt welke bestanden worden gelezen en hoe de inhoud ervan wordt geïnterpreteerd. Elke tabeldefinitie bevat een bestandszoekpatroon, een tabelnaam en optionele instellingen voor het aanpassen van de bestandsverwerking. |
| Client-ID | Client-ID. |
| Clientgeheim | Clientgeheim. |
Tabellenconfiguratie
Elke invoer in de tabellenconfiguratie vertegenwoordigt een logische tabel die is afgeleid van bestanden in de container. De volgende eigenschappen kunnen voor elke tabel worden geconfigureerd:
| Eigenschap | Vereist of optioneel | Beschrijving |
|---|---|---|
| Tabelnaam | Vereist |
Geef de naam van de logische tabel op (bijvoorbeeld my_orders_csv). Dit wordt de stream-naam in Qlik Talend Cloud.
|
| Zoekpatroon | Vereist |
Geef een reguliere expressie op om bestandsnamen te matchen (bijvoorbeeld .*\.csv$ komt overeen met alle CSV-bestanden). Pas dit toe op bestandsnamen binnen de container of de opgegeven map, indien verstrekt.
|
| Map | Optioneel |
Voer een voorvoegsel voor een mappad in binnen de container om het zoeken naar bestanden te verfijnen (bijvoorbeeld exports/orders/). Verbeter de prestaties door de gescande bestanden te beperken. Dit is geen reguliere expressie.
|
| Primaire sleutel | Optioneel |
Definieer een door komma's gescheiden lijst met kolomnamen die als primaire sleutel moeten worden gebruikt (bijvoorbeeld id of id,date). Gebruik voor CSV-bestanden veldnamen in de koptekst; gebruik voor JSONL-bestanden objectsleutels op het hoogste niveau. Laat leeg om volledige tabelreplicatie te gebruiken. Vul in om incrementele replicatie in te schakelen op basis van de wijzigingstijd van het bestand.
|
| Datum/tijd-velden opgeven | Optioneel |
Maak een lijst van de kolomnamen, gescheiden door komma's, die als datum/tijd-velden moeten worden behandeld, zelfs als ze niet automatisch worden gedetecteerd tijdens het ontdekken van schema's (bijvoorbeeld created_at, updated_at).
|
| Scheidingsteken | Optioneel |
Geef het veldscheidingsteken aan voor gescheiden tekstbestanden. De standaardwaarde is , (komma). Gebruik \t voor TSV-bestanden of | voor PSV-bestanden. Indien niet opgegeven, wordt het scheidingsteken automatisch gedetecteerd op basis van de bestandsextensie.
|
-
Configureer
.jsonl- en.csv-bestanden als afzonderlijke tabellen om een nauwkeurige schemaverwerking en gegevensconsistentie te garanderen. -
Zorg ervoor dat alle
.csv-bestanden die overeenkomen met een zoekpatroon een consistente koptekstrij bevatten met identieke kolomnamen en volgorde. -
Gebruik consistente objectattribuutsleutels in alle
.jsonl-bestanden die voor elke tabel zijn gedefinieerd. Sleutelnamen en structuren moeten op één lijn liggen voor betrouwbare schemadetectie.
Gerepliceerde tabellen
Tabellen worden gedefinieerd in de tabellenconfiguratie die u opgeeft. Elke tabel komt overeen met een set bestanden in de blob-container die overeenkomen met het opgegeven zoekpatroon en, indien van toepassing, het mapvoorvoegsel. De connector ontdekt het tabelschema door maximaal vijf bestanden per tabel te bemonsteren, elke vijfde rij te lezen en maximaal 1.000 records per bestand te analyseren.
Replicatie gebruikt een incrementele benadering op basis van tijdstempels van bestandswijzigingen wanneer een primaire sleutel is geconfigureerd. Bestanden die zijn gewijzigd na de laatste synchronisatiebladwijzer, worden tijdens elke extractie verwerkt. Als er geen primaire sleutel is opgegeven, wordt de hele tabel bij elke uitvoering volledig gerepliceerd.
De volgende systeemkolommen worden standaard aan elke tabel toegevoegd:
| Kolom | Beschrijving |
|---|---|
_sdc_source_container
|
De naam van de Azure blob-container waar de record vandaan komt. |
_sdc_source_file
|
Het volledige pad van het bestand dat de record bevat. Voor Excel-bestanden wordt de naam van het werkblad toegevoegd (bijvoorbeeld exports/q1.xlsx/Sheet1).
|
_sdc_source_lineno
|
Het regelnummer van de record in het bestand. |
_sdc_extra
|
Extra geparseerde velden die niet overeenkomen met het ontdekte schema (alleen .jsonl-bestanden).
|
Beperkingen en overwegingen
- De naam van het opslagaccount wordt opgegeven als een kale naam, niet als een URL.
-
Gzip-gecomprimeerde bestanden (
.gz) worden ondersteund. De connector leest de oorspronkelijke bestandsnaam uit de gzip-header om de interne bestandsindeling te bepalen. Gzip-bestanden die zijn gemaakt met--no-name(geen bestandsnaam in de header) worden overgeslagen. -
Bestanden met de extensies
.csv,.txt,.tsv,.psvof.jsonlworden gecontroleerd op gzip magic bytes en worden transparant gedecomprimeerd, zelfs als het bestand geen.gz-extensie heeft. -
Geneste compressie (bijvoorbeeld een
.gz-bestand in een ander.gz-bestand) wordt niet ondersteund en wordt overgeslagen. -
Het veld Zoekpatroon gebruikt de syntaxis van reguliere expressies, geen glob-patronen (gebruik bijvoorbeeld
.*\.csv$in plaats van*.csv). - Bestanden zonder een herkende extensie worden overgeslagen en er wordt een waarschuwing afgegeven.
- De connector bevat ingebouwde logica voor opnieuw proberen met exponentiële back-off voor Azure API-snelheidslimieten (HTTP 429) en tijdelijke serverfouten (HTTP 500, 502, 503, 504), tot maximaal vijf pogingen.
- De bestandscodering wordt verwacht UTF-8 te zijn.