Katalog danych AWS Glue
Połącz się z katalogiem danych AWS Glue, aby używać go jako celu w swoich Qlik Open Lakehouse projektach.
Używanie katalogu danych AWS Glue jako celu zapewnia integrację z ekosystemem analitycznym AWS i umożliwia Qlik Open Lakehouse współdziałanie ze scentralizowanym magazynem metadanych. AWS Glue Data Catalog działa jako ujednolicona warstwa metadanych, umożliwiając Qlik zapisywanie tabel Iceberg, które są natychmiast dostępne do zapytań przez usługi natywne dla AWS, takie jak Amazon Athena, bez dodatkowej konfiguracji. Dane zapisane przez Qlik są również dostępne dla narzędzi innych firm bez replikacji.
Wymagania wstępne
Aby utworzyć połączenie z AWS Glue Data Catalog, potrzebujesz:
-
Zasobnik Amazon S3 jako miejsce docelowe.
-
Jeśli używasz uwierzytelniania opartego na rolach, aby uzyskać dostęp do zasobnika, potrzebujesz:
-
Uprawnienia do uzyskania dostępu do integracji sieciowej, której chcesz użyć dla połączenia.
-
ARN roli.
-
-
Jeśli używasz uwierzytelniania kluczem dostępu, aby uzyskać dostęp do zasobnika, potrzebujesz:
-
Twój identyfikator klucza dostępu AWS.
-
Twój tajny klucz dostępu AWS.
-
Konfiguracja właściwości połączenia katalogu danych AWS Glue
Aby skonfigurować połączenie, wykonaj następujące czynności:
-
W obszarze Połączenia kliknij Utwórz połączenie.
-
Wybierz Przestrzeń, w której chcesz utworzyć połączenie, lub wybierz Utwórz nową przestrzeń danych.
-
Wybierz AWS Glue Data Catalog z listy Nazwa łącznika lub użyj pola Wyszukaj.
-
Kliknij Utwórz i skonfiguruj właściwości:
-
Region katalogu: Z listy wybierz region dla swojego katalogu.
-
Docelowy zasobnik S3: Wprowadź nazwę zasobnika.
-
Skonfiguruj typ uwierzytelniania. Z listy wybierz uwierzytelnianie oparte na rolach lub kluczem dostępu i uzupełnij następujące informacje dla swojego wyboru:
Oparte na rolach
-
Integracja sieciowa: Wybierz integrację sieciową z listy.
-
Nazwa ARN roli: Wprowadź nazwę ARN roli utworzoną w AWS.
Utwórz rolę AWS
Aby utworzyć rolę AWS, wykonaj następujące czynności:
-
W konsoli AWS przejdź do IAM.
-
W Rolach kliknij Utwórz rolę.
-
Dla Typ zaufanej jednostki, wybierz Niestandardowa polityka zaufania.
-
W Qlik Cloud, w oknie dialogowym Utwórz rolę AWS, skopiuj Zaufaną jednostkę, która jest jednostką przypisaną do klastrów w Twojej integracji.Wklej ją do konsoli w AWS.
-
Kliknij Role i wybierz rolę, którą utworzyłeś powyżej.
-
W Zasady uprawnień kliknij Dodaj uprawnienia i wybierz Utwórz wbudowaną zasadę.
-
W Qlik Cloud, w oknie dialogowym Utwórz rolę AWS, skopiuj poniższą wbudowaną zasadę i wklej ją do konsoli w AWS, a następnie zmień wartość <bucket_name> na lokalizację Twojego zasobnika:
-
Z Roli strony, w Podsumowaniu, skopiuj ARN.
-
W Qlik Cloud, zamknij Utwórz rolę AWS okno dialogowe i wklej wartość ARN do Roli ARN.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"glue:CreateTable",
"glue:UpdateTable",
"glue:DeleteTable",
"glue:BatchDeleteTable",
"glue:GetTable",
"glue:GetTables",
"glue:CreateDatabase",
"glue:UpdateDatabase",
"glue:GetDatabase",
"glue:GetDatabases",
"glue:GetUserDefinedFunction"
],
"Resource": [
"arn:aws:glue:us-east-2:*:catalog",
"arn:aws:glue:us-east-2:*:database/*",
"arn:aws:glue:us-east-2:*:table/*/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::<bucket_name>"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": "arn:aws:s3:::<bucket_name>/*"
}
]
}
Klucz dostępu
-
Klucz dostępu: Wprowadź swój unikalny identyfikator klucza dostępu AWS, aby użyć go do uwierzytelnienia.
-
Klucz tajny: Wprowadź swój tajny klucz dostępu AWS, aby użyć go z kluczem dostępu.
Zdefiniuj uprawnienia użytkownika
Aby utworzyć wbudowaną politykę w AWS, wykonaj następujące czynności:
-
W Konsoli AWS, przejdź do IAM.
-
Przejdź do Polityki > Utwórz politykę.
-
W Qlik Cloud, w oknie dialogowym Utwórz rolę AWS, skopiuj politykę.
-
W AWS, w Edytorze polityk, wklej politykę i zmień parametr <bucket_name> na lokalizację Twojego zasobnika:
-
Dodaj politykę do użytkownika, która daje dostęp do Qlik.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"glue:CreateTable",
"glue:UpdateTable",
"glue:DeleteTable",
"glue:BatchDeleteTable",
"glue:GetTable",
"glue:GetTables",
"glue:CreateDatabase",
"glue:UpdateDatabase",
"glue:GetDatabase",
"glue:GetDatabases",
"glue:GetUserDefinedFunction"
],
"Resource": [
"arn:aws:glue:us-east-2:*:catalog",
"arn:aws:glue:us-east-2:*:database/*",
"arn:aws:glue:us-east-2:*:table/*/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::<bucket_name>"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": "arn:aws:s3:::<bucket_name>/*"
}
]
}
W Nazwa wprowadź nazwę wyświetlaną dla połączenia.
Obsługiwane typy danych
Następująca tabela pokazuje obsługiwane typy danych źródłowych Iceberg i ich domyślne mapowanie na typy danych Qlik Talend Data Integration.
| Typy danych Iceberg | Qlik Talend Data Integration typy danych. |
|---|---|
| BOOLEAN | BOOLEAN |
| BYTES | BINARY |
| DATE | DATE |
| TIME | TIME |
| DATETIME | TIMESTAMP |
| INT1 | INT |
| INT2 | INT |
| INT4 | INT |
| INT8 | LONG |
| NUMERIC | DECIMAL(precyzja, scale) |
| REAL4 | FLOAT |
| REAL8 | DOUBLE |
| UINT1 | INT |
| UINT2 | LONG |
| UINT4 | LONG |
| UINT8 | DECIMAL(20, 0) |
| STRING | STRING |
| WSTRING | STRING |
| BLOB | BINARY |
| NCLOB | STRING |
| CLOB | STRING |