Gegevens kopiëren van een OData-bron met behulp van Azure Data FactoryCopy data from an OData source by using Azure Data Factory

VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics

In dit artikel wordt beschreven hoe u de Kopieer activiteit in Azure Data Factory kunt gebruiken om gegevens uit een OData-bron te kopiëren.This article outlines how to use Copy Activity in Azure Data Factory to copy data from an OData source. Het artikel bouwt voort op de Kopieer activiteit in azure Data Factory, waarin een algemeen overzicht van de Kopieer activiteit wordt weer gegeven.The article builds on Copy Activity in Azure Data Factory, which presents a general overview of Copy Activity.

Ondersteunde mogelijkhedenSupported capabilities

Deze OData-connector wordt ondersteund voor de volgende activiteiten:This OData connector is supported for the following activities:

U kunt gegevens uit een OData-bron kopiëren naar elk ondersteund Sink-gegevens archief.You can copy data from an OData source to any supported sink data store. Zie ondersteunde gegevens archieven en-indelingenvoor een lijst met gegevens archieven die door de Kopieer activiteit worden ondersteund als bronnen en Sinks.For a list of data stores that Copy Activity supports as sources and sinks, see Supported data stores and formats.

Deze OData-connector ondersteunt met name:Specifically, this OData connector supports:

  • OData-versie 3,0 en 4,0.OData version 3.0 and 4.0.
  • Gegevens kopiëren met behulp van een van de volgende authenticaties: anoniem, basis, Windows en Aad-Service-Principal.Copying data by using one of the following authentications: Anonymous, Basic, Windows, and AAD service principal.

VereistenPrerequisites

Als uw gegevensarchief zich in een on-premises netwerk, een virtueel Azure-netwerk of een virtuele particuliere cloud van Amazon bevindt, moet u een zelf-hostende Integration Runtime configureren om er verbinding mee te maken.If your data store is located inside an on-premises network, an Azure virtual network, or Amazon Virtual Private Cloud, you need to configure a self-hosted integration runtime to connect to it.

Als uw gegevensarchief een beheerde cloudgegevensservice is, kunt u ook Azure Integration Runtime gebruiken.Alternatively, if your data store is a managed cloud data service, you can use Azure integration runtime. Als de toegang is beperkt tot IP-adressen op de goedgekeurde lijst in de firewallregels, kunt u de IP-adressen van Azure Integration Runtime toevoegen aan de acceptatielijst.If the access is restricted to IPs that are approved in the firewall rules, you can add Azure Integration Runtime IPs into the allow list.

Zie Strategieën voor gegevenstoegang voor meer informatie over de netwerkbeveiligingsmechanismen en -opties die door Data Factory worden ondersteund.For more information about the network security mechanisms and options supported by Data Factory, see Data access strategies.

Aan de slagGet started

Als u de kopieeractiviteit wilt uitvoeren met een pijplijn, kunt u een van de volgende hulpprogramma's of SDK's gebruiken:To perform the Copy activity with a pipeline, you can use one of the following tools or SDKs:

De volgende secties bevatten informatie over eigenschappen die u kunt gebruiken voor het definiëren van Data Factory entiteiten die specifiek zijn voor een OData-connector.The following sections provide details about properties you can use to define Data Factory entities that are specific to an OData connector.

Eigenschappen van gekoppelde serviceLinked service properties

De volgende eigenschappen worden ondersteund voor een gekoppelde OData-service:The following properties are supported for an OData linked service:

EigenschapProperty BeschrijvingDescription VereistRequired
typetype De eigenschap type moet worden ingesteld op OData.The type property must be set to OData. YesYes
urlurl De basis-URL van de OData-service.The root URL of the OData service. YesYes
authenticationTypeauthenticationType Het type verificatie dat wordt gebruikt om verbinding te maken met de OData-bron.The type of authentication used to connect to the OData source. Toegestane waarden zijn anoniem, basis, Windows en AadServicePrincipal.Allowed values are Anonymous, Basic, Windows, and AadServicePrincipal. OAuth op basis van de gebruiker wordt niet ondersteund.User-based OAuth isn't supported. U kunt verificatie headers ook configureren in de authHeader eigenschap.You can additionally configure authentication headers in authHeader property. YesYes
authHeadersauthHeaders Aanvullende HTTP-aanvraag headers voor authenticatie.Additional HTTP request headers for authentication.
Als u bijvoorbeeld API-sleutel verificatie wilt gebruiken, kunt u verificatie type selecteren als ' anoniem ' en de API-sleutel in de header opgeven.For example, to use API key authentication, you can select authentication type as “Anonymous” and specify API key in the header.
NoNo
userNameuserName Geef een gebruikers naam op als u basis-of Windows-verificatie gebruikt.Specify userName if you use Basic or Windows authentication. NoNo
wachtwoordpassword Geef het wacht woord op voor het gebruikers account dat u hebt opgegeven voor de gebruikers naam.Specify password for the user account you specified for userName. Markeer dit veld als SecureString -type om het veilig op te slaan in Data Factory.Mark this field as a SecureString type to store it securely in Data Factory. U kunt ook verwijzen naar een geheim dat is opgeslagen in azure Key Vault.You also can reference a secret stored in Azure Key Vault. NoNo
servicePrincipalIdservicePrincipalId Geef de client-ID van de Azure Active Directory toepassing op.Specify the Azure Active Directory application's client ID. NoNo
aadServicePrincipalCredentialTypeaadServicePrincipalCredentialType Geef het referentie type op dat moet worden gebruikt voor Service-Principal-verificatie.Specify the credential type to use for service principal authentication. Toegestane waarden zijn: ServicePrincipalKey of ServicePrincipalCert .Allowed values are: ServicePrincipalKey or ServicePrincipalCert. NoNo
servicePrincipalKeyservicePrincipalKey Geef de sleutel van de Azure Active Directory toepassing op.Specify the Azure Active Directory application's key. Markeer dit veld als SecureString om het veilig op te slaan in Data Factory, of om te verwijzen naar een geheim dat is opgeslagen in azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. NoNo
servicePrincipalEmbeddedCertservicePrincipalEmbeddedCert Geef het met base64 gecodeerde certificaat op van uw toepassing die is geregistreerd in Azure Active Directory.Specify the base64 encoded certificate of your application registered in Azure Active Directory. Markeer dit veld als SecureString om het veilig op te slaan in Data Factory, of om te verwijzen naar een geheim dat is opgeslagen in azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. NoNo
servicePrincipalEmbeddedCertPasswordservicePrincipalEmbeddedCertPassword Geef het wacht woord van uw certificaat op als uw certificaat is beveiligd met een wacht woord.Specify the password of your certificate if your certificate is secured with a password. Markeer dit veld als SecureString om het veilig op te slaan in Data Factory, of om te verwijzen naar een geheim dat is opgeslagen in azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. NoNo
tenanttenant Geef de Tenant gegevens op (domein naam of Tenant-ID) waaronder uw toepassing zich bevindt.Specify the tenant information (domain name or tenant ID) under which your application resides. U kunt deze ophalen door de muis in de rechter bovenhoek van de Azure Portal aan te wijzen.Retrieve it by hovering the mouse in the top-right corner of the Azure portal. NoNo
aadResourceIdaadResourceId Geef de AAD-resource op die u aanvraagt voor autorisatie.Specify the AAD resource you are requesting for authorization. NoNo
azureCloudTypeazureCloudType Voor Service-Principal-verificatie geeft u het type van de Azure-cloud omgeving op waarvoor uw AAD-toepassing is geregistreerd.For service principal authentication, specify the type of Azure cloud environment to which your AAD application is registered.
Toegestane waarden zijn AzurePublic, AzureChina, AzureUsGovernment en AzureGermany.Allowed values are AzurePublic, AzureChina, AzureUsGovernment, and AzureGermany. De cloud omgeving van de data factory wordt standaard gebruikt.By default, the data factory's cloud environment is used.
NoNo
connectViaconnectVia De Integration runtime die moet worden gebruikt om verbinding te maken met het gegevens archief.The Integration Runtime to use to connect to the data store. Meer informatie vindt u in de sectie vereisten .Learn more from Prerequisites section. Als u niets opgeeft, wordt de standaard Azure Integration Runtime gebruikt.If not specified, the default Azure Integration Runtime is used. NoNo

Voor beeld 1: anonieme verificatie gebruikenExample 1: Using Anonymous authentication

{
    "name": "ODataLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "https://services.odata.org/OData/OData.svc",
            "authenticationType": "Anonymous"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Voor beeld 2: basis verificatie gebruikenExample 2: Using Basic authentication

{
    "name": "ODataLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "<endpoint of OData source>",
            "authenticationType": "Basic",
            "userName": "<user name>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Voor beeld 3: Windows-verificatie gebruikenExample 3: Using Windows authentication

{
    "name": "ODataLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "<endpoint of OData source>",
            "authenticationType": "Windows",
            "userName": "<domain>\\<user>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Voor beeld 4: Service Principal Key-verificatie gebruikenExample 4: Using service principal key authentication

{
    "name": "ODataLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "<endpoint of OData source>",
            "authenticationType": "AadServicePrincipal",
            "servicePrincipalId": "<service principal id>",
            "aadServicePrincipalCredentialType": "ServicePrincipalKey",
            "servicePrincipalKey": {
                "type": "SecureString",
                "value": "<service principal key>"
            },
            "tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>",
            "aadResourceId": "<AAD resource URL>"
        }
    },
    "connectVia": {
        "referenceName": "<name of Integration Runtime>",
        "type": "IntegrationRuntimeReference"
    }
}

Voor beeld 5: verificatie van Service-Principal-certificaten gebruikenExample 5: Using service principal cert authentication

{
    "name": "ODataLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "<endpoint of OData source>",
            "authenticationType": "AadServicePrincipal",
            "servicePrincipalId": "<service principal id>",
            "aadServicePrincipalCredentialType": "ServicePrincipalCert",
            "servicePrincipalEmbeddedCert": { 
                "type": "SecureString", 
                "value": "<base64 encoded string of (.pfx) certificate data>"
            },
            "servicePrincipalEmbeddedCertPassword": { 
                "type": "SecureString", 
                "value": "<password of your certificate>"
            },
            "tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>",
            "aadResourceId": "<AAD resource e.g. https://tenant.sharepoint.com>"
        }
    },
    "connectVia": {
        "referenceName": "<name of Integration Runtime>",
        "type": "IntegrationRuntimeReference"
    }
}

Voor beeld 6: API-sleutel verificatie gebruikenExample 6: Using API key authentication

{
    "name": "ODataLinkedService",
    "properties": {
        "type": "OData",
        "typeProperties": {
            "url": "<endpoint of OData source>",
            "authenticationType": "Anonymous",
            "authHeader": {
                "APIKey": {
                    "type": "SecureString",
                    "value": "<API key>"
                }
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Eigenschappen van gegevenssetDataset properties

In deze sectie vindt u een lijst met eigenschappen die door de OData-gegevensset worden ondersteund.This section provides a list of properties that the OData dataset supports.

Zie gegevens sets en gekoppelde servicesvoor een volledige lijst met secties en eigenschappen die beschikbaar zijn voor het definiëren van gegevens sets.For a full list of sections and properties that are available for defining datasets, see Datasets and linked services.

Als u gegevens wilt kopiëren uit OData, stelt u de eigenschap type van de gegevensset in op ODataResource.To copy data from OData, set the type property of the dataset to ODataResource. De volgende eigenschappen worden ondersteund:The following properties are supported:

EigenschapProperty BeschrijvingDescription VereistRequired
typetype De eigenschap type van de DataSet moet worden ingesteld op ODataResource.The type property of the dataset must be set to ODataResource. YesYes
leertrajectpath Het pad naar de OData-resource.The path to the OData resource. YesYes

VoorbeeldExample

{
    "name": "ODataDataset",
    "properties":
    {
        "type": "ODataResource",
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<OData linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties":
        {
            "path": "Products"
        }
    }
}

Eigenschappen van Kopieer activiteitCopy Activity properties

In deze sectie vindt u een lijst met eigenschappen die door de OData-bron worden ondersteund.This section provides a list of properties that the OData source supports.

Zie pijp lijnenvoor een volledige lijst met secties en eigenschappen die beschikbaar zijn voor het definiëren van activiteiten.For a full list of sections and properties that are available for defining activities, see Pipelines.

OData als bronOData as source

Als u gegevens wilt kopiëren uit OData, worden de volgende eigenschappen ondersteund in de sectie bron van de Kopieer activiteit:To copy data from OData, the following properties are supported in the Copy Activity source section:

EigenschapProperty BeschrijvingDescription VereistRequired
typetype De eigenschap type van de bron van de Kopieer activiteit moet zijn ingesteld op ODataSource.The type property of the Copy Activity source must be set to ODataSource. YesYes
queryquery OData-query opties voor het filteren van gegevens.OData query options for filtering data. Bijvoorbeeld: "$select=Name,Description&$top=5".Example: "$select=Name,Description&$top=5".

Opmerking: de OData-connector kopieert gegevens van de gecombineerde URL: [URL specified in linked service]/[path specified in dataset]?[query specified in copy activity source] .Note: The OData connector copies data from the combined URL: [URL specified in linked service]/[path specified in dataset]?[query specified in copy activity source]. Zie ODATA URL Components(Engelstalig) voor meer informatie.For more information, see OData URL components.
NoNo
httpRequestTimeouthttpRequestTimeout De time-out (de time span -waarde) voor de HTTP-aanvraag om een antwoord te krijgen.The timeout (the TimeSpan value) for the HTTP request to get a response. Deze waarde is de time-out voor het verkrijgen van een reactie, niet de time-out voor het lezen van antwoord gegevens.This value is the timeout to get a response, not the timeout to read response data. Als niet wordt opgegeven, is de standaard waarde 00:30:00 (30 minuten).If not specified, the default value is 00:30:00 (30 minutes). NoNo

VoorbeeldExample

"activities":[
    {
        "name": "CopyFromOData",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<OData input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "ODataSource",
                "query": "$select=Name,Description&$top=5"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Als u RelationalSource getypte bron gebruikt, wordt deze nog steeds ondersteund als-is, terwijl u wordt geadviseerd om het nieuwe item te gebruiken.If you were using RelationalSource typed source, it is still supported as-is, while you are suggested to use the new one going forward.

Toewijzing van gegevens type voor ODataData type mapping for OData

Wanneer u gegevens van OData kopieert, worden de volgende toewijzingen gebruikt tussen OData-gegevens typen en Azure Data Factory tussenliggende gegevens typen.When you copy data from OData, the following mappings are used between OData data types and Azure Data Factory interim data types. Zie schema en gegevens type toewijzingenvoor meer informatie over de manier waarop Kopieer activiteiten het bron schema en het gegevens type aan de Sink toewijzen.To learn how Copy Activity maps the source schema and data type to the sink, see Schema and data type mappings.

OData-gegevens typeOData data type Data Factory tussentijds gegevens typeData Factory interim data type
EDM. binaryEdm.Binary Byte []Byte[]
Edm.BooleanEdm.Boolean Booleaanse waardeBool
EDM. byteEdm.Byte Byte []Byte[]
EDM. DateTimeEdm.DateTime DateTimeDateTime
EDM. decimaalEdm.Decimal DecimaalDecimal
Edm.DoubleEdm.Double DubbelDouble
EDM. singleEdm.Single EnkelvoudigSingle
EDM. GUIDEdm.Guid GuidGuid
EDM. Int16Edm.Int16 Int16Int16
Edm.Int32Edm.Int32 Int32Int32
Edm.Int64Edm.Int64 Int64Int64
EDM. SByteEdm.SByte Int16Int16
Edm.StringEdm.String TekenreeksString
EDM. tijdEdm.Time TimeSpanTimeSpan
Edm.DateTimeOffsetEdm.DateTimeOffset Date time offsetDateTimeOffset

Notitie

Complexe OData-gegevens typen (zoals object) worden niet ondersteund.OData complex data types (such as Object) aren't supported.

Eigenschappen van opzoek activiteitLookup activity properties

Controleer de opzoek activiteitvoor meer informatie over de eigenschappen.To learn details about the properties, check Lookup activity.

Volgende stappenNext steps

Zie ondersteunde gegevens archieven en-indelingenvoor een lijst met gegevens archieven die door de Kopieer activiteit worden ondersteund als bronnen en sinks in azure Data Factory.For a list of data stores that Copy Activity supports as sources and sinks in Azure Data Factory, see Supported data stores and formats.