Azure Data Factory veya Synapse Analytics kullanarak OData kaynağından veri kopyalama

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

Bahşiş

Kuruluşlar için hepsi bir arada analiz çözümü olan Microsoft Fabric'te Data Factory'yi deneyin. Microsoft Fabric , veri taşımadan veri bilimine, gerçek zamanlı analize, iş zekasına ve raporlamaya kadar her şeyi kapsar. Yeni bir deneme sürümünü ücretsiz olarak başlatmayı öğrenin!

Bu makalede, OData kaynağından veri kopyalamak için Azure Data Factory veya Synapse Analytics işlem hattında Kopyalama Etkinliği'nin nasıl kullanılacağı özetlenmiştir. Makale, Kopyalama Etkinliği'ne genel bir genel bakış sunan Kopyalama Etkinliği üzerine derlenmektedir.

Desteklenen özellikler

Bu OData bağlayıcısı aşağıdaki özellikler için desteklenir:

Desteklenen özellikler IR
Kopyalama etkinliği (kaynak/-) ① ②
Arama etkinliği ① ②

(1) Azure tümleştirme çalışma zamanı (2) Şirket içinde barındırılan tümleştirme çalışma zamanı

Kaynak/havuz olarak desteklenen veri depolarının listesi için bkz . Desteklenen veri depoları.

Özellikle, bu OData bağlayıcısı şunları destekler:

  • OData sürüm 2.0, 3.0 ve 4.0.
  • Aşağıdaki kimlik doğrulamalarından birini kullanarak veri kopyalama: Anonim, Temel, Windows ve Microsoft Entra hizmet sorumlusu.

Önkoşullar

Veri deponuz bir şirket içi ağ, Azure sanal ağı veya Amazon Sanal Özel Bulut içinde bulunuyorsa, şirket içinde barındırılan tümleştirme çalışma zamanını buna bağlanmak için yapılandırmanız gerekir.

Veri deponuz yönetilen bir bulut veri hizmetiyse Azure Integration Runtime'ı kullanabilirsiniz. Erişim, güvenlik duvarı kurallarında onaylanan IP'ler ile sınırlıysa Azure Integration Runtime IP'lerini izin verme listesine ekleyebilirsiniz.

Şirket içinde barındırılan tümleştirme çalışma zamanı yüklemeden ve yapılandırmadan şirket içi ağa erişmek için Azure Data Factory'deki yönetilen sanal ağ tümleştirme çalışma zamanı özelliğini de kullanabilirsiniz.

Data Factory tarafından desteklenen ağ güvenlik mekanizmaları ve seçenekleri hakkında daha fazla bilgi için bkz . Veri erişim stratejileri.

Başlarken

İşlem hattıyla Kopyalama etkinliği gerçekleştirmek için aşağıdaki araçlardan veya SDK'lardan birini kullanabilirsiniz:

Kullanıcı arabirimini kullanarak OData deposuna bağlı hizmet oluşturma

Azure portalı kullanıcı arabirimindeki bir OData deposuna bağlı hizmet oluşturmak için aşağıdaki adımları kullanın.

  1. Azure Data Factory veya Synapse çalışma alanınızda Yönet sekmesine gidin ve Bağlı Hizmetler'i ve ardından Yeni'yi seçin:

  2. OData araması yapın ve OData bağlayıcısını seçin.

    Screenshot of the OData connector.

  3. Hizmet ayrıntılarını yapılandırın, bağlantıyı test edin ve yeni bağlı hizmeti oluşturun.

    Screenshot of linked service configuration for an OData store.

Bağlan veya yapılandırma ayrıntıları

Aşağıdaki bölümlerde, OData bağlayıcısına özgü Data Factory varlıklarını tanımlamak için kullanabileceğiniz özelliklerle ilgili ayrıntılar sağlanır.

Bağlı hizmet özellikleri

OData bağlı hizmeti için aşağıdaki özellikler desteklenir:

Özellik Açıklama Gerekli
type type özelliği OData olarak ayarlanmalıdır. Evet
url OData hizmetinin kök URL'si. Evet
authenticationType OData kaynağına bağlanmak için kullanılan kimlik doğrulama türü. İzin verilen değerler Anonim, Temel, Windows ve AadServicePrincipal değerleridir. Kullanıcı tabanlı OAuth desteklenmez. Ayrıca özelliğinde authHeader kimlik doğrulama üst bilgilerini yapılandırabilirsiniz. Evet
authHeaders Kimlik doğrulaması için ek HTTP isteği üst bilgileri.
Örneğin, API anahtarı kimlik doğrulamasını kullanmak için kimlik doğrulama türünü "Anonim" olarak seçebilir ve üst bilgide API anahtarı belirtebilirsiniz.
No
userName Temel veya Windows kimlik doğrulaması kullanıyorsanız userName değerini belirtin. No
password userName için belirttiğiniz kullanıcı hesabının parolasını belirtin. Güvenli bir şekilde depolamak için bu alanı SecureString türü olarak işaretleyin. Azure Key Vault'ta depolanan bir gizli diziye de başvurabilirsiniz. No
servicePrincipalId Microsoft Entra uygulamasının istemci kimliğini belirtin. No
aadServicePrincipalCredentialType Hizmet sorumlusu kimlik doğrulaması için kullanılacak kimlik bilgisi türünü belirtin. İzin verilen değerler şunlardır: ServicePrincipalKey veya ServicePrincipalCert. No
servicePrincipalKey Microsoft Entra uygulamasının anahtarını belirtin. Güvenli bir şekilde depolamak için bu alanı SecureString olarak işaretleyin veya Azure Key Vault'ta depolanan bir gizli diziye başvurun. No
servicePrincipalEmbeddedCert Microsoft Entra Id'de kayıtlı uygulamanızın base64 kodlanmış sertifikasını belirtin ve sertifika içerik türünün PKCS #12 olduğundan emin olun. Güvenli bir şekilde depolamak için bu alanı SecureString olarak işaretleyin veya Azure Key Vault'ta depolanan bir gizli diziye başvurun. No
servicePrincipalEmbeddedCertPassword Sertifikanızın güvenliği bir parolayla sağlanıyorsa sertifikanızın parolasını belirtin. Güvenli bir şekilde depolamak için bu alanı SecureString olarak işaretleyin veya Azure Key Vault'ta depolanan bir gizli diziye başvurun. No
tenant Uygulamanızın bulunduğu kiracı bilgilerini (etki alanı adı veya kiracı kimliği) belirtin. Fareyi Azure portalının sağ üst köşesine getirerek alın. No
aadResourceId Yetkilendirme için istediğiniz Microsoft Entra kaynağını belirtin. No
azureCloudType Hizmet sorumlusu kimlik doğrulaması için Microsoft Entra uygulamanızın kaydedildiği Azure bulut ortamının türünü belirtin.
İzin verilen değerler AzurePublic, AzureChina, AzureUsGovernment ve AzureGermany'dir. Varsayılan olarak, hizmetin bulut ortamı kullanılır.
No
connectVia Veri deposuna bağlanmak için kullanılacak Integration Runtime. Önkoşullar bölümünden daha fazla bilgi edinin. Belirtilmezse, varsayılan Azure Integration Runtime kullanılır. No

Örnek 1: Anonim kimlik doğrulaması kullanma

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

Örnek 2: Temel kimlik doğrulamayı kullanma

{
    "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"
        }
    }
}

Örnek 3: Windows kimlik doğrulamayı kullanma

{
    "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"
        }
    }
}

Örnek 4: Hizmet sorumlusu anahtarı kimlik doğrulamayı kullanma

{
    "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"
    }
}

Örnek 5: Hizmet sorumlusu sertifikası kimlik doğrulamayı kullanma

{
    "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"
    }
}

Örnek 6: API anahtarı kimlik doğrulamayı kullanma

{
    "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"
        }
    }
}

Veri kümesi özellikleri

Bu bölümde, OData veri kümesinin desteklediği özelliklerin listesi sağlanır.

Veri kümelerini tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için bkz . Veri kümeleri ve bağlı hizmetler.

OData'dan veri kopyalamak için veri kümesinin type özelliğini ODataResource olarak ayarlayın. Aşağıdaki özellikler desteklenir:

Özellik Açıklama Gerekli
type Veri kümesinin tür özelliği ODataResource olarak ayarlanmalıdır. Evet
yol OData kaynağının yolu. Evet

Örnek

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

Kopyalama Etkinliği özellikleri

Bu bölüm, OData kaynağının desteklediği özelliklerin listesini sağlar.

Etkinlikleri tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için bkz . İşlem hatları.

Kaynak olarak OData

OData'dan veri kopyalamak için Kopyalama Etkinliği kaynağı bölümünde aşağıdaki özellikler desteklenir:

Özellik Açıklama Gerekli
type Kopyalama Etkinliği kaynağının type özelliği ODataSource olarak ayarlanmalıdır. Evet
query Verileri filtrelemek için OData sorgu seçenekleri. Örnek: "$select=Name,Description&$top=5".

Not: OData bağlayıcısı verileri birleştirilmiş URL'den kopyalar: [URL specified in linked service]/[path specified in dataset]?[query specified in copy activity source]. Daha fazla bilgi için bkz . OData URL bileşenleri.
No
httpRequestTimeout Yanıt almak için HTTP isteğinin zaman aşımı (TimeSpan değeri). Bu değer, yanıt verilerini okumak için zaman aşımı değil, yanıt almak için zaman aşımıdır. Belirtilmezse, varsayılan değer 00:30:00 'dır (30 dakika). No

Örnek

"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>"
            }
        }
    }
]

Yazılan kaynağı kullanıyorsanız RelationalSource , yine de olduğu gibi desteklenir, ancak bundan sonra yenisini kullanmanız önerilir.

OData için veri türü eşlemesi

OData'dan veri kopyaladığınızda, OData veri türleri ile hizmet içinde dahili olarak kullanılan ara veri türleri arasında aşağıdaki eşlemeler kullanılır. Kopyalama Etkinliği'nin kaynak şemayı ve veri türünü havuza nasıl eşlediğini öğrenmek için bkz . Şema ve veri türü eşlemeleri.

OData veri türü Ara hizmet veri türü
Edm.Binary Bayt[]
Edm.Boolean Boole
Edm.Byte Bayt[]
Edm.DateTime DateTime
Edm.Decimal Ondalık
Edm.Double Çift
Edm.Single Tekli
Edm.Guid Guid
Edm.Int16 Int16
Edm.Int32 Int32
Edm.Int64 Int64
Edm.SByte Int16
Edm.String String
Edm.Time TimeSpan
Edm.DateTimeOffset DateTimeOffset

Dekont

OData karmaşık veri türleri (Nesne gibi) desteklenmez.

Project Online'dan veri kopyalama

Project Online, Azure Data Factory tarafından desteklenmeyen kullanıcı tabanlı OAuth gerektirir. Project Online'dan veri kopyalamak için OData bağlayıcısını ve Postman gibi araçlardan alınan erişim belirtecini kullanabilirsiniz.

Dikkat

Erişim belirtecinin süresi varsayılan olarak 1 saat içinde dolar. Süresi dolduğunda yeni bir erişim belirteci almanız gerekir.

  1. Erişim belirtecini almak için Postman'i kullanın:

    1. Postman Web Sitesinde Yetkilendirme sekmesine gidin.

    2. Tür kutusunda OAuth 2.0'ı seçin ve Yetkilendirme verilerini ekle kutusunda Üst Bilgi İste'yi seçin.

    3. Yeni erişim belirteci almak için Yeni Belirteci Yapılandır sayfasında aşağıdaki bilgileri doldurun:

      • Verme türü: Yetkilendirme Kodu'nu seçin.
      • Geri arama URL'si: girin https://www.localhost.com/
      • Kimlik Doğrulama URL'si: girin https://login.microsoftonline.com/common/oauth2/authorize?resource=https://<your tenant name>.sharepoint.com. değerini kendi kiracı adınızla değiştirin <your tenant name> .
      • Erişim Belirteci URL'si: girin https://login.microsoftonline.com/common/oauth2/token.
      • İstemci Kimliği: Microsoft Entra hizmet sorumlusu kimliğinizi girin.
      • gizli dizi: Hizmet sorumlusu gizli dizinizi girin.
      • İstemci Kimlik Doğrulaması: Temel Kimlik Doğrulaması Üst Bilgisi Olarak Gönder'i seçin.
    4. Kullanıcı adınız ve parolanızla oturum açmanız istenir.

    5. Erişim belirtecinizi aldıktan sonra lütfen bir sonraki adım için kopyalayın ve kaydedin.

    Screenshot of using Postman to get the access token.

  2. OData bağlı hizmetini oluşturun:

    • Hizmet URL'si: girin https://<your tenant name>.sharepoint.com/sites/pwa/_api/Projectdata. değerini kendi kiracı adınızla değiştirin <your tenant name> .
    • Kimlik doğrulama türü: Anonim'i seçin.
    • Kimlik doğrulaması üst bilgileri:
      • Özellik adı: Yetkilendirme'yi seçin.
      • Değer: girin Bearer <access token from step 1>.
    • Bağlı hizmeti test edin.

    Create OData linked service

  3. OData veri kümesini oluşturma:

    1. 2. adımda oluşturulan OData bağlı hizmetiyle veri kümesini oluşturun.
    2. Verileri önizleme.

    Preview data

Arama etkinliği özellikleri

Özellikler hakkında ayrıntılı bilgi edinmek için Arama etkinliği'ne bakın.

Kopyalama Etkinliği'nin kaynak ve havuz olarak desteklediği veri depolarının listesi için bkz . Desteklenen veri depoları ve biçimleri.