Adatok másolása HTTP-végpontról az Azure Data Factory vagy az Azure Synapse Analytics 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 az Azure Data Factoryben és az Azure Synapse-ben az adatok HTTP-végpontból való másolásához. A cikk a másolási tevékenységre épül, amely a másolási tevékenység általános áttekintését mutatja be.
A HTTP-összekötő, a REST-összekötő és a webtábla-összekötő közötti különbség a következő:
- A REST-összekötő kifejezetten támogatja az adatok RESTful API-kból való másolását;
- A HTTP-összekötő általánosan bármely HTTP-végpontról, például fájl letöltéséhez kér le adatokat. Mielőtt a REST-összekötő elérhetővé válik, előfordulhat, hogy a HTTP-összekötő használatával másol adatokat a RESTful API-kból, amelyek támogatottak, de kevésbé működnek a REST-összekötőhöz képest.
- A webtábla-összekötő táblatartalmat nyer ki HTML-weblapról.
Támogatott képességek
Ez a HTTP-összekötő a következő képességekhez támogatott:
Támogatott képességek | IR |
---|---|
Copy tevékenység (forrás/-) | (1) (2) |
Keresési tevékenység | (1) (2) |
(1) Azure-integrációs modul (2) Saját üzemeltetésű integrációs modul
A forrásként/fogadóként támogatott adattárak listáját a Támogatott adattárak című témakörben találja.
Ezt a HTTP-összekötőt a következőkre használhatja:
- HTTP-/S-végpont adatainak lekérése a HTTP GET vagy POST metódusok használatával.
- Adatok lekérése a következő hitelesítések egyikével: Névtelen, Alapszintű, Kivonatoló, Windows vagy ClientCertificate.
- Másolja ki a HTTP-választ, vagy elemezheti azt támogatott fájlformátumok és tömörítési kodekek használatával.
Tipp.
Ha a HTTP-összekötő konfigurálása előtt szeretné tesztelni a HTTP-adatlekérési HTTP-kérést, ismerje meg a fejléc- és törzskövetelmények API-specifikációját. Az ellenőrzéshez használhat olyan eszközöket, mint a Postman vagy egy webböngésző.
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:
- Az Adatok másolása eszköz
- Az Azure Portal
- A .NET SDK
- A Python SDK
- Azure PowerShell
- A REST API
- Az Azure Resource Manager-sablon
HTTP-forráshoz társított szolgáltatás létrehozása felhasználói felülettel
Az alábbi lépésekkel http-forráshoz társított szolgáltatást hozhat létre az Azure Portal felhasználói felületén.
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:
Keresse meg a HTTP-t, és válassza ki a HTTP-összekötőt.
Konfigurálja a szolgáltatás részleteit, tesztelje a kapcsolatot, és hozza létre az új társított szolgáltatást.
Az összekötő konfigurációjának részletei
Az alábbi szakaszok a HTTP-összekötőre jellemző entitások definiálásához használható tulajdonságok részleteit ismertetik.
Társított szolgáltatás tulajdonságai
A HTTP-hez társított szolgáltatás esetében a következő tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | A típustulajdonságot HttpServer értékre kell állítani. | Igen |
url | A webkiszolgáló alap URL-címe. | Igen |
enableServerCertificateValidation | Adja meg, hogy engedélyezi-e a kiszolgáló TLS-/SSL-tanúsítványérvényesítését, amikor HTTP-végponthoz csatlakozik. Ha a HTTPS-kiszolgáló önaláírt tanúsítványt használ, állítsa ezt a tulajdonságot hamisra. | Nem (az alapértelmezett érték igaz) |
authenticationType | Megadja a hitelesítési típust. Az engedélyezett értékek a Névtelen, az Alapszintű, a Kivonatoló, a Windows és a ClientCertificate. A hitelesítési fejléceket a tulajdonságban authHeader is konfigurálhatja. A táblázatot követő szakaszokban további tulajdonságokat és JSON-mintákat talál ezekhez a hitelesítési típusokhoz. |
Igen |
authHeaders | További HTTP-kérelemfejlécek a hitelesítéshez. Az API-kulcsos hitelesítés használatához például kiválaszthatja a hitelesítési típust "Névtelen" néven, és megadhatja az API-kulcsot a fejlécben. |
Nem |
connectVia | Az adattárhoz való csatlakozáshoz használható integrációs modul . További információ az Előfeltételek szakaszból. Ha nincs megadva, a rendszer az alapértelmezett Azure Integration Runtime-t használja. | Nem |
Alapszintű, kivonatoló vagy Windows-hitelesítés használata
Állítsa be az authenticationType tulajdonságot Alapszintű, Kivonat vagy Windows értékre. Az előző szakaszban ismertetett általános tulajdonságok mellett adja meg a következő tulajdonságokat:
Tulajdonság | Leírás | Kötelező |
---|---|---|
Felhasználónév | A HTTP-végpont eléréséhez használandó felhasználónév. | Igen |
jelszó | A felhasználó jelszava (a userName érték). Jelölje meg ezt a mezőt SecureString-típusként a biztonságos tároláshoz. Hivatkozhat az Azure Key Vaultban tárolt titkos kódokra is. | Igen |
Példa
{
"name": "HttpLinkedService",
"properties": {
"type": "HttpServer",
"typeProperties": {
"authenticationType": "Basic",
"url" : "<HTTP endpoint>",
"userName": "<user name>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
ClientCertificate hitelesítés használata
A ClientCertificate hitelesítés használatához állítsa az authenticationType tulajdonságot ClientCertificate értékre. Az előző szakaszban ismertetett általános tulajdonságok mellett adja meg a következő tulajdonságokat:
Tulajdonság | Leírás | Kötelező |
---|---|---|
embeddedCertData | Base64-kódolású tanúsítványadatok. | Adja meg a embeddedCertData vagy a certThumbprint értéket. |
certThumbprint | A saját üzemeltetésű integrációs futtatókörnyezeti gép tanúsítványtárolójában telepített tanúsítvány ujjlenyomata. Csak akkor érvényes, ha a connectVia tulajdonságban meg van adva az integrációs modul saját üzemeltetésű típusa. | Adja meg a embeddedCertData vagy a certThumbprint értéket. |
jelszó | A tanúsítványhoz társított jelszó. Jelölje meg ezt a mezőt SecureString-típusként a biztonságos tároláshoz. Hivatkozhat az Azure Key Vaultban tárolt titkos kódokra is. | Nem |
Ha a hitelesítéshez certThumbprintet használ, és a tanúsítvány telepítve van a helyi számítógép személyes tárolójában, adjon olvasási engedélyeket a saját üzemeltetésű integrációs modulnak:
- Nyissa meg a Microsoft Felügyeleti konzolt (MMC). Adja hozzá a helyi számítógépet megcélzó Tanúsítványok beépülő modult.
- Bontsa ki a>Személyes tanúsítványok elemet, majd válassza a Tanúsítványok lehetőséget.
- Kattintson a jobb gombbal a személyes tár tanúsítványára, majd válassza a Minden feladat>kezelése titkos kulcsok parancsot.
- A Biztonság lapon adja hozzá azt a felhasználói fiókot, amely alatt az Integrációs modul gazdagépszolgáltatása (DIAHostService) fut, és olvasási hozzáféréssel rendelkezik a tanúsítványhoz.
- A HTTP-összekötő csak megbízható tanúsítványokat tölt be. Ha önaláírt vagy nem minősített hitelesítésszolgáltatói tanúsítványt használ, a megbízhatóság engedélyezéséhez a tanúsítványt az alábbi üzletek egyikében is telepíteni kell:
- Megbízható személyek
- Külső legfelső szintű hitelesítésszolgáltatók
- Megbízható legfelső szintű hitelesítésszolgáltatók
1. példa: A certThumbprint használata
{
"name": "HttpLinkedService",
"properties": {
"type": "HttpServer",
"typeProperties": {
"authenticationType": "ClientCertificate",
"url": "<HTTP endpoint>",
"certThumbprint": "<thumbprint of certificate>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
2. példa: EmbeddedCertData használata
{
"name": "HttpLinkedService",
"properties": {
"type": "HttpServer",
"typeProperties": {
"authenticationType": "ClientCertificate",
"url": "<HTTP endpoint>",
"embeddedCertData": "<Base64-encoded cert data>",
"password": {
"type": "SecureString",
"value": "password of cert"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Hitelesítési fejlécek használata
Emellett konfigurálhatja a kérésfejléceket a hitelesítéshez a beépített hitelesítési típusokkal együtt.
Példa: API-kulcs hitelesítése
{
"name": "HttpLinkedService",
"properties": {
"type": "HttpServer",
"typeProperties": {
"url": "<HTTP endpoint>",
"authenticationType": "Anonymous",
"authHeader": {
"x-api-key": {
"type": "SecureString",
"value": "<API key>"
}
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Adathalmaz tulajdonságai
Az adathalmazok meghatározásához elérhető szakaszok és tulajdonságok teljes listáját az Adathalmazok című cikkben találja.
Az Azure Data Factory a következő fájlformátumokat támogatja. A formátumalapú beállításokat az egyes cikkekben találja.
- Avro formátum
- Bináris formátum
- Tagolt szövegformátum
- Excel-formátum
- JSON formátum
- ORC formátum
- Parquet formátum
- XML-formátum
A formátumalapú adathalmaz beállításai között location
a HTTP a következő tulajdonságokat támogatja:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | Az adathalmaz típustulajdonságának location HttpServerLocation értékre kell állítania. |
Igen |
relativeUrl | Az adatokat tartalmazó erőforrás relatív URL-címe. A HTTP-összekötő adatokat másol a kombinált URL-címről: [URL specified in linked service][relative URL specified in dataset] . |
Nem |
Feljegyzés
A támogatott HTTP-kérés hasznos adatmérete körülbelül 500 KB. Ha a webes végpontnak átadni kívánt hasznos adat mérete nagyobb, mint 500 KB, fontolja meg a hasznos adatok kötegelését kisebb adattömbökben.
Példa:
{
"name": "DelimitedTextDataset",
"properties": {
"type": "DelimitedText",
"linkedServiceName": {
"referenceName": "<HTTP linked service name>",
"type": "LinkedServiceReference"
},
"schema": [ < physical schema, optional, auto retrieved during authoring > ],
"typeProperties": {
"location": {
"type": "HttpServerLocation",
"relativeUrl": "<relative url>"
},
"columnDelimiter": ",",
"quoteChar": "\"",
"firstRowAsHeader": true,
"compressionCodec": "gzip"
}
}
}
Másolási tevékenység tulajdonságai
Ez a szakasz a HTTP-forrás által támogatott tulajdonságok listáját tartalmazza.
A tevékenységek meghatározásához elérhető szakaszok és tulajdonságok teljes listáját a Folyamatok című témakörben találja.
HTTP forrásként
Az Azure Data Factory a következő fájlformátumokat támogatja. A formátumalapú beállításokat az egyes cikkekben találja.
- Avro formátum
- Bináris formátum
- Tagolt szövegformátum
- Excel-formátum
- JSON formátum
- ORC formátum
- Parquet formátum
- XML-formátum
A HTTP formátumalapú másolási forrás beállításai között storeSettings
az alábbi tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | Az alatta lévő storeSettings típustulajdonságnak HttpReadSettings értékre kell állítania. |
Igen |
requestMethod | A HTTP metódus. Az engedélyezett értékek a Beolvasás (alapértelmezett) és a Post. |
Nem |
additionalHeaders | További HTTP-kérelemfejlécek. | Nem |
requestBody | A HTTP-kérés törzse. | Nem |
httpRequestTimeout | A HTTP-kérés időtúllépése (a TimeSpan értéke) a válasz lekéréséhez. Ez az érték a válasz lekéréséhez szükséges időtúllépés, nem pedig a válaszadatok olvasásának időtúllépése. Az alapértelmezett érték 00:01:40. | Nem |
maxConcurrentConnections | Az adattárhoz a tevékenység futtatása során létrehozott egyidejű kapcsolatok felső korlátja. Csak akkor adjon meg értéket, ha korlátozni szeretné az egyidejű kapcsolatokat. | Nem |
Példa:
"activities":[
{
"name": "CopyFromHTTP",
"type": "Copy",
"inputs": [
{
"referenceName": "<Delimited text input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "DelimitedTextSource",
"formatSettings":{
"type": "DelimitedTextReadSettings",
"skipLineCount": 10
},
"storeSettings":{
"type": "HttpReadSettings",
"requestMethod": "Post",
"additionalHeaders": "<header key: header value>\n<header key: header value>\n",
"requestBody": "<body for POST HTTP request>"
}
},
"sink": {
"type": "<sink type>"
}
}
}
]
Keresési tevékenység tulajdonságai
A tulajdonságok részleteinek megismeréséhez tekintse meg a keresési tevékenységet.
Örökölt modellek
Feljegyzés
Az alábbi modellek továbbra is támogatottak a visszamenőleges kompatibilitás érdekében. Javasoljuk, hogy a fenti szakaszokban említett új modellt használja, és a szerzői felhasználói felület átállt az új modell létrehozására.
Örökölt adathalmaz-modell
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | Az adathalmaz típustulajdonságának HttpFile értékre kell állítania. | Igen |
relativeUrl | Az adatokat tartalmazó erőforrás relatív URL-címe. Ha ez a tulajdonság nincs megadva, a rendszer csak a társított szolgáltatás definíciójában megadott URL-címet használja. | Nem |
requestMethod | A HTTP metódus. Az engedélyezett értékek a Beolvasás (alapértelmezett) és a Post. | Nem |
additionalHeaders | További HTTP-kérelemfejlécek. | Nem |
requestBody | A HTTP-kérés törzse. | Nem |
format | Ha elemzés nélkül szeretné lekérni az adatokat a HTTP-végpontról, majd fájlalapú tárolóba másolja az adatokat, hagyja ki a formátumszakaszt a bemeneti és kimeneti adatkészlet-definíciókban. Ha másolás közben szeretné elemezni a HTTP-válasz tartalmát, a következő fájlformátum-típusok támogatottak: TextFormat, JsonFormat, AvroFormat, OrcFormat és ParquetFormat. A Formátum csoportban állítsa be a típustulajdonságot ezen értékek egyikére. További információ: JSON formátum, Szövegformátum, Avro formátum, Orc formátum és Parquet formátum. |
Nem |
tömörítés | Adja meg az adatok tömörítési típusát és szintjét. További információ: Támogatott fájlformátumok és tömörítési kodekek. Támogatott típusok: GZip, Deflate, BZip2 és ZipDeflate. Támogatott szintek: Optimális és Leggyorsabb. |
Nem |
Feljegyzés
A támogatott HTTP-kérés hasznos adatmérete körülbelül 500 KB. Ha a webes végpontnak átadni kívánt hasznos adat mérete nagyobb, mint 500 KB, fontolja meg a hasznos adatok kötegelését kisebb adattömbökben.
1. példa: A Get metódus használata (alapértelmezett)
{
"name": "HttpSourceDataInput",
"properties": {
"type": "HttpFile",
"linkedServiceName": {
"referenceName": "<HTTP linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties": {
"relativeUrl": "<relative url>",
"additionalHeaders": "Connection: keep-alive\nUser-Agent: Mozilla/5.0\n"
}
}
}
2. példa: A Post metódus használata
{
"name": "HttpSourceDataInput",
"properties": {
"type": "HttpFile",
"linkedServiceName": {
"referenceName": "<HTTP linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties": {
"relativeUrl": "<relative url>",
"requestMethod": "Post",
"requestBody": "<body for POST HTTP request>"
}
}
}
Régi másolási tevékenység forrásmodellje
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | A másolási tevékenység forrásának típustulajdonságát HttpSource értékre kell állítani. | Igen |
httpRequestTimeout | A HTTP-kérés időtúllépése (a TimeSpan értéke) a válasz lekéréséhez. Ez az érték a válasz lekéréséhez szükséges időtúllépés, nem pedig a válaszadatok olvasásának időtúllépése. Az alapértelmezett érték 00:01:40. | Nem |
Példa
"activities":[
{
"name": "CopyFromHTTP",
"type": "Copy",
"inputs": [
{
"referenceName": "<HTTP input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "HttpSource",
"httpRequestTimeout": "00:01:00"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Kapcsolódó tartalom
Azoknak az adattáraknak a listáját, amelyeket a Másolási tevékenység forrásként és fogadóként támogat, tekintse meg a támogatott adattárakat és formátumokat.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: