Azure Cloud Storage
Azure Cloud Storage to zarządzana usługa przechowywania obiektów firmy Microsoft dla danych nieustrukturyzowanych, w tym tekstu, plików binarnych, multimediów, dzienników i kopii zapasowych aplikacji. Obsługuje warstwy dostępu gorącego, chłodnego i archiwalnego, oferuje replikację geograficznie nadmiarową i integruje się z Microsoft Entra ID (wcześniej Azure Active Directory) w celu bezpiecznej kontroli dostępu.
Qlik Talend Cloud łączy się z Azure Cloud Storage za pomocą aplikacji Microsoft Entra ID (jednostki usługi), która ma dostęp do odczytu do docelowego kontenera konta magazynu. Łącznik pobiera pliki z określonego kontenera, automatycznie wykrywa schematy poprzez próbkowanie zawartości plików i wykonuje przyrostową replikację danych na podstawie znaczników czasu modyfikacji plików.
Przygotowanie do uwierzytelniania
Aby uzyskać dostęp do danych, musisz uwierzytelnić połączenie za pomocą poświadczeń konta.
Aby skonfigurować konto Azure Cloud Storage, potrzebujesz:
- Subskrypcji platformy Azure z kontem usługi Azure Storage.
- Kontenera obiektów blob na koncie magazynu, który zawiera pliki do replikacji.
- Rejestracji aplikacji Microsoft Entra ID z kluczem tajnym klienta.
- Roli Storage Blob Data Reader przypisanej do jednostki usługi aplikacji, o zakresie obejmującym konto magazynu lub określony kontener. Jest to zalecana rola o najniższych uprawnieniach dla dostępu tylko do odczytu.
Aby zarejestrować aplikację Microsoft Entra ID i pobrać poświadczenia:
- Zaloguj się na swoje konto Azure.
- Przejdź do Microsoft Entra ID > Rejestracje aplikacji > Nowa rejestracja.
- Wprowadź następujące informacje dla swojej aplikacji:
- Nazwa: Wprowadź nazwę, na przykład QlikDataIntegration.
- Obsługiwane typy kont: Wybierz Konta tylko w tym katalogu organizacyjnym.
- Kliknij Zarejestruj.
- Na stronie Przegląd aplikacji skopiuj zarówno Identyfikator aplikacji (klienta), jak i Identyfikator katalogu (dzierżawy) i zapisz je w bezpiecznym pliku.
- Przejdź do Certyfikaty i wpisy tajne > Wpisy tajne klienta > Nowy klucz tajny klienta.
- Wprowadź opis i wybierz okres ważności dla klucza tajnego klienta.
- Kliknij Dodaj.
- Skopiuj wartość klucza tajnego klienta i zapisz ją w bezpiecznym pliku.
- W portalu Azure otwórz swoje konto magazynu, a następnie przejdź do Kontrola dostępu (IAM) > Dodaj > Dodaj przypisanie roli.
- Wybierz rolę Storage Blob Data Reader i przypisz tę rolę do nowo zarejestrowanej aplikacji.
- Kliknij Zapisz.
Obsługiwane formaty plików
- Pliki tekstowe z ogranicznikami:
.csv,.tsv,.psv,.txt(z konfigurowalnym ogranicznikiem) - JSON Lines:
.jsonl - Parquet:
.parquet - Avro:
.avro - Excel:
.xlsx(obsługiwanych jest wiele arkuszy w skoroszycie; wiersze każdego arkusza są replikowane, a nazwa arkusza jest dołączana do kolumny_sdc_source_file) - Pliki skompresowane Gzip:
.gz(zawierające dowolny z powyższych formatów)
Tworzenie połączenia
Więcej informacji zawiera temat Łączenie się z aplikacjami SaaS.
- Wprowadź wymagane właściwości połączenia.
-
Podaj nazwę połączenia w polu Nazwa połączenia.
-
Wybierz opcję Otwórz metadane połączenia, aby zdefiniować metadane połączenia po jegu utworzeniu.
-
Kliknij polecenie Utwórz.
| Ustawienie | Opis |
|---|---|
| Brama danych |
Wybierz bramę Brama danych ruchu danych, jeżeli jest wymagana do danego zastosowania. Informacja
To pole jest niedostępne w subskrypcji Qlik Talend Cloud Starter, ponieważ brama Brama danych ruchu danych jest w niej nieobsługiwana. Jeśli masz inny poziom subskrypcji i nie chcesz korzystać z bramy Brama danych ruchu danych, wybierz opcję Brak. Informacje o zaletach bramy Brama danych ruchu danych i o okolicznościach, w których jest wymagana, zawiera temat Brama danych Qlik — ruch danych. |
| Data rozpoczęcia |
Wprowadź datę, w formacie |
| Nazwa konta magazynu | Nazwa konta usługi Azure Storage, na przykład mojekontomagazynu bez https:// lub .blob.core.windows.net. |
| Nazwa kontenera | Nazwa kontenera obiektów blob, na przykład moj-kontener. |
| Identyfikator dzierżawy | Identyfikator dzierżawy. |
| Tabele | Konfiguracja tabeli określa, które pliki są odczytywane i jak interpretowana jest ich zawartość. Każda definicja tabeli zawiera wzorzec wyszukiwania plików, nazwę tabeli i opcjonalne ustawienia dostosowywania obsługi plików. |
| Identyfikator klienta | Identyfikator klienta. |
| Klucz tajny klienta | Klucz tajny klienta. |
Konfiguracja tabel
Każdy wpis w konfiguracji tabel reprezentuje tabelę logiczną pochodzącą z plików w kontenerze. Dla każdej tabeli można skonfigurować następujące właściwości:
| Właściwość | Wymagane lub opcjonalne | Opis |
|---|---|---|
| Nazwa tabeli | Wymagane |
Określ nazwę tabeli logicznej (na przykład my_orders_csv). Staje się to nazwą strumienia w Qlik Talend Cloud.
|
| Wzorzec wyszukiwania | Wymagane |
Podaj wyrażenie regularne dopasowujące nazwy plików (na przykład .*\.csv$ dopasowuje wszystkie pliki CSV). Zastosuj to do nazw plików w kontenerze lub określonym katalogu, jeśli został podany.
|
| Katalog | Opcjonalne |
Wprowadź prefiks ścieżki folderu w kontenerze, aby zawęzić wyszukiwanie plików (na przykład exports/orders/). Popraw wydajność, ograniczając skanowane pliki. To nie jest wyrażenie regularne.
|
| Klucz podstawowy | Opcjonalne |
Zdefiniuj rozdzielaną przecinkami listę nazw kolumn, które mają być używane jako klucz podstawowy (na przykład id lub id,date). W przypadku plików CSV użyj nazw pól nagłówka; w przypadku plików JSONL użyj kluczy obiektów najwyższego poziomu. Pozostaw puste, aby użyć replikacji pełnej tabeli. Wypełnij, aby włączyć replikację przyrostową na podstawie czasu modyfikacji pliku.
|
| Określ pola daty i godziny | Opcjonalne |
Wypisz nazwy kolumn, oddzielone przecinkami, które mają być traktowane jako pola daty i godziny, nawet jeśli nie zostaną automatycznie wykryte podczas wykrywania schematu (na przykład created_at, updated_at).
|
| Ogranicznik | Opcjonalne |
Wskaż separator pól dla plików tekstowych z ogranicznikami. Wartość domyślna to , (przecinek). Użyj \t dla plików TSV lub | dla plików PSV. Jeśli nie zostanie określony, ogranicznik zostanie automatycznie wykryty na podstawie rozszerzenia pliku.
|
-
Skonfiguruj pliki
.jsonli.csvjako oddzielne tabele, aby zapewnić dokładną obsługę schematu i spójność danych. -
Upewnij się, że wszystkie pliki
.csvpasujące do wzorca wyszukiwania zawierają spójny wiersz nagłówka z identycznymi nazwami kolumn i kolejnością. -
Używaj spójnych kluczy atrybutów obiektów we wszystkich plikach
.jsonlzdefiniowanych dla każdej tabeli. Nazwy kluczy i struktury powinny być zgodne w celu niezawodnego wykrywania schematu.
Replikowane tabele
Tabele są definiowane w dostarczonej konfiguracji tabel. Każda tabela odpowiada zestawowi plików w kontenerze obiektów blob, które pasują do określonego wzorca wyszukiwania i, jeśli ma to zastosowanie, prefiksu katalogu. Łącznik wykrywa schemat tabeli, próbkując do pięciu plików na tabelę, odczytując co piąty wiersz i analizując do 1000 rekordów na plik.
Replikacja wykorzystuje podejście przyrostowe oparte na znacznikach czasu modyfikacji plików, gdy skonfigurowany jest klucz podstawowy. Pliki zmodyfikowane po ostatniej zakładce synchronizacji są przetwarzane podczas każdej ekstrakcji. Jeśli nie określono klucza podstawowego, cała tabela jest w pełni replikowana przy każdym uruchomieniu.
Do każdej tabeli domyślnie dodawane są następujące kolumny systemowe:
| Kolumna | Opis |
|---|---|
_sdc_source_container
|
Nazwa kontenera obiektów blob platformy Azure, z którego pochodzi rekord. |
_sdc_source_file
|
Pełna ścieżka pliku zawierającego rekord. W przypadku plików Excel dołączana jest nazwa arkusza (na przykład exports/q1.xlsx/Sheet1).
|
_sdc_source_lineno
|
Numer wiersza rekordu w pliku. |
_sdc_extra
|
Dodatkowe przeanalizowane pola, które nie pasują do wykrytego schematu (tylko pliki .jsonl).
|
Ograniczenia i uwagi
- Nazwa konta magazynu jest podawana jako sama nazwa, a nie adres URL.
-
Obsługiwane są pliki skompresowane Gzip (
.gz). Łącznik odczytuje oryginalną nazwę pliku z nagłówka gzip, aby określić wewnętrzny format pliku. Pliki Gzip utworzone z opcją--no-name(brak nazwy pliku w nagłówku) są pomijane. -
Pliki z rozszerzeniami
.csv,.txt,.tsv,.psvlub.jsonlsą sprawdzane pod kątem magicznych bajtów gzip i są w sposób przezroczysty dekompresowane, nawet jeśli plik nie ma rozszerzenia.gz. -
Zagnieżdżona kompresja (na przykład plik
.gzwewnątrz innego pliku.gz) nie jest obsługiwana i jest pomijana. -
Pole Wzorzec wyszukiwania używa składni wyrażeń regularnych, a nie wzorców glob (na przykład użyj
.*\.csv$zamiast*.csv). - Pliki bez rozpoznanego rozszerzenia są pomijane i generowane jest ostrzeżenie.
- Łącznik zawiera wbudowaną logikę ponawiania prób z wykładniczym opóźnieniem dla limitów szybkości API platformy Azure (HTTP 429) i przejściowych błędów serwera (HTTP 500, 502, 503, 504), do pięciu prób.
- Oczekuje się, że kodowanie pliku to UTF-8.