Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
VZTAHUJE SE NA:
Azure Data Factory
Azure Synapse Analytics
Tip
Data Factory v Microsoft Fabric je nová generace Azure Data Factory s jednodušší architekturou, integrovanou AI a novými funkcemi. Pokud s integrací dat začínáte, začněte Fabric Data Factory. Stávající úlohy ADF lze upgradovat na Fabric pro přístup k novým funkcím v oblastech datové vědy, analýz v reálném čase a vytváření sestav.
Tento článek popisuje, jak pomocí aktivity kopírování v Azure Data Factory a Azure Synapse kopírovat data z koncového bodu HTTP. Článek vychází z Copy Activity, která představuje obecný přehled Copy Activity.
Poznámka:
Tento konektor je také k dispozici ve službě Data Factory v Microsoft Fabric. Informace o konfiguraci a funkcích specifických pro Fabric najdete v dokumentaci ke konektoru Fabric HTTP.
Rozdíl mezi tímto konektorem HTTP, konektorem REST a konektorem webové tabulky jsou:
- Konektor REST konkrétně podporuje kopírování dat z rozhraní RESTful API;
- Konektor HTTP je obecný k načtení dat z libovolného koncového bodu HTTP, například ke stažení souboru. Než bude konektor REST dostupný, může se stát, že pomocí konektoru HTTP zkopírujete data z rozhraní RESTful API, což je podporované, ale méně funkční porovnání s konektorem REST.
- Konektor webové tabulky extrahuje obsah tabulky z webové stránky HTML.
Podporované funkce
Tento konektor HTTP je podporovaný pro následující funkce:
| Podporované funkce | IR |
|---|---|
| aktivita Copy (zdroj/-) | (1) (2) |
| Vyhledávací aktivita | (1) (2) |
(1) Azure Integration Runtime (2) Lokálně hostované Integration Runtime
Seznam úložišť dat podporovaných jako zdroje nebo jímky najdete v tématu Podporované úložiště dat.
Tento konektor HTTP můžete použít k:
- Načtěte data z koncového bodu HTTP/S pomocí metod HTTP GET nebo POST .
- Načtení dat pomocí jednoho z následujících ověřování: Anonymous, Basic, Digest, Windows nebo ClientCertificate.
- Zkopírujte odpověď HTTP tak, jak je, nebo ji parsujte pomocí podporovaných formátů souborů a komprese kodeků.
Tip
Pokud chcete otestovat požadavek HTTP na načtení dat před konfigurací konektoru HTTP, přečtěte si o specifikaci rozhraní API pro požadavky na hlavičku a tělo. K ověření můžete použít nástroje, jako jsou Visual Studio, Invoke-RestMethod PowerShellu nebo webový prohlížeč.
Požadavky
Pokud se vaše úložiště dat nachází uvnitř místní sítě, Azure virtuální sítě, nebo Amazon Virtual Private Cloud, musíte pro připojení nakonfigurovat self-hosted Integration Runtime.
Pokud je vaše úložiště dat spravovanou cloudovou datovou službou, můžete použít Azure Integration Runtime. Pokud je přístup omezený na IP adresy schválené v pravidlech brány firewall, můžete do seznamu povolených přidat ip adresy Azure Integration Runtime.
Funkci managed virtual network Integration Runtime můžete také použít v Azure Data Factory pro přístup k místní síti bez nutnosti instalace a konfigurace místního prostředí Integration Runtime.
Další informace o mechanismech zabezpečení sítě a možnostech podporovaných službou Data Factory najdete v tématu Strategie přístupu k datům.
Začínáme
K provedení aktivity kopírování pomocí datového kanálu můžete použít jeden z následujících nástrojů nebo sad SDK:
- Nástroj pro kopírování dat
- portál Azure
- .NET SDK
- Python SDK
- Azure PowerShell
- REST API
- šablona Azure Resource Manager
Vytvoření propojené služby ke zdroji HTTP pomocí uživatelského rozhraní
Pomocí následujícího postupu vytvořte propojenou službu ke zdroji HTTP v uživatelském rozhraní portálu Azure.
Přejděte na kartu Spravovat v pracovním prostoru Azure Data Factory nebo Synapse a vyberte Propojené služby a potom klikněte na Nový:
Vyhledejte HTTP a vyberte konektor HTTP.
Nakonfigurujte podrobnosti o službě, otestujte připojení a vytvořte novou propojenou službu.
Podrobnosti konfigurace konektoru
Následující části obsahují podrobnosti o vlastnostech, které můžete použít k definování entit specifických pro konektor HTTP.
Vlastnosti propojené služby
Propojená služba HTTP podporuje následující vlastnosti:
| Vlastnost | Popis | Povinné |
|---|---|---|
| typ | Vlastnost typu musí být nastavena na HttpServer. | Ano |
| url | Základní adresa URL webového serveru. | Ano |
| enableServerCertificateValidation | Určete, jestli se má při připojení ke koncovému bodu HTTP povolit ověření certifikátu TLS/SSL serveru. Pokud váš server HTTPS používá certifikát podepsaný svým držitelem, nastavte tuto vlastnost na false. | Ne (výchozí hodnota je true) |
| typ autentizace | Určuje typ ověřování. Povolené hodnoty jsou Anonymous, Basic, Digest, Windows a ClientCertificate. Můžete také nakonfigurovat hlavičky ověřování v rámci vlastnosti authHeader. Další vlastnosti a ukázky JSON pro tyto typy ověřování najdete v částech, které následují v této tabulce. |
Ano |
| authHeaders | Další hlavičky požadavku HTTP pro ověřování. Pokud například chcete použít ověřování pomocí klíče rozhraní API, můžete vybrat typ ověřování jako Anonymní a zadat klíč rozhraní API v hlavičce. |
Ne |
| connectVia | Integration Runtime použít pro připojení k úložišti dat. Další informace najdete v části Požadavky . Pokud není zadaný, použije se výchozí Azure Integration Runtime. | Ne |
Použití základního, digestu nebo Windows authentication
Nastavte vlastnost authenticationType na Basic, Digest nebo Windows. Kromě obecných vlastností popsaných v předchozí části zadejte následující vlastnosti:
| Vlastnost | Popis | Povinné |
|---|---|---|
| userName | Uživatelské jméno, které se má použít pro přístup ke koncovému bodu HTTP. | Ano |
| heslo | Heslo pro uživatele ( hodnota userName ). Označte toto pole jako typ SecureString , abyste ho bezpečně uložili. Můžete také odložit tajný kód uložený v Azure Key Vault. | Ano |
Příklad
{
"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"
}
}
}
Použití ověřování klientského certifikátu
Chcete-li použít ověřování ClientCertificate, nastavte vlastnost authenticationType na ClientCertificate. Kromě obecných vlastností popsaných v předchozí části zadejte následující vlastnosti:
| Vlastnost | Popis | Povinné |
|---|---|---|
| embeddedCertData | Data certifikátu s kódováním Base64 | Zadejte identifikátor embeddedCertData nebo identifikátor certThumbprint. |
| certThumbprint | Kryptografický otisk certifikátu nainstalovaného v úložišti certifikátů místního počítače Integration Runtime. Platí pouze v případech, kdy je ve vlastnosti connectVia zadaný typ Integration Runtime. | Zadejte identifikátor embeddedCertData nebo identifikátor certThumbprint. |
| heslo | Heslo přidružené k certifikátu. Označte toto pole jako typ SecureString , abyste ho bezpečně uložili. Můžete také odložit tajný kód uložený v Azure Key Vault. | Ne |
Pokud používáte certThumbprint k ověřování a certifikát je nainstalovaný v osobním úložišti místního počítače, udělte oprávnění ke čtení místnímu Integration Runtime:
- Otevřete konzola Microsoft Management Console (MMC). Přidejte modul snap-in Certifikáty, který cílí na místní počítač.
- Rozbalte položku Certifikáty>Osobní a pak vyberte Certifikáty.
- Klikněte pravým tlačítkem myši na certifikát z osobního úložiště a pak vyberte Všechny úkoly>spravovat privátní klíče.
- Na kartě Security přidejte uživatelský účet, pod kterým je spuštěná hostitelská služba Integration Runtime (DIAHostService) s přístupem pro čtení k certifikátu.
- Konektor HTTP načte pouze důvěryhodné certifikáty. Pokud používáte certifikát podepsaný vlastní rukou nebo neintegrovaný certifikát vydaný certifikační autoritou, pro umožnění důvěry musí být certifikát nainstalován také v jednom z následujících úložišť:
- Důvěryhodné osoby
- Kořenové certifikační autority třetích stran
- důvěryhodné kořenové certifikační autority
Příklad 1: Použití nástroje certThumbprint
{
"name": "HttpLinkedService",
"properties": {
"type": "HttpServer",
"typeProperties": {
"authenticationType": "ClientCertificate",
"url": "<HTTP endpoint>",
"certThumbprint": "<thumbprint of certificate>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Příklad 2: Použití embeddedCertData
{
"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"
}
}
}
Použití ověřovacích hlaviček
Kromě toho můžete nakonfigurovat hlavičky požadavků pro ověřování spolu s integrovanými typy ověřování.
Příklad: Použití ověřování pomocí klíče rozhraní API
{
"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"
}
}
}
Vlastnosti datové sady
Úplný seznam oddílů a vlastností dostupných pro definování datových sad najdete v článku Datové sady .
Azure Data Factory podporuje následující formáty souborů. Informace o nastaveních založených na formátu najdete v jednotlivých článcích.
- Formát Avro
- Binární formát
- Formát textu s oddělovači
- formát Excel
- Formát JSON
- Formát ORC
- Formát Parquet
- Formát XML
V nastavení location pod HTTP v datové sadě založené na formátu datové sady jsou podporovány následující vlastnosti.
| Vlastnost | Popis | Povinné |
|---|---|---|
| typ | Vlastnost location typu v datové sadě musí být nastavena na HttpServerLocation. |
Ano |
| relativní URL | Relativní adresa URL prostředku, který obsahuje data. Konektor HTTP kopíruje data z kombinované adresy URL: [URL specified in linked service][relative URL specified in dataset]. |
Ne |
Poznámka:
Podporovaná velikost datové části požadavku HTTP je přibližně 500 kB. Pokud je velikost datové části, kterou chcete předat do webového koncového bodu, větší než 500 kB, zvažte dávkování datové části v menších blocích dat.
Příklad:
{
"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"
}
}
}
Vlastnosti aktivity kopírování
Tato část obsahuje seznam vlastností, které zdroj HTTP podporuje.
Úplný seznam oddílů a vlastností dostupných pro definování aktivit najdete v tématu Pipelines.
HTTP jako zdroj
Azure Data Factory podporuje následující formáty souborů. Informace o nastaveních založených na formátu najdete v jednotlivých článcích.
- Formát Avro
- Binární formát
- Formát textu s oddělovači
- formát Excel
- Formát JSON
- Formát ORC
- Formát Parquet
- Formát XML
Následující vlastnosti jsou podporovány pro HTTP v nastavení pod storeSettings ve zdroji kopírování založeném na formátu:
| Vlastnost | Popis | Povinné |
|---|---|---|
| typ | Vlastnost typu v části storeSettings musí být nastavena na HttpReadSettings. |
Ano |
| requestMethod | Metoda HTTP. Povolené hodnoty jsou Get (výchozí) a Post. |
Ne |
| dalšíZáhlaví | Další hlavičky požadavku HTTP | Ne |
| requestBody | Text požadavku HTTP. | Ne |
| Doba čekání na httpRequestTimeout | Časový limit ( hodnota TimeSpan ) požadavku HTTP pro získání odpovědi. Tato hodnota je časový limit pro získání odpovědi, nikoli časový limit pro čtení dat odpovědi. Výchozí hodnota je 00:01:40. | Ne |
| maximální počet současných připojení | Horní limit souběžných připojení vytvořených k úložišti dat během spuštění aktivity. Zadejte hodnotu pouze v případech, kdy chcete omezit souběžná připojení. | Ne |
Příklad:
"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>"
}
}
}
]
Vlastnosti aktivity vyhledávání
Zjistit podrobnosti o vlastnostech můžete v aktivitě Vyhledávání.
Modely z předchozí generace
Poznámka:
Následující modely jsou stále podporovány, protože je to kvůli zpětné kompatibilitě. Doporučujeme použít nový model uvedený v předchozích částech a uživatelské rozhraní pro vytváření obsahu se přepnulo na generování nového modelu.
Starší model datové sady
| Vlastnost | Popis | Povinné |
|---|---|---|
| typ | Vlastnost typu datové sady musí být nastavena na HttpFile. | Ano |
| relativní URL | Relativní adresa URL prostředku, který obsahuje data. Pokud tato vlastnost není zadána, použije se pouze adresa URL zadaná v definici propojené služby. | Ne |
| requestMethod | Metoda HTTP. Povolené hodnoty jsou Get (výchozí) a Post. | Ne |
| dalšíZáhlaví | Další hlavičky požadavku HTTP | Ne |
| requestBody | Text požadavku HTTP. | Ne |
| formát | Pokud chcete načíst data z koncového bodu HTTP bez analýzy a pak je zkopírovat do úložiště založeného na souborech, přeskočte oddíl formátu v definicích vstupní i výstupní datové sady. Pokud chcete během kopírování parsovat obsah odpovědi HTTP, podporují se následující typy formátů souborů: TextFormat, JsonFormat, AvroFormat, OrcFormat a ParquetFormat. Ve formátu nastavte vlastnost typu na jednu z těchto hodnot. Další informace najdete ve formátu JSON, formátu textu, formátu Avro, formátu Orc a formátu Parquet. |
Ne |
| komprese | Zadejte typ a úroveň komprese dat. Další informace naleznete v tématu Podporované formáty souborů a komprimační kodeky. Podporované typy: GZip, Deflate, BZip2 a ZipDeflate. Podporované úrovně: Optimální a nejrychlejší. |
Ne |
Poznámka:
Podporovaná velikost datové části požadavku HTTP je přibližně 500 kB. Pokud je velikost datové části, kterou chcete předat do webového koncového bodu, větší než 500 kB, zvažte dávkování datové části v menších blocích dat.
Příklad 1: Použití metody Get (výchozí)
{
"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"
}
}
}
Příklad 2: Použití metody Post
{
"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>"
}
}
}
Model starší verze zdroje aktivity kopírování
| Vlastnost | Popis | Povinné |
|---|---|---|
| typ | Vlastnost typu zdroje aktivity kopírování musí být nastavena na HttpSource. | Ano |
| Doba čekání na httpRequestTimeout | Časový limit ( hodnota TimeSpan ) požadavku HTTP pro získání odpovědi. Tato hodnota je časový limit pro získání odpovědi, nikoli časový limit pro čtení dat odpovědi. Výchozí hodnota je 00:01:40. | Ne |
Příklad
"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>"
}
}
}
]
Související obsah
Seznam úložišť dat, která aktivita kopírování podporuje jako zdroje a jímky, najdete v tématu Podporované úložiště a formáty dat.