Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Vonatkozik:
Azure Data Factory
Azure Synapse Analytics
Tipp.
Ez a cikk azt ismerteti, hogyan használhatja a Másolási tevékenységet Azure Data Factory és Azure Synapse az adatok HTTP-végpontró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 | integrációs modul |
|---|---|
| Másolási 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 vagyPOST metódusok használatával.
- Adatok lekérése az alábbi hitelesítések egyikével: Anonymous, Basic, Digest, 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 Visual Studio, a PowerShell Invoke-RestMethod vagy egy webböngésző.
Előfeltételek
Ha az adattár egy helyszíni hálózaton, egy Azure virtuális hálózaton vagy az Amazon Virtual Private Cloudon belül található, konfigurálnia kell egy önállóan üzemeltetett integrációs modult a csatlakozáshoz.
Ha az adattár felügyelt felhőalapú adatszolgáltatás, használhatja a Azure Integration Runtime. 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-címeket az engedélyezési listához.
A Azure Data Factory felügyelt virtuális hálózati integrációs modul funkciójával is hozzáférhet a helyszíni hálózathoz saját üzemeltetésű integrációs modul telepítése és konfigurálása nélkül.
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 másolási tevékenység végrehajtásához egy folyamattal használhatja az alábbi eszközök vagy SDK-k egyikét:
- Adatok másolása eszköz
- Azure portál
- .NET SDK
- Python SDK
- Azure PowerShell
- REST API
- 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 csatolt szolgáltatást hozhat létre a Azure portál felhasználói felületén.
Keresse meg a Azure Data Factory vagy 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 |
| szerverTanúsítványEllenőrzésBeállítása | 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) |
| hitelesítésTípus | Megadja a hitelesítési típust. Az engedélyezett értékek Anonymous, Basic, Digest, Windows és 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álandó Integration Runtime. További információ az Előfeltételek szakaszból. Ha nincs megadva, a rendszer az alapértelmezett Azure Integration Runtime használja. | Nem |
Alapszintű, kivonatoló vagy Windows hitelesítés használata
Állítsa a authenticationType tulajdonságot Basic, Digest 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. Az Azure Key Vault-ban tárolt titkos adat hivatkozását is használhatja. | 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ő |
|---|---|---|
| beágyazottTanúsítványAdat | Base64-kódolású tanúsítványadatok. | Adja meg a embeddedCertData vagy certThumbprint értéket. |
| certThumbprint | A saját üzemeltetésű Integration Runtime számítógép tanúsítványtárolójára telepített tanúsítvány ujjlenyomata. Csak akkor érvényes, ha a saját üzemeltetésű Integration Runtime a connectVia tulajdonságban van megadva. | Adja meg a embeddedCertData vagy 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. Az Azure Key Vault-ban tárolt titkos adat hivatkozását is használhatja. | Nem |
Ha certThumbprint-et használ a hitelesítéshez, és a tanúsítvány a helyi számítógép személyes tárolójában van telepítve, adjon olvasási engedélyeket az önállóan üzemeltetett Integration Runtime-nak.
- Nyissa meg a Microsoft Management Console (MMC). Adja hozzá a helyi számítógépet megcélzó Tanúsítványok beépülő modult.
- Bontsa ki a Tanúsítványok>Személyes elemet, majd válassza a Tanúsítványok elemet.
- Kattintson a jobb gombbal a személyes tároló tanúsítványára, majd válassza a Minden feladat>Privát kulcsok kezelése parancsot.
- A Security lapon adja hozzá azt a felhasználói fiókot, amely alatt a Integration Runtime gazdagépszolgáltatás (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.
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 location elem alatt lévő adathalmazban a típustulajdonságot HttpServerLocation értékre kell állítani. |
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
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 storeSettings beállításai között a formátumalapú másolási forrás számára az alábbi HTTP-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 | Az HTTP metódus. Az engedélyezett értékek a "Get" (alapértelmezett) és a "Post". |
Nem |
| továbbiFejlécek | További HTTP-kérelemfejlécek. | Nem |
| requestBody | A HTTP-kérés törzse. | Nem |
| HTTP-kérés-időtúllépés | 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 |
| maximális egyidejű kapcsolatok száma | 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 | Az HTTP metódus. Az engedélyezett értékek a "Get" (alapértelmezett) és a "Post". | Nem |
| továbbiFejlécek | További HTTP-kérelemfejlécek. | Nem |
| requestBody | A HTTP-kérés törzse. | Nem |
| formátum | 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 |
| HTTP-kérés-időtúllépés | 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.