Gegevens kopiëren uit een OData-bron met behulp van Azure Data Factory of Synapse Analytics
VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics
Tip
Probeer Data Factory uit in Microsoft Fabric, een alles-in-één analyseoplossing voor ondernemingen. Microsoft Fabric omvat alles, van gegevensverplaatsing tot gegevenswetenschap, realtime analyses, business intelligence en rapportage. Meer informatie over het gratis starten van een nieuwe proefversie .
In dit artikel wordt beschreven hoe u kopieeractiviteit gebruikt in een Azure Data Factory- of Synapse Analytics-pijplijn om gegevens uit een OData-bron te kopiëren. Het artikel bouwt voort op kopieeractiviteit, waarin een algemeen overzicht van de kopieeractiviteit wordt weergegeven.
Ondersteunde mogelijkheden
Deze OData-connector wordt ondersteund voor de volgende mogelijkheden:
Ondersteunde mogelijkheden | IR |
---|---|
Copy-activiteit (bron/-) | (1) (2) |
Activiteit Lookup | (1) (2) |
(1) Azure Integration Runtime (2) Zelf-hostende Integration Runtime
Zie Ondersteunde gegevensarchieven voor een lijst met gegevensarchieven die worden ondersteund als bronnen/sinks.
Deze OData-connector ondersteunt met name:
- OData versie 2.0, 3.0 en 4.0.
- Gegevens kopiëren met behulp van een van de volgende verificaties: Anoniem, Basic, Windows en Microsoft Entra-service-principal.
Vereisten
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.
Als uw gegevensarchief een beheerde cloudgegevensservice is, kunt u De Azure Integration Runtime gebruiken. Als de toegang is beperkt tot IP-adressen die zijn goedgekeurd in de firewallregels, kunt u IP-adressen van Azure Integration Runtime toevoegen aan de acceptatielijst.
U kunt ook de beheerde functie voor integratieruntime voor virtuele netwerken in Azure Data Factory gebruiken om toegang te krijgen tot het on-premises netwerk zonder een zelf-hostende Integration Runtime te installeren en te configureren.
Zie Strategieën voor gegevenstoegang voor meer informatie over de netwerkbeveiligingsmechanismen en -opties die door Data Factory worden ondersteund.
Aan de slag
Als u de kopieeractiviteit wilt uitvoeren met een pijplijn, kunt u een van de volgende hulpprogramma's of SDK's gebruiken:
- Het hulpprogramma voor het kopiëren van gegevens
- Azure Portal
- De .NET-SDK
- De Python-SDK
- Azure PowerShell
- De REST API
- Een Azure Resource Manager-sjabloon
Een gekoppelde service maken voor een OData-archief met behulp van de gebruikersinterface
Gebruik de volgende stappen om een gekoppelde service te maken voor een OData-archief in de gebruikersinterface van Azure Portal.
Blader naar het tabblad Beheren in uw Azure Data Factory- of Synapse-werkruimte en selecteer Gekoppelde services en selecteer vervolgens Nieuw:
Zoek naar OData en selecteer de OData-connector.
Configureer de servicedetails, test de verbinding en maak de nieuwe gekoppelde service.
Configuratiedetails van connector
De volgende secties bevatten details over eigenschappen die u kunt gebruiken om Data Factory-entiteiten te definiëren die specifiek zijn voor een OData-connector.
Eigenschappen van gekoppelde service
De volgende eigenschappen worden ondersteund voor een gekoppelde OData-service:
Eigenschappen | Beschrijving | Vereist |
---|---|---|
type | De typeeigenschap moet worden ingesteld op OData. | Ja |
URL | De hoofd-URL van de OData-service. | Ja |
authenticationType | Het type verificatie dat wordt gebruikt om verbinding te maken met de OData-bron. Toegestane waarden zijn Anoniem, Basic, Windows en AadServicePrincipal. OAuth op basis van gebruikers wordt niet ondersteund. U kunt ook verificatieheaders configureren in authHeader de eigenschap. |
Ja |
authHeaders | Aanvullende HTTP-aanvraagheaders voor verificatie. Als u bijvoorbeeld API-sleutelverificatie wilt gebruiken, kunt u het verificatietype 'Anoniem' selecteren en de API-sleutel in de header opgeven. |
Nee |
gebruikersnaam | Geef userName op als u Basis- of Windows-verificatie gebruikt. | Nee |
password | Geef het wachtwoord op voor het gebruikersaccount dat u hebt opgegeven voor userName. Markeer dit veld als een SecureString-type om het veilig op te slaan. U kunt ook verwijzen naar een geheim dat is opgeslagen in Azure Key Vault. | Nee |
servicePrincipalId | Geef de client-id van de Microsoft Entra-toepassing op. | Nee |
aadServicePrincipalCredentialType | Geef het referentietype op dat moet worden gebruikt voor verificatie van de service-principal. Toegestane waarden zijn: ServicePrincipalKey of ServicePrincipalCert . |
Nee |
servicePrincipalKey | Geef de sleutel van de Microsoft Entra-toepassing op. Markeer dit veld als SecureString om het veilig op te slaan of verwijs naar een geheim dat is opgeslagen in Azure Key Vault. | Nee |
servicePrincipalEmbeddedCert | Geef het base64 gecodeerde certificaat op van uw toepassing die is geregistreerd in Microsoft Entra-id en zorg ervoor dat het certificaatinhoudstype PKCS #12 is. Markeer dit veld als SecureString om het veilig op te slaan of verwijs naar een geheim dat is opgeslagen in Azure Key Vault. | Nee |
servicePrincipalEmbeddedCertPassword | Geef het wachtwoord van uw certificaat op als uw certificaat is beveiligd met een wachtwoord. Markeer dit veld als SecureString om het veilig op te slaan of verwijs naar een geheim dat is opgeslagen in Azure Key Vault. | Nee |
AD-tenant | Geef de tenantgegevens (domeinnaam of tenant-id) op waaronder uw toepassing zich bevindt. Haal deze op door de muisaanwijzer in de rechterbovenhoek van Azure Portal te plaatsen. | Nee |
aadResourceId | Geef de Microsoft Entra-resource op die u aanvraagt voor autorisatie. | Nee |
azureCloudType | Geef voor service-principalverificatie het type Azure-cloudomgeving op waarnaar uw Microsoft Entra-toepassing is geregistreerd. Toegestane waarden zijn AzurePublic, AzureChina, AzureUsGovernment en AzureGermany. Standaard wordt de cloudomgeving van de service gebruikt. |
Nee |
connectVia | De Integration Runtime die moet worden gebruikt om verbinding te maken met het gegevensarchief. Meer informatie vindt u in de sectie Vereisten . Als dit niet is opgegeven, wordt de standaard Azure Integration Runtime gebruikt. | Nee |
Voorbeeld 1: Anonieme verificatie gebruiken
{
"name": "ODataLinkedService",
"properties": {
"type": "OData",
"typeProperties": {
"url": "https://services.odata.org/OData/OData.svc",
"authenticationType": "Anonymous"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Voorbeeld 2: Basisverificatie gebruiken
{
"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"
}
}
}
Voorbeeld 3: Windows-verificatie gebruiken
{
"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"
}
}
}
Voorbeeld 4: Verificatie van de service-principalsleutel gebruiken
{
"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"
}
}
Voorbeeld 5: Verificatie van certificaat van service-principal gebruiken
{
"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"
}
}
Voorbeeld 6: API-sleutelverificatie gebruiken
{
"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 gegevensset
Deze sectie bevat een lijst met eigenschappen die door de OData-gegevensset worden ondersteund.
Zie Gegevenssets en gekoppelde services voor een volledige lijst met secties en eigenschappen die beschikbaar zijn voor het definiëren van gegevenssets.
Als u gegevens uit OData wilt kopiëren, stelt u de typeeigenschap van de gegevensset in op ODataResource. De volgende eigenschappen worden ondersteund:
Eigenschappen | Beschrijving | Vereist |
---|---|---|
type | De typeeigenschap van de gegevensset moet worden ingesteld op ODataResource. | Ja |
path | Het pad naar de OData-resource. | Ja |
Voorbeeld
{
"name": "ODataDataset",
"properties":
{
"type": "ODataResource",
"schema": [],
"linkedServiceName": {
"referenceName": "<OData linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties":
{
"path": "Products"
}
}
}
Eigenschappen van kopieeractiviteit
Deze sectie bevat een lijst met eigenschappen die door de OData-bron worden ondersteund.
Zie Pijplijnen voor een volledige lijst met secties en eigenschappen die beschikbaar zijn voor het definiëren van activiteiten.
OData als bron
Als u gegevens uit OData wilt kopiëren, worden de volgende eigenschappen ondersteund in de sectie Bron van kopieeractiviteit:
Eigenschappen | Beschrijving | Vereist |
---|---|---|
type | De typeeigenschap van de bron van de kopieeractiviteit moet worden ingesteld op ODataSource. | Ja |
query | OData-queryopties voor het filteren van gegevens. Voorbeeld: "$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] . Zie OData URL-onderdelen voor meer informatie. |
Nee |
httpRequestTimeout | De time-out (de timespanwaarde ) voor de HTTP-aanvraag om een antwoord te krijgen. Deze waarde is de time-out voor het ophalen van een antwoord, niet de time-out voor het lezen van antwoordgegevens. Als dit niet is opgegeven, is de standaardwaarde 00:30:00 (30 minuten). | Nee |
Voorbeeld
"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, terwijl u wordt aangeraden de nieuwe bron te gebruiken.
Toewijzing van gegevenstypen voor OData
Wanneer u gegevens kopieert uit OData, worden de volgende toewijzingen gebruikt tussen OData-gegevenstypen en tussentijdse gegevenstypen die intern in de service worden gebruikt. Zie Schema- en gegevenstypetoewijzingen voor meer informatie over hoe kopieeractiviteit het bronschema en het gegevenstype toewijst aan de sink.
OData-gegevenstype | Tussentijdse servicegegevenstype |
---|---|
Edm.Binary | Byte[] |
Edm.Boolean | Bool |
Edm.Byte | Byte[] |
Edm.DateTime | Datum en tijd |
Edm.Decimal | Decimal |
Edm.Double | Dubbel |
Edm.Single | Eén |
Edm.Guid | Guid |
Edm.Int16 | Int16 |
Edm.Int32 | Int32 |
Edm.Int64 | Int64 |
Edm.SByte | Int16 |
Edm.String | String |
Edm.Time | TimeSpan |
Edm.DateTimeOffset | DateTimeOffset |
Notitie
Complexe OData-gegevenstypen (zoals Object) worden niet ondersteund.
Gegevens kopiëren uit Project Online
Voor Project Online is OAuth op basis van gebruikers vereist. Dit wordt niet ondersteund door Azure Data Factory. Als u gegevens uit Project Online wilt kopiëren, kunt u de OData-connector en een toegangstoken gebruiken dat is verkregen uit hulpprogramma's zoals Postman.
Let op
Het toegangstoken verloopt standaard over 1 uur. U moet een nieuw toegangstoken krijgen wanneer het verloopt.
Gebruik Postman om het toegangstoken op te halen:
Notitie
Postman wordt door sommige ontwikkelaars gebruikt voor het testen van externe web-API's. Er zijn echter enkele beveiligings- en privacyrisico's verbonden aan het gebruik ervan. Dit artikel onderschrijft het gebruik van Postman niet voor productieomgevingen. Gebruik deze op eigen risico.
- Navigeer naar het tabblad Autorisatie op de Postman-website.
- Selecteer OAuth 2.0 in het vak Type en selecteer aanvraagheaders in het vak Autorisatiegegevens toevoegen aan.
- Vul de volgende informatie in op de pagina Nieuw token configureren om een nieuw toegangstoken op te halen:
- Toekenningstype: Autorisatiecode selecteren.
- Callback-URL: Voer in
https://www.localhost.com/
. - Verificatie-URL: Voer in
https://login.microsoftonline.com/common/oauth2/authorize?resource=https://<your tenant name>.sharepoint.com
. Vervang door<your tenant name>
uw eigen tenantnaam. - URL van toegangstoken: Voer in
https://login.microsoftonline.com/common/oauth2/token
. - Client-id: Voer de service-principal-id van Microsoft Entra in.
- Clientgeheim: voer uw service-principalgeheim in.
- Clientverificatie: selecteer Verzenden als basisauth-header.
- U wordt gevraagd u aan te melden met uw gebruikersnaam en wachtwoord.
- Nadat u uw toegangstoken hebt opgehaald, kopieert en slaat u het op voor de volgende stap.
Maak de gekoppelde OData-service:
- Service-URL: Voer in
https://<your tenant name>.sharepoint.com/sites/pwa/_api/Projectdata
. Vervang door<your tenant name>
uw eigen tenantnaam. - Verificatietype: Anoniem selecteren.
- Verificatieheaders:
- Eigenschapsnaam: Kies Autorisatie.
- Waarde: Voer
Bearer <access token from step 1>
in.
- Test de gekoppelde service.
- Service-URL: Voer in
Maak de OData-gegevensset:
- Maak de gegevensset met de gekoppelde OData-service die u in stap 2 hebt gemaakt.
- Voorbeeld van gegevens.
Eigenschappen van opzoekactiviteit
Als u meer wilt weten over de eigenschappen, controleert u de lookup-activiteit.
Gerelateerde inhoud
Zie Ondersteunde gegevensarchieven en -indelingen voor een lijst met gegevensarchieven die door de kopieeractiviteit worden ondersteund als bronnen en sinks.