Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
DOTYCZY:
Azure Data Factory
Azure Synapse Analytics
Napiwek
Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !
W tym artykule opisano sposób używania działania kopiowania w potoku usługi Azure Data Factory lub Synapse Analytics do kopiowania danych z programu Hive. Jest on oparty na artykule omówienie działania kopiowania, który przedstawia ogólne omówienie działania kopiowania.
Ważne
Łącznik hive w wersji 1.0 jest na etapie usuwania. Zaleca się aktualizację łącznika Hive z wersji 1.0 do 2.0.
Obsługiwane możliwości
Ten łącznik programu Hive jest obsługiwany w następujących funkcjach:
| Obsługiwane możliwości | środowisko IR |
|---|---|
| działanie Kopiuj (źródło/-) | (1) (2) |
| Przepływ danych mapowania (źródło/-) | (1) |
| Działanie Lookup | (1) (2) |
(1) Środowisko Azure Integration Runtime (2) Self-hosted Integration Runtime
Aby uzyskać listę magazynów danych obsługiwanych jako źródła/ujścia przez działanie kopiowania, zobacz tabelę Obsługiwane magazyny danych.
Usługa udostępnia wbudowany sterownik umożliwiający łączność, dlatego nie trzeba ręcznie instalować żadnego sterownika przy użyciu tego łącznika.
Łącznik obsługuje wersje systemu Windows w tym artykule.
Wymagania wstępne
Jeśli magazyn danych znajduje się wewnątrz sieci lokalnej, sieci wirtualnej platformy Azure lub chmury prywatnej Amazon Virtual, musisz skonfigurować własne środowisko Integration Runtime , aby się z nim połączyć.
Jeśli magazyn danych jest zarządzaną usługą danych w chmurze, możesz użyć środowiska Azure Integration Runtime. Jeśli dostęp jest ograniczony do adresów IP zatwierdzonych w regułach zapory, możesz dodać adresy IP środowiska Azure Integration Runtime do listy dozwolonych.
Możesz również użyć funkcji środowiska Integration Runtime zarządzanej sieci wirtualnej w usłudze Azure Data Factory, aby uzyskać dostęp do sieci lokalnej bez instalowania i konfigurowania własnego środowiska Integration Runtime.
Aby uzyskać więcej informacji na temat mechanizmów zabezpieczeń sieci i opcji obsługiwanych przez usługę Data Factory, zobacz Strategie dostępu do danych.
Uwaga / Notatka
Wersja 2.0 jest obsługiwana w przypadku własnego środowiska Integration Runtime w wersji 5.54 lub nowszej.
Wprowadzenie
Aby wykonać działanie kopiowania za pomocą pipeline'u, możesz użyć jednego z następujących narzędzi lub zestawów SDK:
- Narzędzie do kopiowania danych
- Portal Azure
- zestawu SDK platformy .NET
- Zestaw SDK dla języka Python
- Azure PowerShell
- API REST
- Szablon usługi Azure Resource Manager
Tworzenie połączonej usługi z usługą Hive przy użyciu interfejsu użytkownika
Wykonaj poniższe kroki, aby utworzyć połączoną usługę z usługą Hive w interfejsie użytkownika witryny Azure Portal.
Przejdź do karty Zarządzanie w obszarze roboczym usługi Azure Data Factory lub Synapse i wybierz pozycję Połączone usługi, a następnie kliknij pozycję Nowy:
Wyszukaj pozycję Hive i wybierz łącznik Hive.
Skonfiguruj szczegóły usługi, przetestuj połączenie i utwórz nową połączoną usługę.
Szczegóły konfiguracji łącznika
Poniższe sekcje zawierają szczegółowe informacje o właściwościach używanych do definiowania jednostek usługi Data Factory specyficznych dla łącznika hive.
Właściwości połączonej usługi
Łącznik hive obsługuje teraz wersję 2.0. Zapoznaj się z tą sekcją, aby uaktualnić wersję łącznika Hive z wersji 1.0. Aby uzyskać informacje szczegółowe dotyczące nieruchomości, zobacz odpowiednie sekcje.
Wersja 2.0
Połączona usługa Hive obsługuje następujące właściwości w przypadku zastosowania wersji 2.0:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type musi być ustawiona na: Hive | Tak |
| wersja | Wersja, którą określisz. Wartość to 2.0. |
Tak |
| gospodarz | Adres IP lub nazwa hosta serwera Hive. | Tak |
| port | Port TCP używany przez serwer Hive do nasłuchiwania połączeń klienckich. Jeśli łączysz się z usługą Azure HDInsight, określ port jako 443. | Tak |
| typ serwera | Typ serwera Hive. Dozwolona wartość to: HiveServer2 |
Nie. |
| thriftTransportProtocol (protokół transportowy) | Protokół transportowy do użycia w warstwie Thrift. Dozwolone wartości to: Binary, SASL, HTTP |
Nie. |
| Typ uwierzytelniania | Metoda uwierzytelniania używana do uzyskiwania dostępu do serwera Hive. Dozwolone wartości to: Anonimowe, UsernameAndPassword, WindowsAzureHDInsightService. Uwierzytelnianie Kerberos nie jest teraz obsługiwane. |
Tak |
| nazwa użytkownika | Nazwa użytkownika używana do uzyskiwania dostępu do serwera Hive. | Nie. |
| hasło | Hasło odpowiadające użytkownikowi. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. | Nie. |
| ścieżka HTTP | Częściowy adres URL odpowiadający serwerowi Hive. W przypadku typu uwierzytelniania WindowsAzureHDInsightService wartość domyślna to /hive2. |
Nie. |
| włączSsl | Określa, czy połączenia z serwerem są szyfrowane przy użyciu protokołu TLS. Wartość domyślna to true. | Nie. |
| włączWeryfikacjęCertyfikatuSerwera | Określ, czy włączyć weryfikację certyfikatu SSL serwera podczas łączenia. Zawsze używaj magazynu zaufania systemu. Wartość domyślna to true. | Nie. |
| storageReference | Odwołanie do połączonej usługi konta magazynu używanego do przemieszczania danych w przepływie danych mapowania. Jest to wymagane tylko w przypadku korzystania z połączonej usługi Hive w przepływie mapowania danych. | Nie. |
| connectVia (połącz się) | Środowisko Integration Runtime do nawiązania połączenia z magazynem danych. Dowiedz się więcej w sekcji Wymagania wstępne . Jeśli nie zostanie określony, używa domyślnego środowiska Azure Integration Runtime. Możesz użyć własnego środowiska Integration Runtime, a jego wersja powinna mieć wartość 5.54 lub nowszą. | Nie. |
Przykład:
{
"name": "HiveLinkedService",
"properties": {
"type": "Hive",
"version": "2.0",
"typeProperties": {
"host" : "<host>",
"port" : "<port>",
"authenticationType" : "WindowsAzureHDInsightService",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
},
"serverType": "HiveServer2",
"thriftTransportProtocol": "HTTP",
"enableSsl": true,
"enableServerCertificateValidation": true
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Wersja 1.0
Następujące właściwości są obsługiwane w przypadku połączonej usługi Hive w przypadku zastosowania wersji 1.0:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type musi być ustawiona na: Hive | Tak |
| gospodarz | Adres IP lub nazwa hosta serwera Hive oddzielona ciągiem ";" dla wielu hostów (tylko wtedy, gdy parametr serviceDiscoveryMode jest włączony). | Tak |
| port | Port TCP używany przez serwer Hive do nasłuchiwania połączeń klienckich. Jeśli łączysz się z usługą Azure HDInsight, określ port jako 443. | Tak |
| typ serwera | Typ serwera Hive. Dozwolone wartości to: HiveServer1, HiveServer2, HiveThriftServer |
Nie. |
| thriftTransportProtocol (protokół transportowy) | Protokół transportowy do użycia w warstwie Thrift. Dozwolone wartości to: Binary, SASL, HTTP |
Nie. |
| Typ uwierzytelniania | Metoda uwierzytelniania używana do uzyskiwania dostępu do serwera Hive. Dozwolone wartości to: Anonimowe, Nazwa użytkownika, Nazwa użytkownikaAndPassword, WindowsAzureHDInsightService. Uwierzytelnianie Kerberos nie jest teraz obsługiwane. |
Tak |
| serviceDiscoveryMode (tryb odnajdywania) | wartość true wskazująca użycie usługi ZooKeeper, a nie false. | Nie. |
| zooKeeperNameSpace (przestrzeń nazw zooKeeper) | Przestrzeń nazw w usłudze ZooKeeper, w której są dodawane węzły programu Hive Server 2. | Nie. |
| użyjNatywnegoZapytania | Określa, czy sterownik używa natywnych zapytań HiveQL, czy konwertuje je na równoważną formę w języku HiveQL. | Nie. |
| nazwa użytkownika | Nazwa użytkownika używana do uzyskiwania dostępu do serwera Hive. | Nie. |
| hasło | Hasło odpowiadające użytkownikowi. Oznacz to pole jako element SecureString w celu bezpiecznego przechowywania go lub odwołuj się do wpisu tajnego przechowywanego w usłudze Azure Key Vault. | Nie. |
| ścieżka HTTP | Częściowy adres URL odpowiadający serwerowi Hive. | Nie. |
| włączSsl | Określa, czy połączenia z serwerem są szyfrowane przy użyciu protokołu TLS. Wartość domyślna to false. | Nie. |
| ścieżkaZaufanychCertyfikatów | Pełna ścieżka pliku pem zawierającego zaufane certyfikaty urzędu certyfikacji do weryfikowania serwera podczas nawiązywania połączenia za pośrednictwem protokołu TLS. Tę właściwość można ustawić tylko w przypadku korzystania z protokołu TLS na własnym środowisku IR. Wartość domyślna to plik cacerts.pem zainstalowany z środowiskiem IR. | Nie. |
| użyjSystemowegoMagazynuZaufania | Określa, czy należy użyć certyfikatu urzędu certyfikacji z magazynu zaufania systemu, czy z określonego pliku PEM. Wartość domyślna to false. | Nie. |
| zezwólNaNiezgodnośćNazwyHostaiCN | Określa, czy podczas nawiązywania połączenia za pośrednictwem protokołu TLS/SSL należy wymagać, aby nazwa certyfikatu TLS/SSL wystawiona przez urząd certyfikacji odpowiadała nazwie hosta serwera. Wartość domyślna to false. | Nie. |
| zezwólNaSamopodpisanyCertyfikatSerwera | Określa, czy zezwalać na certyfikaty z podpisem własnym z serwera. Wartość domyślna to false. | Nie. |
| connectVia (połącz się) | Środowisko Integration Runtime do nawiązania połączenia z magazynem danych. Dowiedz się więcej w sekcji Wymagania wstępne . Jeśli nie zostanie określony, używa domyślnego środowiska Azure Integration Runtime. | Nie. |
| storageReference | Odwołanie do połączonej usługi konta magazynu używanego do przemieszczania danych w przepływie danych mapowania. Jest to wymagane tylko w przypadku korzystania z połączonej usługi Hive w przepływie danych mapowania | Nie. |
Przykład:
{
"name": "HiveLinkedService",
"properties": {
"type": "Hive",
"typeProperties": {
"host" : "<cluster>.azurehdinsight.net",
"port" : "<port>",
"authenticationType" : "WindowsAzureHDInsightService",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
}
}
}
Właściwości zestawu danych
Pełna lista sekcji i właściwości dostępnych do definiowania zestawów danych znajduje się w artykule dotyczącym zestawów danych. Ta sekcja zawiera listę właściwości obsługiwanych przez zestaw danych Hive.
Aby skopiować dane z programu Hive, ustaw właściwość type zestawu danych na HiveObject. Obsługiwane są następujące właściwości:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type zestawu danych musi być ustawiona na: HiveObject | Tak |
| schemat | Nazwa schematu. | Nie (jeśli określono "zapytanie" w źródle działania) |
| tabela | Nazwa tabeli. | Nie (jeśli określono "zapytanie" w źródle działania) |
| nazwaTabeli | Nazwa tabeli, w tym część schematu. Ta właściwość jest obsługiwana w celu zapewnienia zgodności z poprzednimi wersjami. W przypadku nowego obciążenia użyj polecenia schema i table. |
Nie (jeśli określono "zapytanie" w źródle działania) |
Przykład
{
"name": "HiveDataset",
"properties": {
"type": "HiveObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<Hive linked service name>",
"type": "LinkedServiceReference"
}
}
}
Właściwości działania kopiowania
Aby uzyskać pełną listę sekcji i właściwości dostępnych do definiowania działań, zobacz artykuł Pipelines (Potoki ). Ta sekcja zawiera listę właściwości obsługiwanych przez źródło programu Hive.
HiveSource jako źródło
Aby skopiować dane z programu Hive, ustaw typ źródła w działaniu kopiowania na hiveSource. Następujące właściwości są obsługiwane w sekcji źródło działania kopiowania:
| Właściwości | Opis | Wymagania |
|---|---|---|
| typ | Właściwość type źródła działania kopiowania musi być ustawiona na: HiveSource | Tak |
| kwerenda | Użyj niestandardowego zapytania SQL, aby odczytać dane. Na przykład: "SELECT * FROM MyTable". |
Nie (jeśli określono "tableName" w zestawie danych) |
Przykład:
"activities":[
{
"name": "CopyFromHive",
"type": "Copy",
"inputs": [
{
"referenceName": "<Hive input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "HiveSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Właściwości przepływu mapowania danych
Łącznik hive jest obsługiwany jako wbudowane źródło zestawu danych w przepływach danych mapowania. Odczyt przy użyciu zapytania lub bezpośrednio z tabeli programu Hive w usłudze HDInsight. Dane programu Hive są etapowane na koncie magazynu jako pliki parquet przed przekształceniem w ramach przepływu danych.
Właściwości źródła
W poniższej tabeli wymieniono właściwości obsługiwane przez źródło hive. Te właściwości można edytować na karcie Opcje źródła.
| Nazwa/nazwisko | Opis | Wymagania | Dozwolone wartości | Właściwość skryptu przepływu danych |
|---|---|---|---|---|
| Store | Sklep musi być hive |
tak | hive |
przechowywać |
| Formatuj | Niezależnie od tego, czy odczytujesz z tabeli, czy zapytania | tak |
table lub query |
formatowanie |
| Nazwa schematu | W przypadku odczytywania z tabeli schemat tabeli źródłowej | Tak, jeśli format to table |
Sznurek | nazwa schematu |
| Nazwa tabeli | W przypadku odczytywania z tabeli nazwa tabeli | Tak, jeśli format to table |
Sznurek | nazwaTabeli |
| Zapytanie | Jeśli format to query, zapytanie źródłowe w połączonej usłudze Hive |
Tak, jeśli format to query |
Sznurek | kwerenda |
| Magazyn tymczasowy | Tabela Programu Hive będzie zawsze wystawiana. | tak | true |
Etapowej |
| Kontener magazynu | Kontener magazynu używany do przemieszczania danych przed odczytem z programu Hive lub zapisywaniem w programie Hive. Klaster hive musi mieć dostęp do tego kontenera. | tak | Sznurek | pojemnik magazynowy |
| Tymczasowa baza danych | Schemat/baza danych, do której ma dostęp konto użytkownika określone w połączonej usłudze. Służy do tworzenia tabel zewnętrznych podczas przemieszczania i porzucania później | nie |
true lub false |
nazwaBazyDanychStaging |
| Skrypty wstępne SQL | Kod SQL do uruchomienia w tabeli Programu Hive przed odczytaniem danych | nie | Sznurek | przygotowane zapytania SQL |
Przykład źródła
Poniżej przedstawiono przykład konfiguracji źródła programu Hive:
Te ustawienia przekładają się na następujący skrypt przepływu danych:
source(
allowSchemaDrift: true,
validateSchema: false,
ignoreNoFilesFound: false,
format: 'table',
store: 'hive',
schemaName: 'default',
tableName: 'hivesampletable',
staged: true,
storageContainer: 'khive',
storageFolderPath: '',
stagingDatabaseName: 'default') ~> hivesource
Znane ograniczenia
- Typy złożone, takie jak tablice, mapy, struktury i związki, nie są obsługiwane do odczytu.
- Łącznik Hive obsługuje tylko tabele hive w usłudze Azure HDInsight w wersji 4.0 lub nowszej (Apache Hive 3.1.0)
- Domyślnie sterownik Programu Hive udostępnia element "tableName.columnName" w ujściu. Jeśli nie chcesz wyświetlać nazwy tabeli w nazwie kolumny, istnieją dwa sposoby rozwiązania tego problemu. a. Sprawdź ustawienie "hive.resultset.use.unique.column.names" po stronie serwera Hive i ustaw wartość false. b. Użyj mapowania kolumn, aby zmienić nazwę kolumny.
Mapowanie typów danych dla programu Hive
Podczas kopiowania danych z i do programu Hive w usłudze są używane następujące tymczasowe mapowania typów danych. Aby dowiedzieć się, jak działanie kopiowania mapuje schemat źródłowy i typ danych na docelowy, zobacz Mapowanie schematu i typu danych.
| Typ danych Hive | Typ danych usługi tymczasowej (wersja 2.0) | Typ danych usługi tymczasowej (wersja 1.0) |
|---|---|---|
| TINYINT | Sbyte | Int16 |
| SMALLINT | Int16 | Int16 |
| INT | Int32 | Int32 |
| BIGINT | Int32 | Int64 |
| BOOLOWSKI | logiczny | logiczny |
| PŁYWAĆ | Pojedynczy | Pojedynczy |
| Podwójny | Podwójny | Podwójny |
| DZIESIĘTNA | Liczba dziesiętna | Dziesiętny Ciąg (precyzja > 28) |
| STRUNA | Sznurek | Sznurek |
| VARCHAR | Sznurek | Sznurek |
| CHAR | Sznurek | Sznurek |
| ZNACZNIK CZASU | PrzesunięcieDatyICzasu | Data i Czas |
| DATA | Data i Czas | Data i Czas |
| BINARNY | Bajt[] | Bajt[] |
| TABLICA | Sznurek | Sznurek |
| MAPA | Sznurek | Sznurek |
| STRUKTURA | Sznurek | Sznurek |
Właściwości działania wyszukiwania
Aby dowiedzieć się więcej o właściwościach, sprawdź działanie Wyszukiwania.
Cykl życia i aktualizacja łącznika Hive
W poniższej tabeli przedstawiono etap wydania i dzienniki zmian dla różnych wersji łącznika hive:
| wersja | Etap wydania | Dziennik zmian |
|---|---|---|
| Wersja 1.0 | Removed | Nie dotyczy. |
| Wersja 2.0 | Wersja GA dostępna | • Wersja własnego środowiska Integration Runtime powinna być 5.54 lub nowsza. • enableServerCertificateValidation jest obsługiwana. • Wartość domyślna enableSSL to true. • W przypadku typu uwierzytelniania WindowsAzureHDInsightService wartość domyślna to httpPath/hive2. • Liczba dziesiętna jest odczytywana jako typ danych dziesiętnych. • TINYINT jest odczytywany jako typ danych SByte. • TIMESTAMP jest odczytywana jako typ danych DateTimeOffset. • trustedCertPath, useSystemTrustStoreallowHostNameCNMismatch i allowSelfSignedServerCert nie są obsługiwane. • Używanie elementu ";" do oddzielania wielu hostów (tylko wtedy, gdy jest włączona funkcja serviceDiscoveryMode) nie jest obsługiwana. • Serwer HiveServer1 i HiveThriftServer nie są obsługiwane dla programu ServerType. • Typ uwierzytelniania nazwy użytkownika nie jest obsługiwany. Protokół transportowy SASL obsługuje tylko typ uwierzytelniania UsernameAndPassword. Protokół transportu binarnego obsługuje tylko typ uwierzytelniania anonimowego. serviceDiscoveryMode• zooKeeperNameSpacei useNativeQuery nie są obsługiwane. |
Zaktualizuj łącznik Hive z wersji 1.0 do wersji 2.0
Na stronie Edytowanie połączonej usługi wybierz wersję 2.0 i skonfiguruj połączoną usługę, odwołując się do właściwości połączonej usługi w wersji 2.0.
Mapowanie typu danych dla połączonej usługi Hive w wersji 2.0 różni się od tego dla wersji 1.0. Aby dowiedzieć się więcej na temat najnowszego mapowania typów danych, zobacz Mapowanie typów danych dla programu Hive.
Zastosuj samodzielnie hostowane środowisko Integration Runtime w wersji 5.54 lub nowszej.
Powiązana zawartość
Aby uzyskać listę magazynów danych obsługiwanych jako źródła i ujścia działania kopiowania, zobacz obsługiwane magazyny danych.