Aracılığıyla paylaş


Azure Data Factory kullanarak verileri Azure Dosyalar kopyalama

UYGULANANLAR: Azure Data Factory Azure Synapse Analytics

İpucu

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, Azure Dosyalar'a ve Azure Dosyalar veri kopyalama adımları özetlenmiştir. Azure Data Factory hakkında bilgi edinmek için giriş makalesini okuyun.

Desteklenen özellikler

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

Desteklenen özellikler IR Yönetilen özel uç nokta
Kopyalama etkinliği (kaynak/havuz) (1) (2) ✓ Depolama hesabı V1'i hariç tutma
Arama etkinliği (1) (2) ✓ Depolama hesabı V1'i hariç tutma
GetMetadata etkinliği (1) (2) ✓ Depolama hesabı V1'i hariç tutma
Silme etkinliği (1) (2) ✓ Depolama hesabı V1'i hariç tutma

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

verileri Azure Dosyalar desteklenen herhangi bir havuz veri deposuna veya desteklenen herhangi bir kaynak veri deposundaki verileri Azure Dosyalar kopyalayabilirsiniz. Kopyalama Etkinliği'nin kaynak ve havuz olarak desteklediği veri depolarının listesi için bkz . Desteklenen veri depoları ve biçimleri.

Bu Azure Dosyalar bağlayıcısı özellikle şunları destekler:

  • Hesap anahtarı veya hizmet paylaşılan erişim imzası (SAS) kimlik doğrulamalarını kullanarak dosyaları kopyalama.
  • Dosyaları olduğu gibi kopyalama veya desteklenen dosya biçimleri ve sıkıştırma codec bileşenleriyle dosyaları ayrıştırma/oluşturma.

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 Azure Dosyalar bağlı hizmet oluşturma

Azure portalı kullanıcı arabiriminde Azure Dosyalar bağlı bir 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 göz atın ve Bağlı Hizmetler'i seçin, ardından Yeni'ye tıklayın:

  2. Dosya için arama yapın ve Azure Dosya Depolama etiketli Azure Dosyalar bağlayıcısını seçin.

    Azure Dosya Depolama bağlayıcısının ekran görüntüsü.

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

    Azure Dosya Depolama için bağlı hizmet yapılandırmasının ekran görüntüsü.

Bağlayıcı yapılandırma ayrıntıları

Aşağıdaki bölümlerde, Azure Dosyalar özgü varlıkları tanımlamak için kullanılan özelliklerle ilgili ayrıntılar sağlanır.

Bağlı hizmet özellikleri

Azure Dosyalar bağlayıcısı aşağıdaki kimlik doğrulama türlerini destekler. Ayrıntılar için ilgili bölümlere bakın.

Not

ADF yazma kullanıcı arabiriminde "Temel kimlik doğrulaması" olarak gösterilen eski modelle Azure Dosyalar bağlı hizmet kullanıyorsanız, bu özellik olduğu gibi desteklenirken, bundan sonra yeni modeli kullanmanız önerilir. Eski model, Verileri Sunucu İleti Bloğu (SMB) üzerinden depolama alanından/depolamaya aktarırken, yeni model daha iyi aktarım hızına sahip depolama SDK'sını kullanır. Yükseltmek için, bağlı hizmetinizi düzenleyerek kimlik doğrulama yöntemini "Hesap anahtarı" veya "SAS URI'sine" geçirebilirsiniz; veri kümesinde veya kopyalama etkinliğinde değişiklik gerekmez.

Hesap anahtarı kimlik doğrulaması

Data Factory, Azure Dosyalar hesap anahtarı kimlik doğrulaması için aşağıdaki özellikleri destekler:

Özellik Açıklama Gerekli
Tür tür özelliği şu şekilde ayarlanmalıdır: AzureFileStorage. Yes
connectionString Azure Dosyalar bağlanmak için gereken bilgileri belirtin.
Ayrıca hesap anahtarını Azure Key Vault'a koyabilir ve yapılandırmayı accountKey bağlantı dizesi çıkarabilirsiniz. Daha fazla bilgi için aşağıdaki örneklere ve Azure Key Vault'ta kimlik bilgilerini depolama makalesine bakın.
Yes
fileShare Dosya paylaşımını belirtin. Yes
anlık görüntü Anlık görüntüden kopyalamak istiyorsanız dosya paylaşımı anlık görüntüsünün tarihini belirtin. Hayır
connectVia Veri deposuna bağlanmak için kullanılacak Integration Runtime. Azure Integration Runtime veya Şirket İçinde Barındırılan Tümleştirme Çalışma Zamanı'nı (veri deponuz özel ağda bulunuyorsa) kullanabilirsiniz. Belirtilmezse, varsayılan Azure Integration Runtime'ı kullanır. Hayır

Örnek:

{
    "name": "AzureFileStorageLinkedService",
    "properties": {
        "type": "AzureFileStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountName>;AccountKey=<accountKey>;EndpointSuffix=core.windows.net;",
            "fileShare": "<file share name>"
        },
        "connectVia": {
          "referenceName": "<name of Integration Runtime>",
          "type": "IntegrationRuntimeReference"
        }
    }
}

Örnek: Hesap anahtarını Azure Key Vault'ta depolama

{
    "name": "AzureFileStorageLinkedService",
    "properties": {
        "type": "AzureFileStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountname>;",
            "fileShare": "<file share name>",
            "accountKey": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }            
    }
}

Paylaşılan erişim imzası kimlik doğrulaması

Paylaşılan erişim imzası, depolama hesabınızdaki kaynaklara temsilci erişimi sağlar. İstemciye depolama hesabınızdaki nesnelere belirli bir süre için sınırlı izinler vermek için paylaşılan erişim imzası kullanabilirsiniz. Paylaşılan erişim imzaları hakkında daha fazla bilgi için bkz . Paylaşılan erişim imzaları: Paylaşılan erişim imzası modelini anlama.

Hizmet, paylaşılan erişim imzası kimlik doğrulamasını kullanmak için aşağıdaki özellikleri destekler:

Özellik Açıklama Gerekli
Tür tür özelliği şu şekilde ayarlanmalıdır: AzureFileStorage. Yes
sasUri Kaynaklar için paylaşılan erişim imzası URI'sini belirtin.
Güvenli bir şekilde depolamak için bu alanı SecureString olarak işaretleyin. Otomatik döndürmeyi kullanmak ve belirteç bölümünü kaldırmak için SAS belirtecini Azure Key Vault'a da yerleştirebilirsiniz. Daha fazla bilgi için aşağıdaki örneklere ve Kimlik bilgilerini Azure Key Vault'ta depolama bölümüne bakın.
Yes
fileShare Dosya paylaşımını belirtin. Yes
anlık görüntü Anlık görüntüden kopyalamak istiyorsanız dosya paylaşımı anlık görüntüsünün tarihini belirtin. Hayır
connectVia Veri deposuna bağlanmak için kullanılacak Integration Runtime. Azure Integration Runtime veya Şirket İçinde Barındırılan Tümleştirme Çalışma Zamanı'nı (veri deponuz özel ağda bulunuyorsa) kullanabilirsiniz. Belirtilmezse, varsayılan Azure Integration Runtime'ı kullanır. Hayır

Örnek:

{
    "name": "AzureFileStorageLinkedService",
    "properties": {
        "type": "AzureFileStorage",
        "typeProperties": {
            "sasUri": {
                "type": "SecureString",
                "value": "<SAS URI of the resource e.g. https://<accountname>.file.core.windows.net/?sv=<storage version>&st=<start time>&se=<expire time>&sr=<resource>&sp=<permissions>&sip=<ip range>&spr=<protocol>&sig=<signature>>"
            },
            "fileShare": "<file share name>",
            "snapshot": "<snapshot version>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Örnek: SAS belirtecini Azure Key Vault'ta depolama

{
    "name": "AzureFileStorageLinkedService",
    "properties": {
        "type": "AzureFileStorage",
        "typeProperties": {
            "sasUri": {
                "type": "SecureString",
                "value": "<SAS URI of the Azure Storage resource without token e.g. https://<accountname>.file.core.windows.net/>"
            },
            "sasToken": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName with value of SAS token e.g. ?sv=<storage version>&st=<start time>&se=<expire time>&sr=<resource>&sp=<permissions>&sip=<ip range>&spr=<protocol>&sig=<signature>>" 
            },
            "fileShare": "<file share name>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Sistem tarafından atanan yönetilen kimlik kimlik doğrulaması

Veri fabrikası veya Synapse işlem hattı, Azure kaynakları için sistem tarafından atanan yönetilen kimlikle ilişkilendirilebilir. Bu kimlik, diğer Azure hizmetlerinde kimlik doğrulaması için bu kaynağı temsil eder. Sistem tarafından atanan bu yönetilen kimliği Azure Dosyalar kimlik doğrulaması için kullanabilirsiniz. Azure kaynakları için yönetilen kimlikler hakkında daha fazla bilgi edinmek için bkz . Azure kaynakları için yönetilen kimlikler.

Sistem tarafından atanan yönetilen kimlik kimlik doğrulamasını kullanmak için şu adımları izleyin:

  1. Fabrikanız veya Synapse çalışma alanınızla birlikte oluşturulan sistem tarafından atanan yönetilen kimlik nesne kimliğinin değerini kopyalayarak sistem tarafından atanan yönetilen kimlik bilgilerini alın.

  2. yönetilen kimlik iznini Azure Dosyalar. Roller hakkında daha fazla bilgi için bu makaleye bakın.

    • Kaynak olarak, Erişim denetiminde (IAM) en azından Depolama Dosyası Verileri SMB Paylaşım Okuyucusu rolünü verin.
    • Havuz olarak, Erişim denetiminde (IAM) en azından Depolama Dosyası Verileri SMB Paylaşımı Katkıda Bulunanı rolünü verin.

Bu özellikler Azure Dosyalar bağlı bir hizmet için desteklenir:

Özellik Açıklama Gerekli
Tür type özelliği AzureFileStorage olarak ayarlanmalıdır. Yes
serviceEndpoint Azure Dosyalar hizmet uç noktasını deseniyle https://<accountName>.file.core.windows.net/belirtin. Yes
fileShare Dosya paylaşımını belirtin. Yes
anlık görüntü Anlık görüntüden kopyalamak istiyorsanız dosya paylaşımı anlık görüntüsünün tarihini belirtin. Hayır
connectVia Veri deposuna bağlanmak için kullanılacak Integration Runtime. Azure Integration Runtime kullanabilirsiniz. Belirtilmezse, varsayılan Azure Integration Runtime'ı kullanır. Hayır

Not

Sistem tarafından atanan yönetilen kimlik kimlik doğrulaması yalnızca Azure tümleştirme çalışma zamanı tarafından desteklenir.

Örnek:

{
    "name": "AzureFileStorageLinkedService",
    "properties": {
        "type": "AzureFileStorage",
        "typeProperties": {            
            "serviceEndpoint": "https://<accountName>.file.core.windows.net/",
            "fileShare": "<file share name>",
            "snapshot": "<snapshot version>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Kullanıcı tarafından atanan yönetilen kimlik kimlik doğrulaması

Veri fabrikası, kullanıcı tarafından atanan bir veya birden çok yönetilen kimlikle atanabilir. Azure Dosyalar kimlik doğrulaması için kullanıcı tarafından atanan bu yönetilen kimliği kullanabilirsiniz. Bu kimlik, Azure Dosyalar veya bu kimlikten verilere erişmeye ve bunları kopyalamaya olanak tanır. Azure kaynakları için yönetilen kimlikler hakkında daha fazla bilgi edinmek için bkz . Azure kaynakları için yönetilen kimlikler.

Kullanıcı tarafından atanan yönetilen kimlik kimlik doğrulamasını kullanmak için şu adımları izleyin:

  1. Azure Dosyalar kullanıcı tarafından atanan bir veya birden çok yönetilen kimlik oluşturun ve izin verin. Roller hakkında daha fazla bilgi için bu makaleye bakın.

    • Kaynak olarak, Erişim denetiminde (IAM) en azından Depolama Dosyası Verileri SMB Paylaşım Okuyucusu rolünü verin.
    • Havuz olarak, Erişim denetiminde (IAM) en azından Depolama Dosyası Verileri SMB Paylaşımı Katkıda Bulunanı rolünü verin.
  2. Veri fabrikanıza kullanıcı tarafından atanan bir veya birden çok yönetilen kimlik atayın ve kullanıcı tarafından atanan her yönetilen kimlik için kimlik bilgileri oluşturun.

Bu özellikler Azure Dosyalar bağlı bir hizmet için desteklenir:

Özellik Açıklama Gerekli
Tür type özelliği AzureFileStorage olarak ayarlanmalıdır. Yes
serviceEndpoint Azure Dosyalar hizmet uç noktasını deseniyle https://<accountName>.file.core.windows.net/belirtin. Yes
kimlik bilgileri Kimlik bilgisi nesnesi olarak kullanıcı tarafından atanan yönetilen kimliği belirtin. Yes
fileShare Dosya paylaşımını belirtin. Yes
anlık görüntü Anlık görüntüden kopyalamak istiyorsanız dosya paylaşımı anlık görüntüsünün tarihini belirtin. Hayır
connectVia Veri deposuna bağlanmak için kullanılacak Integration Runtime. Azure Integration Runtime veya Şirket İçinde Barındırılan Tümleştirme Çalışma Zamanı'nı (veri deponuz özel ağda bulunuyorsa) kullanabilirsiniz. Belirtilmezse, varsayılan Azure Integration Runtime'ı kullanır. Hayır

Örnek:

{
    "name": "AzureFileStorageLinkedService",
    "properties": {
        "type": "AzureFileStorage",
        "typeProperties": {            
            "serviceEndpoint": "https://<accountName>.file.core.windows.net/",
            "credential": {
                "referenceName": "credential1",
                "type": "CredentialReference"
            },
            "fileShare": "<file share name>",
            "snapshot": "<snapshot version>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Eski model

Özellik Açıklama Gerekli
Tür tür özelliği şu şekilde ayarlanmalıdır: AzureFileStorage. Yes
host Azure Dosyalar uç noktasını şu şekilde belirtir:
-Kullanıcı arabirimini kullanma: belirtin \\<storage name>.file.core.windows.net\<file service name>
- JSON kullanma: "host": "\\\\<storage name>.file.core.windows.net\\<file service name>".
Yes
kullanıcı kimliği Azure Dosyalar erişecek kullanıcıyı şu şekilde belirtin:
-Kullanıcı arabirimini kullanma: belirtin AZURE\<storage name>
-JSON kullanma: "userid": "AZURE\\<storage name>".
Yes
password Depolama erişim anahtarını belirtin. Data Factory'de güvenli bir şekilde depolamak için bu alanı SecureString olarak işaretleyin veya Azure Key Vault'ta depolanan bir gizli diziye başvurun. Yes
connectVia Veri deposuna bağlanmak için kullanılacak Integration Runtime. Azure Integration Runtime veya Şirket İçinde Barındırılan Tümleştirme Çalışma Zamanı'nı (veri deponuz özel ağda bulunuyorsa) kullanabilirsiniz. Belirtilmezse, varsayılan Azure Integration Runtime'ı kullanır. Kaynak için Hayır, havuz için Evet

Örnek:

{
    "name": "AzureFileStorageLinkedService",
    "properties": {
        "type": "AzureFileStorage",
        "typeProperties": {
            "host": "\\\\<storage name>.file.core.windows.net\\<file service name>",
            "userid": "AZURE\\<storage name>",
            "password": {
                "type": "SecureString",
                "value": "<storage access key>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Veri kümesi özellikleri

Veri kümelerini tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için Veri kümeleri makalesine bakın.

Azure Data Factory aşağıdaki dosya biçimlerini destekler. Biçim tabanlı ayarlar için her makaleye bakın.

Aşağıdaki özellikler, biçim tabanlı veri kümesindeki ayarlar altında location Azure Dosyalar için desteklenir:

Özellik Açıklama Gerekli
Tür in veri kümesi altındaki type özelliği location AzureFileStorageLocation olarak ayarlanmalıdır. Yes
folderPath Klasörün yolu. Klasörü filtrelemek için joker karakter kullanmak istiyorsanız, bu ayarı atlayın ve etkinlik kaynağı ayarlarında belirtin. Hayır
fileName Verilen folderPath altındaki dosya adı. Dosyaları filtrelemek için joker karakter kullanmak istiyorsanız, bu ayarı atlayın ve etkinlik kaynağı ayarlarında belirtin. Hayır

Örnek:

{
    "name": "DelimitedTextDataset",
    "properties": {
        "type": "DelimitedText",
        "linkedServiceName": {
            "referenceName": "<Azure File Storage linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, auto retrieved during authoring > ],
        "typeProperties": {
            "location": {
                "type": "AzureFileStorageLocation",
                "folderPath": "root/folder/subfolder"
            },
            "columnDelimiter": ",",
            "quoteChar": "\"",
            "firstRowAsHeader": true,
            "compressionCodec": "gzip"
        }
    }
}

Kopyalama etkinliğinin özellikleri

Etkinlikleri tanımlamak için kullanılabilen bölümlerin ve özelliklerin tam listesi için İşlem hatları makalesine bakın. Bu bölüm, Azure Dosyalar kaynak ve havuz tarafından desteklenen özelliklerin listesini sağlar.

Kaynak olarak Azure Dosyalar

Azure Data Factory aşağıdaki dosya biçimlerini destekler. Biçim tabanlı ayarlar için her makaleye bakın.

Aşağıdaki özellikler, biçim tabanlı kopyalama kaynağındaki ayarlar altında storeSettings Azure Dosyalar için desteklenir:

Özellik Açıklama Gerekli
Tür altındaki storeSettings tür özelliği AzureFileStorageReadSettings olarak ayarlanmalıdır. Yes
Kopyalanacak dosyaları bulun:
SEÇENEK 1: statik yol
Veri kümesinde belirtilen belirtilen klasörden/dosya yolundan kopyalayın. Bir klasörden tüm dosyaları kopyalamak istiyorsanız, ek olarak olarak *belirtinwildcardFileName.
SEÇENEK 2: dosya ön eki
-önek
Kaynak dosyaları filtrelemek için bir veri kümesinde yapılandırılan belirli dosya paylaşımının altındaki dosya adının ön eki. Adı ile fileshare_in_linked_service/this_prefix başlayan dosyalar seçilir. Azure Dosyalar için hizmet tarafı filtresini kullanır ve bu da joker karakter filtresine göre daha iyi performans sağlar. Bu özellik, eski bir bağlı hizmet modeli kullanılırken desteklenmez. Hayır
SEÇENEK 3: joker karakter
- wildcardFolderPath
Kaynak klasörleri filtrelemek için joker karakterler içeren klasör yolu.
İzin verilen joker karakterler şunlardır: * (sıfır veya daha fazla karakterle eşleşir) ve ? (sıfır veya tek karakterle eşleşir); gerçek klasör adınızın içinde joker karakter veya bu kaçış karakteri varsa kaçış yapmak için kullanın ^ .
Klasör ve dosya filtresi örnekleri'ndeki diğer örneklere bakın.
Hayır
SEÇENEK 3: joker karakter
- wildcardFileName
Kaynak dosyaları filtrelemek için verilen folderPath/wildcardFolderPath altında joker karakterler içeren dosya adı.
İzin verilen joker karakterler şunlardır: * (sıfır veya daha fazla karakterle eşleşir) ve ? (sıfır veya tek karakterle eşleşir); gerçek dosya adınızın içinde joker karakter veya bu kaçış karakteri varsa kaçış yapmak için kullanın ^ . Klasör ve dosya filtresi örnekleri'ndeki diğer örneklere bakın.
Yes
OPTION 4: dosya listesi
- fileListPath
Belirli bir dosya kümesinin kopyalandığını gösterir. Kopyalamak istediğiniz dosyaların listesini içeren bir metin dosyasının üzerine gelin. Bu, veri kümesinde yapılandırılan yolun göreli yolu olan satır başına bir dosyadır.
Bu seçeneği kullanırken veri kümesinde dosya adı belirtmeyin. Dosya listesi örnekleri'ndeki diğer örneklere bakın.
Hayır
Ek ayarlar:
Özyinelemeli Verilerin alt klasörlerden veya yalnızca belirtilen klasörden özyinelemeli olarak okunup okunmadığını gösterir. Özyineleme true olarak ayarlandığında ve havuz dosya tabanlı bir depo olduğunda, havuza boş bir klasör veya alt klasör kopyalanır veya oluşturulmaz.
İzin verilen değerler true (varsayılan) ve false değerleridir.
Yapılandırdığınızda fileListPathbu özellik geçerli değildir.
Hayır
deleteFilesAfterCompletion hedef depoya başarıyla taşındıktan sonra ikili dosyaların kaynak depodan silinip silinmeyeceğini gösterir. Dosya silme işlemi dosya başınadır, bu nedenle kopyalama etkinliği başarısız olduğunda bazı dosyaların hedefe kopyalandığını ve kaynaktan silindiğini, diğerleri ise kaynak depoda kaldığını görürsünüz.
Bu özellik yalnızca ikili dosya kopyalama senaryosunda geçerlidir. Varsayılan değer: false.
Hayır
modifiedDatetimeStart Dosyalar şu özniteliğe göre filtrelenmiş: Son Değiştirme.
Dosyalar, son değiştirme süreleri değerinden büyük veya buna eşit modifiedDatetimeStart ve değerinden modifiedDatetimeEndküçükse seçilir. Saat UTC saat dilimine "2018-12-01T05:00:00Z" biçiminde uygulanır.
Özellikler NULL olabilir; başka bir deyişle veri kümesine hiçbir dosya özniteliği filtresi uygulanmaz. Tarih saat değeri olduğunda modifiedDatetimeStart ancak modifiedDatetimeEnd NULL olduğunda, son değiştirilen özniteliği datetime değerinden büyük veya eşit olan dosyaların seçileceği anlamına gelir. Tarih saat değeri olduğunda modifiedDatetimeEnd ancak modifiedDatetimeStart NULL olduğunda, son değiştirilen özniteliği datetime değerinden küçük olan dosyaların seçileceği anlamına gelir.
Yapılandırdığınızda fileListPathbu özellik geçerli değildir.
Hayır
modifiedDatetimeEnd Yukarıdakiyle aynıdır. Hayır
enablePartitionDiscovery Bölümlenmiş dosyalar için, bölümlerin dosya yolundan ayrıştırılıp ayrıştırılmayacağını belirtin ve bunları ek kaynak sütunlar olarak ekleyin.
İzin verilen değerler false (varsayılan) ve true değerleridir.
Hayır
partitionRootPath Bölüm bulma etkinleştirildiğinde, bölümlenmiş klasörleri veri sütunları olarak okumak için mutlak kök yolu belirtin.

Belirtilmezse, varsayılan olarak,
- Veri kümesinde dosya yolunu veya kaynaktaki dosyaların listesini kullandığınızda, bölüm kök yolu veri kümesinde yapılandırılan yoldur.
- Joker karakter klasör filtresi kullandığınızda, bölüm kök yolu ilk joker karakterden önceki alt yoldur.

Örneğin, veri kümesindeki yolu "root/folder/year=2020/month=08/day=27" olarak yapılandırdığınız varsayılır:
- Bölüm kök yolunu "root/folder/year=2020" olarak belirtirseniz kopyalama etkinliği, dosyaların içindeki sütunlara ek olarak sırasıyla "08" ve "27" değerine sahip iki sütun month day daha oluşturur.
- Bölüm kök yolu belirtilmezse, ek sütun oluşturulmaz.
Hayır
maxConcurrentConnections Etkinlik çalıştırması sırasında veri deposuna kurulan eş zamanlı bağlantıların üst sınırı. Yalnızca eşzamanlı bağlantıları sınırlamak istediğinizde bir değer belirtin. Hayır

Örnek:

"activities":[
    {
        "name": "CopyFromAzureFileStorage",
        "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": "AzureFileStorageReadSettings",
                    "recursive": true,
                    "wildcardFolderPath": "myfolder*A",
                    "wildcardFileName": "*.csv"
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Havuz olarak Azure Dosyalar

Azure Data Factory aşağıdaki dosya biçimlerini destekler. Biçim tabanlı ayarlar için her makaleye bakın.

Aşağıdaki özellikler, biçim tabanlı kopyalama havuzundaki ayarlar altında storeSettings Azure Dosyalar için desteklenir:

Özellik Açıklama Gerekli
Tür altındaki storeSettings tür özelliği AzureFileStorageWriteSettings olarak ayarlanmalıdır. Yes
copyBehavior Kaynak dosya tabanlı bir veri deposundaki dosyalar olduğunda kopyalama davranışını tanımlar.

İzin verilen değerler şunlardır:
- PreserveHierarchy (varsayılan): Hedef klasördeki dosya hiyerarşisini korur. Kaynak dosyanın kaynak klasöre göreli yolu, hedef dosyanın hedef klasöre göreli yolu ile aynıdır.
- FlattenHierarchy: Kaynak klasördeki tüm dosyalar hedef klasörün ilk düzeyindedir. Hedef dosyalar otomatik olarak oluşturulan adlara sahiptir.
- MergeFiles: Kaynak klasördeki tüm dosyaları tek bir dosyayla birleştirir. Dosya adı belirtilirse, birleştirilmiş dosya adı belirtilen addır. Aksi takdirde, otomatik olarak oluşturulan bir dosya adıdır.
Hayır
maxConcurrentConnections Etkinlik çalıştırması sırasında veri deposuna kurulan eş zamanlı bağlantıların üst sınırı. Yalnızca eşzamanlı bağlantıları sınırlamak istediğinizde bir değer belirtin. Hayır

Örnek:

"activities":[
    {
        "name": "CopyToAzureFileStorage",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Parquet output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "ParquetSink",
                "storeSettings":{
                    "type": "AzureFileStorageWriteSettings",
                    "copyBehavior": "PreserveHierarchy"
                }
            }
        }
    }
]

Klasör ve dosya filtresi örnekleri

Bu bölümde, joker karakter filtreleriyle klasör yolunun ve dosya adının elde edilen davranışı açıklanmaktadır.

folderPath fileName Özyinelemeli Kaynak klasör yapısı ve filtre sonucu (kalın yazılmış dosyalar alınır)
Folder* (boş, varsayılanı kullan) yanlış KlasörA
    File1.csv
    File2.json
    Alt Klasör1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv
Folder* (boş, varsayılanı kullan) true KlasörA
    File1.csv
    File2.json
    Alt Klasör1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv
Folder* *.csv yanlış KlasörA
    File1.csv
    File2.json
    Alt Klasör1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv
Folder* *.csv true KlasörA
    File1.csv
    File2.json
    Alt Klasör1
        File3.csv
        File4.json
        File5.csv
AnotherFolderB
    File6.csv

Dosya listesi örnekleri

Bu bölümde, kopyalama etkinliği kaynağında dosya listesi yolunu kullanmanın elde edilen davranışı açıklanmaktadır.

Aşağıdaki kaynak klasör yapısına sahip olduğunuzu ve dosyaları kalın yazıyla kopyalamak istediğinizi varsayarsak:

Örnek kaynak yapısı FileListToCopy.txt içeriği Yapılandırma
kök
    KlasörA
        File1.csv
        File2.json
        Alt Klasör1
            File3.csv
            File4.json
            File5.csv
    Meta veri
        FileListToCopy.txt
File1.csv
Alt Klasör1/File3.csv
Alt Klasör1/File5.csv
Veri kümesinde:
- Klasör yolu: root/FolderA

Kopyalama etkinliği kaynağında:
- Dosya listesi yolu: root/Metadata/FileListToCopy.txt

Dosya listesi yolu, veri kümesinde yapılandırılan yolun göreli yolunu içeren, kopyalamak istediğiniz dosyaların listesini içeren aynı veri deposundaki bir metin dosyasını gösterir.

özyinelemeli ve copyBehavior örnekleri

Bu bölümde özyinelemeli ve copyBehavior değerlerinin farklı birleşimleri için Kopyalama işleminin sonuç davranışı açıklanmaktadır.

Özyinelemeli copyBehavior Kaynak klasör yapısı Sonuçta elde edilen hedef
true preserveHierarchy Klasör1
    Dosya1
    Dosya2
    Alt Klasör1
        Dosya3
        Dosya4
        Dosya5
Klasör1 hedef klasörü, kaynakla aynı yapıda oluşturulur:

Klasör1
    Dosya1
    Dosya2
    Alt Klasör1
        Dosya3
        Dosya4
        Dosya5.
true flattenHierarchy Klasör1
    Dosya1
    Dosya2
    Alt Klasör1
        Dosya3
        Dosya4
        Dosya5
Hedef Klasör1 aşağıdaki yapıyla oluşturulur:

Klasör1
    Dosya1 için otomatik oluşturulan ad
    Dosya2 için otomatik oluşturulan ad
    Dosya3 için otomatik olarak oluşturulan ad
    Dosya4 için otomatik olarak oluşturulan ad
    Dosya5 için otomatik oluşturulan ad
true mergeFiles Klasör1
    Dosya1
    Dosya2
    Alt Klasör1
        Dosya3
        Dosya4
        Dosya5
Hedef Klasör1 aşağıdaki yapıyla oluşturulur:

Klasör1
    Dosya1 + Dosya2 + Dosya3 + Dosya4 + Dosya 5 içeriği, otomatik olarak oluşturulan dosya adıyla bir dosyada birleştirilir
yanlış preserveHierarchy Klasör1
    Dosya1
    Dosya2
    Alt Klasör1
        Dosya3
        Dosya4
        Dosya5
Klasör1 hedef klasörü aşağıdaki yapıyla oluşturulur

Klasör1
    Dosya1
    Dosya2

Dosya3, Dosya4 ve Dosya5 içeren alt klasör1 alınmaz.
yanlış flattenHierarchy Klasör1
    Dosya1
    Dosya2
    Alt Klasör1
        Dosya3
        Dosya4
        Dosya5
Klasör1 hedef klasörü aşağıdaki yapıyla oluşturulur

Klasör1
    Dosya1 için otomatik oluşturulan ad
    Dosya2 için otomatik oluşturulan ad

Dosya3, Dosya4 ve Dosya5 içeren alt klasör1 alınmaz.
yanlış mergeFiles Klasör1
    Dosya1
    Dosya2
    Alt Klasör1
        Dosya3
        Dosya4
        Dosya5
Klasör1 hedef klasörü aşağıdaki yapıyla oluşturulur

Klasör1
    Dosya1 + Dosya2 içeriği, otomatik olarak oluşturulan dosya adıyla tek bir dosyada birleştirilir. Dosya1 için otomatik oluşturulan ad

Dosya3, Dosya4 ve Dosya5 içeren alt klasör1 alınmaz.

Arama etkinliği özellikleri

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

GetMetadata etkinlik özellikleri

Özellikler hakkında ayrıntılı bilgi edinmek için GetMetadata etkinliğini denetleyin

Etkinlik özelliklerini silme

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

Eski modeller

Not

Aşağıdaki modeller geriye dönük uyumluluk için olduğu gibi desteklenmektedir. İleride yukarıdaki bölümlerde bahsedilen yeni modeli kullanmanız önerilir ve yazma kullanıcı arabirimi yeni modeli oluşturmaya geçti.

Eski veri kümesi modeli

Özellik Açıklama Gerekli
Tür Veri kümesinin tür özelliği şu şekilde ayarlanmalıdır: FileShare Yes
folderPath Klasörün yolu.

Joker karakter filtresi desteklenir, izin verilen joker karakterler şunlardır: * (sıfır veya daha fazla karakterle eşleşir) ve ? (sıfır veya tek karakterle eşleşir); gerçek klasör adınızın içinde joker karakter veya bu kaçış karakteri varsa kaçış yapmak için kullanın ^ .

Örnekler: kök klasör/alt klasör/, Klasör ve dosya filtresi örnekleri'ndeki diğer örneklere bakın.
Yes
fileName Belirtilen "folderPath" altındaki dosyalar için ad veya joker karakter filtresi . Bu özellik için bir değer belirtmezseniz, veri kümesi klasördeki tüm dosyaları gösterir.

Filtre için izin verilen joker karakterler şunlardır: * (sıfır veya daha fazla karakterle eşleşir) ve ? (sıfır veya tek karakterle eşleşir).
- Örnek 1: "fileName": "*.csv"
- Örnek 2: "fileName": "???20180427.txt"
Gerçek dosya adınızın içinde joker karakter veya bu kaçış karakteri varsa kaçış yapmak için kullanın ^ .

Bir çıkış veri kümesi için fileName belirtilmediğinde ve etkinlik havuzunda preserveHierarchy belirtilmediğinde, kopyalama etkinliği otomatik olarak şu desene sahip dosya adını oluşturur: "Data.[ etkinlik çalıştırma kimliği GUID]. [FlattenHierarchy ise GUID]. [yapılandırıldıysa biçimlendir]. [compression if configured]", örneğin "Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt.gz"; sorgu yerine tablo adını kullanarak tablo kaynağından kopyalama yaparsanız, ad deseni "[tablo adı].[ biçim]. [yapılandırıldıysa sıkıştırma]", örneğin "MyTable.csv".
Hayır
modifiedDatetimeStart Dosyalar şu özniteliğe göre filtrelenmiş: Son Değiştirme. Dosyalar, son değiştirme süreleri değerinden büyük veya buna eşit modifiedDatetimeStart ve değerinden modifiedDatetimeEndküçükse seçilir. Saat UTC saat dilimine "2018-12-01T05:00:00Z" biçiminde uygulanır.

Çok büyük miktarlarda dosyadan dosya filtresi uygulamak istediğinizde bu ayarın etkinleştirilmesinden veri taşımanın genel performansının etkileneceğine dikkat edin.

Özellikler NULL olabilir, başka bir deyişle veri kümesine hiçbir dosya özniteliği filtresi uygulanmaz. Tarih saat değeri olduğunda modifiedDatetimeStart ancak modifiedDatetimeEnd NULL olduğunda, son değiştirilen özniteliği datetime değerinden büyük veya eşit olan dosyaların seçileceği anlamına gelir. Tarih saat değeri olduğunda modifiedDatetimeEnd ancak modifiedDatetimeStart NULL olduğunda, son değiştirilen özniteliği datetime değerinden küçük olan dosyaların seçileceği anlamına gelir.
Hayır
modifiedDatetimeEnd Dosyalar şu özniteliğe göre filtrelenmiş: Son Değiştirme. Dosyalar, son değiştirme süreleri değerinden büyük veya buna eşit modifiedDatetimeStart ve değerinden modifiedDatetimeEndküçükse seçilir. Saat UTC saat dilimine "2018-12-01T05:00:00Z" biçiminde uygulanır.

Çok büyük miktarlarda dosyadan dosya filtresi uygulamak istediğinizde bu ayarın etkinleştirilmesinden veri taşımanın genel performansının etkileneceğine dikkat edin.

Özellikler NULL olabilir, başka bir deyişle veri kümesine hiçbir dosya özniteliği filtresi uygulanmaz. Tarih saat değeri olduğunda modifiedDatetimeStart ancak modifiedDatetimeEnd NULL olduğunda, son değiştirilen özniteliği datetime değerinden büyük veya eşit olan dosyaların seçileceği anlamına gelir. Tarih saat değeri olduğunda modifiedDatetimeEnd ancak modifiedDatetimeStart NULL olduğunda, son değiştirilen özniteliği datetime değerinden küçük olan dosyaların seçileceği anlamına gelir.
Hayır
format Dosyaları dosya tabanlı depolar (ikili kopya) arasında olduğu gibi kopyalamak istiyorsanız, hem giriş hem de çıkış veri kümesi tanımlarında biçim bölümünü atlayın.

Dosyaları belirli bir biçimde ayrıştırmak veya oluşturmak istiyorsanız, şu dosya biçimi türleri desteklenir: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. biçim altındaki type özelliğini bu değerlerden birine ayarlayın. Daha fazla bilgi için bkz . Metin Biçimi, Json Biçimi, Avro Biçimi, Ork Biçimi ve Parquet Biçimi bölümleri.
Hayır (yalnızca ikili kopyalama senaryosu için)
sıkıştırma Verilerin sıkıştırma türünü ve düzeyini belirtin. Daha fazla bilgi için bkz . Desteklenen dosya biçimleri ve sıkıştırma codec'leri.
Desteklenen türler şunlardır: GZip, Deflate, BZip2 ve ZipDeflate.
Desteklenen düzeyler şunlardır: En uygun ve en hızlı.
Hayır

İpucu

Bir klasörün altındaki tüm dosyaları kopyalamak için yalnızca folderPath değerini belirtin.
Belirli bir ada sahip tek bir dosyayı kopyalamak için klasör bölümü ile folderPath ve dosya adıyla fileName belirtin.
Bir klasörün altındaki dosyaların bir alt kümesini kopyalamak için klasör bölümü ile folderPath ve joker karakter filtresiyle fileName belirtin.

Not

Dosya filtresi için "fileFilter" özelliğini kullandıysanız, yine de olduğu gibi desteklenir, ancak bundan sonra "fileName" dosyasına eklenen yeni filtre özelliğini kullanmanız önerilir.

Örnek:

{
    "name": "AzureFileStorageDataset",
    "properties": {
        "type": "FileShare",
        "linkedServiceName":{
            "referenceName": "<Azure File Storage linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "folderPath": "folder/subfolder/",
            "fileName": "*",
            "modifiedDatetimeStart": "2018-12-01T05:00:00Z",
            "modifiedDatetimeEnd": "2018-12-01T06:00:00Z",
            "format": {
                "type": "TextFormat",
                "columnDelimiter": ",",
                "rowDelimiter": "\n"
            },
            "compression": {
                "type": "GZip",
                "level": "Optimal"
            }
        }
    }
}

Eski kopyalama etkinliği kaynak modeli

Özellik Açıklama Gerekli
Tür Kopyalama etkinliği kaynağının type özelliği şu şekilde ayarlanmalıdır: FileSystemSource Yes
Özyinelemeli Verilerin alt klasörlerden veya yalnızca belirtilen klasörden özyinelemeli olarak okunup okunmadığını gösterir. Özyineleme true olarak ayarlandığında ve havuz dosya tabanlı depo olduğunda boş klasör/alt klasör havuza kopyalanmaz/oluşturulmaz.
İzin verilen değerler şunlardır: true (varsayılan), false
Hayır
maxConcurrentConnections Etkinlik çalıştırması sırasında veri deposuna kurulan eş zamanlı bağlantıların üst sınırı. Yalnızca eşzamanlı bağlantıları sınırlamak istediğinizde bir değer belirtin. Hayır

Örnek:

"activities":[
    {
        "name": "CopyFromAzureFileStorage",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Azure File Storage input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "FileSystemSource",
                "recursive": true
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Eski kopyalama etkinliği havuz modeli

Özellik Açıklama Gerekli
Tür Kopyalama etkinliği havuzu type özelliği şu şekilde ayarlanmalıdır: FileSystemSink Yes
copyBehavior Kaynak dosya tabanlı veri deposundaki dosyalar olduğunda kopyalama davranışını tanımlar.

İzin verilen değerler şunlardır:
- PreserveHierarchy (varsayılan): hedef klasördeki dosya hiyerarşisini korur. Kaynak dosyanın kaynak klasöre göreli yolu, hedef dosyanın hedef klasöre göreli yolu ile aynıdır.
- FlattenHierarchy: Kaynak klasördeki tüm dosyalar hedef klasörün ilk düzeyindedir. Hedef dosyaların adı otomatik olarak oluşturulmuş.
- MergeFiles: Kaynak klasördeki tüm dosyaları bir dosyayla birleştirir. Dosya Adı belirtilirse, birleştirilmiş dosya adı belirtilen ad olur; aksi takdirde, otomatik olarak oluşturulan dosya adı olur.
Hayır
maxConcurrentConnections Etkinlik çalıştırması sırasında veri deposuna kurulan eş zamanlı bağlantıların üst sınırı. Yalnızca eşzamanlı bağlantıları sınırlamak istediğinizde bir değer belirtin. Hayır

Örnek:

"activities":[
    {
        "name": "CopyToAzureFileStorage",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Azure File Storage output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "FileSystemSink",
                "copyBehavior": "PreserveHierarchy"
            }
        }
    }
]

Kopyalama etkinliği tarafından kaynak ve havuz olarak desteklenen veri depolarının listesi için bkz . desteklenen veri depoları.