Adatok másolása és átalakítása a Hive-ből az Azure Data Factory használatával

A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!

Ez a cikk azt ismerteti, hogyan használhatja a másolási tevékenységet egy Azure Data Factory vagy Synapse Analytics-folyamatban az adatok Hive-ből való másolásához. A másolási tevékenység áttekintési cikkére épül, amely a másolási tevékenység általános áttekintését mutatja be.

Támogatott képességek

Ez a Hive-összekötő a következő képességeket támogatja:

Támogatott képességek IR
Copy tevékenység (forrás/-) ① ②
Adatfolyam leképezése (forrás/-)
Keresési tevékenység ① ②

(1) Azure-integrációs modul (2) Saját üzemeltetésű integrációs modul

A másolási tevékenység által forrásként/fogadóként támogatott adattárak listáját a Támogatott adattárak táblában találja.

A szolgáltatás egy beépített illesztőprogramot biztosít a kapcsolat engedélyezéséhez, ezért nem kell manuálisan telepítenie egyetlen illesztőprogramot sem ezzel az összekötővel.

Előfeltételek

Ha az adattár helyszíni hálózaton, Azure-beli virtuális hálózaton vagy Amazon Virtual Private Cloudon belül található, konfigurálnia kell egy saját üzemeltetésű integrációs modult a csatlakozáshoz.

Ha az adattár felügyelt felhőalapú adatszolgáltatás, használhatja az Azure Integration Runtime-ot. Ha a hozzáférés a tűzfalszabályokban jóváhagyott IP-címekre korlátozódik, hozzáadhat azure integration runtime IP-eket az engedélyezési listához.

Az Azure Data Factory felügyelt virtuális hálózati integrációs moduljával is elérheti a helyszíni hálózatot anélkül, hogy saját üzemeltetésű integrációs modult telepítene és konfigurálna.

A Data Factory által támogatott hálózati biztonsági mechanizmusokkal és lehetőségekkel kapcsolatos további információkért lásd az adathozzáférési stratégiákat.

Első lépések

A Copy tevékenység folyamattal való végrehajtásához használja az alábbi eszközök vagy SDK-k egyikét:

Társított szolgáltatás létrehozása a Hive-hez felhasználói felületen

Az alábbi lépésekkel létrehozhat egy társított szolgáltatást a Hive-hez az Azure Portal felhasználói felületén.

  1. Keresse meg az Azure Data Factory vagy a Synapse-munkaterület Kezelés lapját, és válassza a Társított szolgáltatások lehetőséget, majd kattintson az Új gombra:

  2. Keresse meg a Hive-t, és válassza ki a Hive-összekötőt.

    Select the Hive connector.

  3. Konfigurálja a szolgáltatás részleteit, tesztelje a kapcsolatot, és hozza létre az új társított szolgáltatást.

    Configure a linked service to Hive.

Csatlakozás or konfigurációjának részletei

Az alábbi szakaszok részletesen ismertetik a Hive-összekötőre jellemző Data Factory-entitások definiálásához használt tulajdonságokat.

Társított szolgáltatás tulajdonságai

A Hive társított szolgáltatás esetében a következő tulajdonságok támogatottak:

Property Leírás Required
típus A típustulajdonságnak a következőre kell állítania: Hive Igen
házigazda A Hive-kiszolgáló IP-címe vagy gazdagépneve, több gazdagép esetén ";" elválasztva (csak akkor, ha a ServiceDiscoveryMode engedélyezve van). Igen
kikötő A Hive-kiszolgáló által az ügyfélkapcsolatok figyelésére használt TCP-port. Ha az Azure HDInsighthoz csatlakozik, adja meg a 443-as portot. Igen
serverType A Hive-kiszolgáló típusa.
Az engedélyezett értékek a következők: HiveServer1, HiveServer2, HiveThriftServer
Nem
thriftTransportProtocol A Thrift-rétegben használandó átviteli protokoll.
Az engedélyezett értékek a következők: Bináris, SASL, HTTP
Nem
authenticationType A Hive-kiszolgáló eléréséhez használt hitelesítési módszer.
Az engedélyezett értékek a következők: Névtelen, Felhasználónév, UsernameAndPassword, WindowsAzureHDInsightService. A Kerberos-hitelesítés jelenleg nem támogatott.
Igen
serviceDiscoveryMode true to indicate using the ZooKeeper service, false not. Nem
zooKeeperNameSpace A ZooKeeper névtere, amely alá a Hive Server 2 csomópontok kerülnek. Nem
useNativeQuery Megadja, hogy az illesztőprogram natív HiveQL-lekérdezéseket használ-e, vagy a HiveQL-ben egyenértékű űrlapmá alakítja őket. Nem
username A Hive Server eléréséhez használt felhasználónév. Nem
jelszó A felhasználónak megfelelő jelszó. Jelölje meg ezt a mezőt SecureStringként, hogy biztonságosan tárolja, vagy hivatkozzon az Azure Key Vaultban tárolt titkos kódra. Nem
httpPath A Hive-kiszolgálónak megfelelő részleges URL-cím. Nem
enableSsl Megadja, hogy a kiszolgálóhoz való kapcsolatok TLS-sel vannak-e titkosítva. Az alapértelmezett érték: hamis. Nem
trustedCertPath A megbízható hitelesítésszolgáltatói tanúsítványokat tartalmazó .pem fájl teljes elérési útja a kiszolgáló TLS-en keresztüli csatlakozáskor történő ellenőrzéséhez. Ez a tulajdonság csak akkor állítható be, ha tLS-t használ a saját üzemeltetésű integrációs modulon. Az alapértelmezett érték az integrációs modullal telepített cacerts.pem fájl. Nem
useSystemTrustStore Megadja, hogy a rendszer megbízhatósági tárolójából vagy egy megadott PEM-fájlból használjon-e ca-tanúsítványt. Az alapértelmezett érték: hamis. Nem
allowHostNameCNMismatch Megadja, hogy megkövetelje-e a hitelesítésszolgáltató által kiadott TLS/SSL-tanúsítvány nevét, hogy megfeleljen a kiszolgáló gazdagépnevének, amikor TLS-en keresztül csatlakozik. Az alapértelmezett érték: hamis. Nem
allowSelfSignedServerCert Megadja, hogy engedélyezi-e az önaláírt tanúsítványokat a kiszolgálóról. Az alapértelmezett érték: hamis. Nem
connectVia Az adattárhoz való csatlakozáshoz használandó integrációs modul . További információ az Előfeltételek szakaszból. Ha nincs megadva, az alapértelmezett Azure Integration Runtime-t használja. Nem
storageReference Hivatkozás a tárfiók társított szolgáltatására, amely a leképezési adatfolyamban lévő adatok átmeneti tárolására szolgál. Erre csak akkor van szükség, ha a Hive társított szolgáltatást használja az adatfolyam leképezéséhez Nem

Példa

{
    "name": "HiveLinkedService",
    "properties": {
        "type": "Hive",
        "typeProperties": {
            "host" : "<cluster>.azurehdinsight.net",
            "port" : "<port>",
            "authenticationType" : "WindowsAzureHDInsightService",
            "username" : "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        }
    }
}

Adathalmaz tulajdonságai

Az adathalmazok meghatározásához elérhető szakaszok és tulajdonságok teljes listáját az adathalmazokról szóló cikkben találja. Ez a szakasz a Hive-adathalmaz által támogatott tulajdonságok listáját tartalmazza.

Ha adatokat szeretne másolni a Hive-ből, állítsa az adathalmaz típustulajdonságát HiveObject értékre. A következő tulajdonságok támogatottak:

Property Leírás Required
típus Az adathalmaz típustulajdonságának a következőnek kell lennie: HiveObject Igen
schema A séma neve. Nem (ha "lekérdezés" van megadva a tevékenységforrásban)
table A tábla neve. Nem (ha "lekérdezés" van megadva a tevékenységforrásban)
tableName A tábla neve a sémarészt is beleértve. Ez a tulajdonság támogatja a visszamenőleges kompatibilitást. Új számítási feladatokhoz használja schema és table. Nem (ha "lekérdezés" van megadva a tevékenységforrásban)

Példa

{
    "name": "HiveDataset",
    "properties": {
        "type": "HiveObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Hive linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Másolási tevékenység tulajdonságai

A tevékenységek meghatározásához elérhető szakaszok és tulajdonságok teljes listáját a Folyamatok című cikkben találja. Ez a szakasz a Hive-forrás által támogatott tulajdonságok listáját tartalmazza.

HiveSource forrásként

Ha adatokat szeretne másolni a Hive-ből, állítsa a forrástípust a másolási tevékenységben a HiveSource-ra. A másolási tevékenység forrás szakaszában a következő tulajdonságok támogatottak:

Property Leírás Required
típus A másolási tevékenység forrásának típustulajdonságának a következőnek kell lennie: HiveSource Igen
Lekérdezés Az adatok olvasásához használja az egyéni SQL-lekérdezést. For example: "SELECT * FROM MyTable". Nem (ha "tableName" van megadva az adathalmazban)

Példa

"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>"
            }
        }
    }
]

Adatfolyam-tulajdonságok leképezése

A hive-összekötő beágyazott adathalmaz-forrásként támogatott az adatfolyamok leképezésében. Olvasás lekérdezéssel vagy közvetlenül egy Hive-táblából a HDInsightban. A hive-adatok parquet-fájlokként lesznek formázva egy tárfiókban, mielőtt az adatfolyam részeként átalakítanák.

Forrástulajdonságok

Az alábbi táblázat felsorolja a hive-forrás által támogatott tulajdonságokat. Ezeket a tulajdonságokat a Forrás beállításai lapon szerkesztheti.

Name Leírás Required Megengedett értékek Adatfolyam-szkript tulajdonság
Tárolás A tárolónak hive igen hive hozzáadásához
Format Akár táblázatból, akár lekérdezésből olvas igen table vagy query format
Séma neve Ha egy táblából olvas, a forrástábla sémája Igen, ha a formátum table Sztring schemaName
Tábla neve Ha táblázatból olvas, a tábla neve Igen, ha a formátum table Sztring tableName
Query Ha formátum, queryakkor a Hive társított szolgáltatás forrás lekérdezése Igen, ha a formátum query Sztring Lekérdezés
Színre A Hive-tábla mindig meg lesz rendezve. igen true Színre
Tároló tárolója A Hive-ből való olvasás vagy a Hive-be való írás előtt az adatok szakaszos tárolására szolgáló tároló. A kaptárfürtnek hozzá kell férnie ehhez a tárolóhoz. igen Sztring storageContainer
Átmeneti adatbázis Az a séma/adatbázis, amelyhez a társított szolgáltatásban megadott felhasználói fiók rendelkezik hozzáféréssel. Külső táblák létrehozására szolgál az előkészítés során, majd később elvetve nem true vagy false stagingDatabaseName
SQL-szkriptek előtti parancsprogramok SQL-kód, amely az adatok olvasása előtt fut a Hive-táblán nem Sztring preSQLs

Példa forrásra

Az alábbi példa egy Hive-forráskonfigurációra mutat be példát:

Hive source example

Ezek a beállítások a következő adatfolyam-szkriptet jelentik:

source(
    allowSchemaDrift: true,
    validateSchema: false,
    ignoreNoFilesFound: false,
    format: 'table',
    store: 'hive',
    schemaName: 'default',
    tableName: 'hivesampletable',
    staged: true,
    storageContainer: 'khive',
    storageFolderPath: '',
    stagingDatabaseName: 'default') ~> hivesource

Known limitations

  • Az olyan összetett típusok, mint a tömbök, a térképek, a szerkezetek és az egyesítők nem támogatottak az olvasáshoz.
  • A Hive-összekötő csak a Hive-táblákat támogatja az Azure HDInsight 4.0-s vagy újabb verziójában (Apache Hive 3.1.0)
  • A Hive-illesztő alapértelmezés szerint a "tableName.columnName" értéket adja meg a fogadóban. Ha nem szeretné látni a tábla nevét az oszlopnévben, akkor ezt kétféleképpen lehet kijavítani. a. Ellenőrizze a hive.resultset.use.unique.column.names" beállítást a Hive kiszolgáló oldalán, és állítsa hamisra. b. Az oszlopnév átnevezése oszlopleképezés használatával.

Keresési tevékenység tulajdonságai

A tulajdonságok részleteinek megismeréséhez tekintse meg a keresési tevékenységet.

A másolási tevékenység által forrásként és fogadóként támogatott adattárak listáját a támogatott adattárakban találja.