Azure Data Factory veya Azure Synapse Analytics kullanarak dosya sistemine veya dosya sisteminden veri 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, dosya sistemine ve dosya sisteminden veri kopyalama adımları özetlenmiştir. Daha fazla bilgi edinmek için Azure Data Factory veya Azure Synapse Analytics ile ilgili giriş makalesini okuyun.
Desteklenen özellikler
Bu dosya sistemi bağlayıcısı aşağıdaki özellikler için desteklenir:
Desteklenen özellikler | IR |
---|---|
Kopyalama etkinliği (kaynak/havuz) | (1) (2) |
Arama etkinliği | (1) (2) |
GetMetadata etkinliği | (1) (2) |
Silme etkinliği | (1) (2) |
(1) Azure tümleştirme çalışma zamanı (2) Şirket içinde barındırılan tümleştirme çalışma zamanı
Özellikle, bu dosya sistemi bağlayıcısı şunları destekler:
- Ağ dosya paylaşımından/ağ dosya paylaşımına dosya kopyalama. Linux dosya paylaşımı kullanmak için Linux sunucunuza Samba yükleyin.
- Windows kimlik doğrulaması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.
Ö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:
- Veri Kopyalama aracı
- Azure portal
- .NET SDK'sı
- Python SDK'sı
- Azure PowerShell
- The REST API
- Azure Resource Manager şablonu
Kullanıcı arabirimini kullanarak dosya sistemi bağlı hizmeti oluşturma
Azure portalı kullanıcı arabiriminde dosya sistemi bağlı hizmeti oluşturmak için aşağıdaki adımları kullanın.
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:
Dosya için arama yapın ve Dosya Sistemi bağlayıcısını seçin.
Hizmet ayrıntılarını yapılandırın, bağlantıyı test edin ve yeni bağlı hizmeti oluşturun.
Bağlayıcı yapılandırma ayrıntıları
Aşağıdaki bölümlerde, dosya sistemine özgü Data Factory ve Synapse işlem hattı varlıklarını tanımlamak için kullanılan özelliklerle ilgili ayrıntılar sağlanır.
Bağlı hizmet özellikleri
Dosya sistemi bağlı hizmeti için aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | Tür özelliği şu şekilde ayarlanmalıdır: FileServer. | Yes |
host | Kopyalamak istediğiniz klasörün kök yolunu belirtir. Dizedeki özel karakterler için "" kaçış karakterini kullanın. Örnekler için bkz . Örnek bağlı hizmet ve veri kümesi tanımları . | Yes |
userId | Sunucuya erişimi olan kullanıcının kimliğini belirtin. | Yes |
password | Kullanıcının parolasını (userId) 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. | Yes |
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ır. | Hayır |
Örnek bağlı hizmet ve veri kümesi tanımları
Senaryo | Bağlı hizmet tanımında "host" | Veri kümesi tanımında "folderPath" |
---|---|---|
Uzak paylaşılan klasör: Örnekler: \\myserver\share\* veya \\myserver\share\folder\subfolder\* |
JSON'da: \\\\myserver\\share Kullanıcı arabiriminde: \\myserver\share |
JSON'da: .\\ veya folder\\subfolder Kullanıcı arabiriminde: .\ veya folder\subfolder |
Not
Kullanıcı arabirimi aracılığıyla yazarken, JSON aracılığıyla yaptığınız gibi kaçmak için çift ters eğik çizgi (\\
) girmeniz gerekmez, tek ters eğik çizgi belirtin.
Not
Yerel makineden dosya kopyalama, Azure Integration Runtime altında desteklenmez.
Şirket içinde barındırılan tümleştirme çalışma zamanı altında yerel makineye erişimi etkinleştirmek için buradan komut satırına bakın. Varsayılan olarak devre dışıdır.
Örnek:
{
"name": "FileLinkedService",
"properties": {
"type": "FileServer",
"typeProperties": {
"host": "<host>",
"userId": "<domain>\\<user>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"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.
- Avro biçimi
- İkili biçim
- Sınırlandırılmış metin biçimi
- Excel biçimi
- JSON biçimi
- ORC biçimi
- Parquet biçimi
- XML biçimi
Dosya sistemi için biçim tabanlı veri kümesindeki ayarlar altında location
aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | in veri kümesi altındaki type özelliği location FileServerLocation 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. Klasörü paylaşım için kullanıma sunabilmek için Windows veya Linux ortamınızda dosya paylaşımı konumunu ayarlamanız gerekir. | 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": "<File system linked service name>",
"type": "LinkedServiceReference"
},
"schema": [ < physical schema, optional, auto retrieved during authoring > ],
"typeProperties": {
"location": {
"type": "FileServerLocation",
"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ümde, dosya sistemi kaynağı ve havuzu tarafından desteklenen özelliklerin listesi sağlanır.
Kaynak olarak dosya sistemi
Azure Data Factory aşağıdaki dosya biçimlerini destekler. Biçim tabanlı ayarlar için her makaleye bakın.
- Avro biçimi
- İkili biçim
- Sınırlandırılmış metin biçimi
- Excel biçimi
- JSON biçimi
- ORC biçimi
- Parquet biçimi
- XML biçimi
Dosya sistemi için, biçim tabanlı kopyalama kaynağındaki ayarlar altında storeSettings
aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | altındaki storeSettings type özelliği FileServerReadSettings 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: sunucu tarafı filtresi - fileFilter |
OPTION 3 joker karakter filtresinden daha iyi performans sağlayan dosya sunucusu tarafı yerel filtresi. Sıfır veya daha fazla karakter eşleştirmek ve ? sıfır veya tek karakter eşleştirmek için kullanın* . Bu bölümün altındaki Açıklamalar'dan söz dizimi ve notlar hakkında daha fazla bilgi edinin. |
Hayır |
SEÇENEK 3: istemci tarafı filtresi - wildcardFolderPath |
Kaynak klasörleri filtrelemek için joker karakterler içeren klasör yolu. Bu tür bir filtre hizmet içinde gerçekleşir ve bu da verilen yol altındaki klasörleri/dosyaları numaralandırır ve joker karakter filtresini uygular. İ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: istemci tarafı filtresi - wildcardFileName |
Kaynak dosyaları filtrelemek için verilen folderPath/wildcardFolderPath altında joker karakterler içeren dosya adı. Bu tür bir filtre hizmet içinde gerçekleşir ve bu da verilen yol altındaki dosyaları numaralandırır ve joker karakter filtresini uygular. İ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 |
SEÇENEK 3: dosyaların 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 fileListPath bu ö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 her dosyaya göre yapılır. Bu, etkinlik başarısız olduğunda bazı dosyaların hedefe kopyalandığını ve kaynaktan silindiğini, diğerlerinin ise kaynak depoda kaldığını gördüğünüz anlamına gelir. 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 modifiedDatetimeEnd küçükse seçilir. Saat, UTC saat dilimine YYYY-MM-DDTHH:mm:ssZ biçiminde uygulanır. Özellikler NULL olabilir; başka bir deyişle veri kümesine 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çili olduğu 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çili olduğu anlamına gelir.Yapılandırdığınızda fileListPath bu özellik geçerli değildir. |
Hayır |
modifiedDatetimeEnd | modifiedDateTimeStart ile 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": "CopyFromFileSystem",
"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": "FileServerReadSettings",
"recursive": true,
"wildcardFolderPath": "myfolder*A",
"wildcardFileName": "*.csv"
}
},
"sink": {
"type": "<sink type>"
}
}
}
]
Havuz olarak dosya sistemi
Azure Data Factory aşağıdaki dosya biçimlerini destekler. Biçim tabanlı ayarlar için her makaleye bakın.
Not
MergeFiles copyBehavior seçeneği Synapse Analytics işlem hatlarında değil yalnızca Azure Data Factory işlem hatlarında kullanılabilir.
Dosya sistemi için, biçim tabanlı kopyalama havuzundaki ayarlar altında storeSettings
aşağıdaki özellikler desteklenir:
Özellik | Açıklama | Gerekli |
---|---|---|
Tür | altındaki storeSettings type özelliği FileServerWriteSettings 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": "CopyToFileSystem",
"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": "FileServerWriteSettings",
"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 | İşlem hattı yapılandırması |
---|---|---|
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, aynı veri deposundaki bir metin dosyasını gösterir. Kopyalamak istediğiniz dosyaların listesini içerir. Her satır, veri kümesinde yapılandırılan kök yolu temel alarak dosyanın göreli yolunu içerir. |
ö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ği'ne bakın .
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. İ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 ^ . Örnekler: kök klasör/alt klasör/, Örnek bağlı hizmet ve veri kümesi tanımları ile Klasör ve dosya filtresi örnekleri makalesindeki diğer örneklere bakın. |
Hayır |
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 modifiedDatetimeEnd küçükse seçilir. Saat, UTC saat dilimine YYYY-MM-DDTHH:mm:ssZ biçiminde uygulanır. Çok büyük miktarlardaki dosyalardan dosya filtresi uygulamak istediğinizde bu ayarı etkinleştirerek veri taşımanın genel performansının etkilendiğini unutmayın. Özellikler NULL olabilir; başka bir deyişle veri kümesine 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çili olduğu 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çili olduğu 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 modifiedDatetimeEnd küçükse seçilir. Saat UTC saat dilimine "2018-12-01T05:00:00Z" biçiminde uygulanır. Çok büyük miktarlardaki dosyalardan dosya filtresi uygulamak istediğinizde bu ayarı etkinleştirerek veri taşımanın genel performansının etkilendiğini unutmayın. Özellikler NULL olabilir; başka bir deyişle veri kümesine 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çili olduğu 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çili olduğu 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": "FileSystemDataset",
"properties": {
"type": "FileShare",
"linkedServiceName":{
"referenceName": "<file system 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 kopyalanamaz/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": "CopyFromFileSystem",
"type": "Copy",
"inputs": [
{
"referenceName": "<file system 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 dosya adları otomatik olarak oluşturulur. - MergeFiles: Kaynak klasördeki tüm dosyaları bir dosyayla birleştirir. Birleştirme sırasında yinelenen kaydı kaldırma işlemi yapılmaz. 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": "CopyToFileSystem",
"type": "Copy",
"inputs": [
{
"referenceName": "<input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<file system output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "<source type>"
},
"sink": {
"type": "FileSystemSink",
"copyBehavior": "PreserveHierarchy"
}
}
}
]
İlgili içerik
Kopyalama etkinliği tarafından kaynak ve havuz olarak desteklenen veri depolarının listesi için bkz . desteklenen veri depoları.