Menyalin data dari atau ke sistem file menggunakan Azure Data Factory atau Azure Synapse Analytics
BERLAKU UNTUK: Azure Data Factory Azure Synapse Analytics
Tip
Cobalah Data Factory di Microsoft Fabric, solusi analitik all-in-one untuk perusahaan. Microsoft Fabric mencakup semuanya mulai dari pergerakan data hingga ilmu data, analitik real time, kecerdasan bisnis, dan pelaporan. Pelajari cara memulai uji coba baru secara gratis!
Artikel ini menguraikan cara menyalin data ke dan dari sistem file. Untuk mempelajari lebih lanjut, baca artikel pengantar untuk Azure Data Factory atau Azure Synapse Analytics.
Kemampuan yang didukung
Konektor sistem file ini didukung untuk kemampuan berikut:
Kemampuan yang didukung | IR |
---|---|
Salin aktivitas (sumber/sink) | (1) (2) |
Aktivitas pencarian | (1) (2) |
Aktivitas GetMetadata | (1) (2) |
Aktivitas penghapusan | (1) (2) |
① Runtime integrasi Azure ② Runtime integrasi yang dihost sendiri
Secara khusus, konektor sistem file ini mendukung:
- Menyalin file dari/ke berbagi file jaringan. Untuk menggunakan berbagi file Linux, pasang Samba di server Linux Anda.
- Menyalin file dengan menggunakan autentikasi Windows.
- Menyalin file sebagaimana adanya atau memilah/membuat file menggunakan format file yang didukung dan codec pemadatan.
Prasyarat
Jika penyimpanan data Anda terletak di dalam jaringan lokal, jaringan virtual Azure, atau Amazon Virtual Private Cloud, Anda harus mengonfigurasi runtime integrasi yang dihosting sendiri untuk menghubungkannya.
Jika penyimpanan data Anda adalah layanan data cloud terkelola, Anda dapat menggunakan Azure Integration Runtime. Jika akses dibatasi untuk IP yang disetujui dalam aturan firewall, Anda dapat menambahkan IP Azure Integration Runtime ke daftar izinkan.
Anda juga dapat menggunakan fitur runtime integrasi jaringan virtual terkelola di Azure Data Factory untuk mengakses jaringan lokal tanpa menginstal dan mengonfigurasi runtime integrasi yang dihosting sendiri.
Untuk informasi selengkapnya tentang mekanisme dan opsi keamanan jaringan yang didukung oleh Data Factory, lihat Strategi akses data.
Memulai
Untuk melakukan aktivitas Salin dengan alur, Anda dapat menggunakan salah satu alat atau SDK berikut:
- Alat Penyalinan Data
- Portal Microsoft Azure
- SDK .NET
- SDK Python
- Azure PowerShell
- REST API
- Templat Azure Resource Manager
Membuat layanan tertaut sistem file menggunakan antarmuka pengguna
Gunakan langkah-langkah berikut untuk membuat layanan tertaut sistem {i>file
Telusuri ke tab Kelola di ruang kerja Azure Data Factory atau Synapse Anda dan pilih Layanan Tertaut, lalu pilih Baru:
Cari {i>file
Konfigurasikan detail layanan, uji koneksi, dan buat layanan tertaut baru.
Detail konfigurasi konektor
Bagian berikut ini menyediakan detail tentang properti yang digunakan untuk menentukan entitas alur Data Factory dan Synapse khusus untuk sistem file.
Properti layanan tertaut
Properti berikut didukung untuk layanan tertaut sistem file:
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis harus diatur ke: FileServer. | Ya |
tuan rumah | Menentukan alur akar folder yang ingin Anda salin. Gunakan karakter escape "" untuk karakter khusus dalam string. Lihat Sampel layanan tertaut dan definisi himpunan data untuk contohnya. | Ya |
userId | Tentukan ID pengguna yang memiliki akses ke server. | Ya |
kata sandi | Tentukan kata sandi untuk pengguna (userId). Tandai bidang ini sebagai SecureString untuk menyimpannya dengan aman, atau mereferensikan rahasia yang disimpan di Azure Key Vault. | Ya |
connectVia | Runtime integrasi yang akan digunakan untuk menyambungkan ke penyimpanan data. Pelajari selengkapnya dari bagian Prasyarat. Jika tidak ditentukan, Azure Integration Runtime default akan digunakan. | No |
Sampel layanan tertaut dan definisi himpunan data
Skenario | "host" dalam definisi layanan tertaut | folderPath dalam definisi himpunan data |
---|---|---|
Folder berbagi jarak jauh: Contoh: \\myserver\share\* atau \\myserver\share\folder\subfolder\* |
Dalam JSON: \\\\myserver\\share Pada antarmuka pengguna: \\myserver\share |
Dalam JSON: .\\ atau folder\\subfolder Pada antarmuka pengguna: .\ atau folder\subfolder |
Catatan
Saat penulisan melalui UI, Anda tidak perlu memasukkan garis miring terbalik ganda (\\
) untuk keluar seperti yang Anda lakukan melalui JSON, namun gunakan garis miring terbalik tunggal.
Catatan
Menyalin file dari komputer lokal tidak didukung di bawah Azure Integration Runtime.
Lihat baris perintah dari sini untuk mengaktifkan akses ke komputer lokal di bawah Runtime integrasi yang dihost sendiri. Secara default, fitur ini dinonaktifkan.
Contoh:
{
"name": "FileLinkedService",
"properties": {
"type": "FileServer",
"typeProperties": {
"host": "<host>",
"userId": "<domain>\\<user>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Properti himpunan data
Untuk daftar lengkap bagian dan properti yang tersedia untuk menentukan himpunan data, lihat artikel Himpunan Data.
Azure Data Factory mendukung jenis format file berikut. Lihat setiap artikel untuk mengetahui cara melakukan pengaturan berbasis format.
- Format Avro
- Format Biner
- Format teks terpisah
- Format Excel
- Format JSON
- Format ORC
- Format Parquet
- Format XML
Properti berikut ini didukung untuk sistem file di bawah pengaturan location
dalam himpunan data berbasis format:
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis di bawah location dalam himpunan data harus diatur ke FileServerLocation. |
Ya |
folderPath | Jalur ke folder. Jika Anda ingin menggunakan kartubebas untuk memfilter folder, lompati pengaturan ini dan tentukan dalam pengaturan sumber aktivitas. Anda perlu menyiapkan lokasi berbagi file di lingkungan Windows atau Linux Anda untuk mengekspos folder untuk berbagi. | No |
fileName | Nama file di folderPath yang diberikan. Jika Anda ingin menggunakan kartubebas untuk memfilter file, lewati pengaturan ini dan tentukan dalam pengaturan sumber aktivitas. | No |
Contoh:
{
"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"
}
}
}
Properti aktivitas salin
Untuk daftar lengkap bagian dan properti yang tersedia untuk menentukan aktivitas, lihat artikel Alur. Bagian ini menyediakan daftar properti yang didukung oleh sumber sistem dan sink.
Sistem file sebagai sumber
Azure Data Factory mendukung jenis format file berikut. Lihat setiap artikel untuk mengetahui cara melakukan pengaturan berbasis format.
- Format Avro
- Format Biner
- Format teks terpisah
- Format Excel
- Format JSON
- Format ORC
- Format Parquet
- Format XML
Properti berikut ini didukung untuk sistem file di bawah pengaturan storeSettings
dalam sumber salinan berbasis format:
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis di bawah storeSettings harus diatur ke FileServerReadSettings. |
Ya |
Menemukan file yang akan disalin: | ||
OPSI 1: jalur statik |
Salin dari jalur folder/file yang diberikan dan ditentukan dalam himpunan data. Jika Anda ingin menyalin semua file dari folder, tentukan juga wildcardFileName sebagai * . |
|
OPSI 2: filter sisi server - fileFilter |
Filter asli sisi server file, yang memberikan performa yang lebih baik daripada filter kartubebas OPSI 3. Gunakan * untuk mencocokkan nol karakter atau lebih dan ? untuk mencocokkan nol atau satu karakter. Pelajari selengkapnya tentang sintaksis dan catatan dari Keterangan di bawah bagian ini. |
No |
OPSI 3: filter sisi klien - wildcardFolderPath |
Jalur folder dengan karakter kartubebas untuk memfilter folder sumber. Filter tersebut terjadi dalam layanan, yang menghitung folder/file di bawah jalur yang diberikan kemudian menerapkan filter kartubebas. Kartubebas yang diizinkan adalah: * (cocok dengan nol karakter atau lebih) dan ? (cocok dengan nol atau satu karakter); gunakan ^ untuk karakter escape jika nama folder Anda yang sebenarnya memiliki karakter kartubebas atau karakter escape ini di dalamnya. Lihat contoh lainnya dalam Contoh filter folder dan file. |
No |
OPSI 3: filter sisi klien - wildcardFileName |
Nama file dengan karakter kartubebas di bawah folderPath/wildcardFolderPath yang diberikan untuk memfilter file sumber. Filter tersebut terjadi dalam layanan, yang menghitung file di jalur yang diberikan kemudian menerapkan filter kartubebas. Kartubebas yang diizinkan adalah: * (cocok dengan nol karakter atau lebih) dan ? (cocok dengan nol atau satu karakter); gunakan ^ untuk karakter escape jika nama file Anda yang sebenarnya memiliki karakter kartubebas atau karakter escape ini di dalamnya.Lihat contoh lainnya dalam Contoh filter folder dan file. |
Ya |
OPSI 3: daftar file - fileListPath |
Mengindikasikan untuk menyalin set file yang diberikan. Arahkan ke file teks yang menyertakan daftar file yang ingin Anda salin, satu file per baris, yang merupakan jalur relatif ke jalur yang dikonfigurasi dalam himpunan data. Saat menggunakan opsi ini, jangan tentukan nama file dalam himpunan data. Lihat contoh lainnya dalam Contoh daftar file. |
No |
Pengaturan tambahan: | ||
recursive | Menunjukkan apakah data dibaca secara rekursif dari subfolder atau hanya dari folder yang ditentukan. Ketika rekursif diatur menjadi true dan sink-nya adalah penyimpanan berbasis file, folder atau subfolder kosong tidak disalin atau dibuat di sink. Nilai yang diizinkan adalah true (default) dan false. Properti ini tidak berlaku saat Anda mengonfigurasi fileListPath . |
No |
deleteFilesAfterCompletion | Menunjukkan apakah file biner dihapus dari penyimpanan sumber setelah berhasil berpindah ke penyimpanan tujuan. Penghapusan file adalah per file. Ini berarti bahwa ketika aktivitas gagal, Anda melihat beberapa file sudah disalin ke tujuan dan dihapus dari sumber, sementara yang lain masih tetap berada di penyimpanan sumber. Properti ini hanya valid dalam skenario penyalinan file biner. Nilai default: false. |
No |
modifiedDatetimeStart | Filter file berdasarkan atribut: Terakhir Diubah. File akan dipilih jika waktu modifikasi terakhir file tersebut besar dari atau sama dengan modifiedDatetimeStart dan kurang dari modifiedDatetimeEnd . Waktu diterapkan ke zona waktu UTC dalam format YYYY-MM-DDTHH:mm:ssZ. Properti dapat menjadi NULL, yang berarti tidak ada filter atribut file yang akan diterapkan ke himpunan data. Ketika modifiedDatetimeStart memiliki nilai tanggalwaktu tetapi modifiedDatetimeEnd null, itu berarti file yang atribut terakhir diubah lebih besar dari atau sama dengan nilai tanggalwaktu dipilih. Ketika modifiedDatetimeEnd memiliki nilai tanggalwaktu tetapi modifiedDatetimeStart null, itu berarti file yang atribut terakhir dimodifikasi kurang dari nilai tanggalwaktu dipilih.Properti ini tidak berlaku saat Anda mengonfigurasi fileListPath . |
No |
modifiedDatetimeEnd | Sama seperti modifiedDateTimeStart. | No |
enablePartitionDiscovery | Untuk file yang dipartisi, tentukan apakah akan mengurai partisi dari jalur file dan menambahkannya sebagai kolom sumber tambahan. Nilai yang diperbolehkan adalah false (default) dan true. |
No |
partitionRootPath | Ketika penemuan partisi diaktifkan, tentukan jalur akar absolut untuk membaca folder yang dipartisi sebagai kolom data. Jika tidak ditentukan, secara default, - Ketika Anda menggunakan jalur file dalam himpunan data atau daftar file pada sumber, jalur akar partisi adalah jalur yang dikonfigurasi dalam himpunan data. - Ketika Anda menggunakan filter folder kartubebas, jalur akar partisi adalah subpath sebelum wildcard pertama. Misalnya, dengan asumsi Anda mengonfigurasi jalur dalam himpunan data sebagai "root/folder/year=2020/month=08/day=27": - Jika Anda menentukan jalur akar partisi sebagai "root/folder/year=2020", aktivitas salin menghasilkan dua kolom month lagi dan day dengan nilai "08" dan "27" masing-masing, selain kolom di dalam file.- Jika jalur akar partisi tidak ditentukan, tidak ada kolom tambahan yang dihasilkan. |
No |
maxConcurrentConnections | Batas atas koneksi bersamaan yang ditetapkan ke penyimpanan data selama eksekusi aktivitas. Menentukan nilai hanya saat Anda ingin membatasi koneksi bersamaan. | No |
Contoh:
"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>"
}
}
}
]
Sistem file sebagai sink
Azure Data Factory mendukung jenis format file berikut. Lihat setiap artikel untuk mengetahui cara melakukan pengaturan berbasis format.
Catatan
Opsi MergeFiles copyBehavior hanya tersedia di alur Azure Data Factory dan bukan alur Synapse Analytics.
Properti berikut ini didukung untuk sistem file di bawah pengaturan storeSettings
dalam sink penyalinan berbasis format:
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis di bawah storeSettings harus diatur ke FileServerWriteSettings. |
Ya |
copyBehavior | Menentukan perilaku salin saat sumber berupa file dari penyimpanan data berbasis file. Nilai yang diperbolehkan adalah: - (default) PreserveHierarchy: Mempertahankan hierarki file di folder target. Jalur relatif file sumber ke folder sumber identik dengan jalur relatif file target ke folder target. - FlattenHierarchy: Semua file dari folder sumber berada di tingkat pertama folder target. File target memiliki nama yang ditulis secara otomatis. - MergeFiles: Menggabungkan semua file dari folder sumber dalam satu file. Jika nama file ditentukan, nama file yang digabungkan adalah nama yang ditentukan. Jika tidak, nama tersebut adalah nama file yang ditulis secara otomatis. |
No |
maxConcurrentConnections | Batas atas koneksi bersamaan yang ditetapkan ke penyimpanan data selama eksekusi aktivitas. Menentukan nilai hanya saat Anda ingin membatasi koneksi bersamaan. | No |
Contoh:
"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"
}
}
}
}
]
Contoh filter folder dan file
Bagian ini menjelaskan perilaku yang dihasilkan dari jalur folder dan nama file dengan filter kartubebas.
folderPath | fileName | recursive | Struktur folder sumber dan hasil filter (file dalam huruf tebal diambil) |
---|---|---|---|
Folder* |
(kosong, gunakan default) | salah | FolderA File1.csv File2.json Subfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Folder* |
(kosong, gunakan default) | benar | FolderA File1.csv File2.json Subfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Folder* |
*.csv |
salah | FolderA File1.csv File2.json Subfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Folder* |
*.csv |
benar | FolderA File1.csv File2.json Subfolder1 File3.csv File4.json File5.csv AnotherFolderB File6.csv |
Contoh daftar file
Bagian ini menjelaskan perilaku yang dihasilkan dari penggunaan jalur daftar file di sumber aktivitas salin.
Dengan asumsi Anda memiliki struktur folder sumber berikut dan ingin menyalin file dengan bold:
Struktur sumber sampel | Konten dalam FileListToCopy.txt | Konfigurasi alur |
---|---|---|
akar FolderA File1.csv File2.json Subfolder1 File3.csv File4.json File5.csv Metadata FileListToCopy.txt |
File1.csv Subfolder1/File3.csv Subfolder1/File5.csv |
Dalam himpunan data: - Jalur folder: root/FolderA Di sumber aktivitas salin: - Jalur daftar file: root/Metadata/FileListToCopy.txt Jalur daftar file menunjuk ke file teks di penyimpanan data yang sama. Ini termasuk daftar file yang ingin Anda salin. Setiap baris berisi jalur relatif ke file berdasarkan jalur akar yang dikonfigurasi dalam himpunan data. |
contoh berulang dan copyBehavior
Bagian ini menjelaskan perilaku yang dihasilkan dari operasi Salin untuk kombinasi yang berbeda dari nilai rekursif dan copyBehavior.
recursive | copyBehavior | Struktur folder sumber | Target yang dihasilkan |
---|---|---|---|
benar | preserveHierarchy | Folder1 File1 File2 Subfolder1 File3 File4 File5 |
Folder target Folder1 dibuat dengan struktur yang sama dengan sumbernya: Folder1 File1 File2 Subfolder1 File3 File4 File5. |
benar | flattenHierarchy | Folder1 File1 File2 Subfolder1 File3 File4 File5 |
Target Folder1 dibuat dengan struktur berikut: Folder1 nama yang ditulis secara otomatis untuk File1 nama yang ditulis secara otomatis untuk File2 nama yang ditulis secara otomatis untuk File3 nama yang ditulis secara otomatis untuk File4 nama yang ditulis secara otomatis untuk File5 |
benar | mergeFiles | Folder1 File1 File2 Subfolder1 File3 File4 File5 |
Target Folder1 dibuat dengan struktur berikut: Folder1 konten File1 + File2 + File3 + File4 + File 5 digabungkan ke dalam satu file, dengan nama file yang ditulis secara otomatis |
salah | preserveHierarchy | Folder1 File1 File2 Subfolder1 File3 File4 File5 |
Folder target Folder1 dibuat dengan struktur berikut Folder1 File1 File2 Subfolder1 dengan File3, File4, dan File5 tidak diambil. |
salah | flattenHierarchy | Folder1 File1 File2 Subfolder1 File3 File4 File5 |
Folder target Folder1 dibuat dengan struktur berikut Folder1 nama yang ditulis secara otomatis untuk File1 nama yang ditulis secara otomatis untuk File2 Subfolder1 dengan File3, File4, dan File5 tidak diambil. |
salah | mergeFiles | Folder1 File1 File2 Subfolder1 File3 File4 File5 |
Folder target Folder1 dibuat dengan struktur berikut Folder1 konten File1 + File2 digabungkan ke dalam satu file, dengan nama file yang ditulis secara otomatis. nama yang ditulis secara otomatis untuk File1 Subfolder1 dengan File3, File4, dan File5 tidak diambil. |
Properti aktivitas pencarian
Untuk mempelajari detail tentang properti, lihat Aktivitas pencarian.
Properti aktivitas GetMetadata
Untuk mempelajari detail tentang properti ini, lihat aktivitas GetMetadata.
Properti aktivitas penghapusan
Untuk mempelajari detail tentang properti ini, lihat Aktivitas penghapusan.
Model warisan
Catatan
Model berikut ini masih didukung apa adanya untuk kompatibilitas mundur. Anda disarankan untuk selanjutnya menggunakan model baru yang disebutkan di bagian di sebelumnya, dan antarmuka pengguna penulisan telah beralih untuk menghasilkan model baru.
Model himpunan data warisan
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis himpunan data harus diatur menjadi: FileShare | Ya |
folderPath | Alur ke folder. Filter kartubebas didukung. Kartubebas yang diizinkan adalah: * (cocok dengan nol karakter atau lebih) dan ? (cocok dengan nol atau satu karakter); gunakan ^ untuk karakter escape jika nama folder Anda yang sebenarnya memiliki karakter kartubebas atau karakter escape ini di dalamnya. Contoh: rootfolder/subfolder/, lihat contoh lainnya dalam Contoh layanan tertaut dan definisi himpunan data dan Contoh filter folder dan file. |
No |
fileName | Nama atau filter kartubebas untuk file di bawah "folderPath" yang ditentukan. Jika Anda tidak menentukan nilai untuk properti ini, himpunan data akan menunjuk ke semua file dalam folder. Kartubebas yang diperbolehkan untuk filter adalah * (cocok dengan nol karakter atau lebih) dan ? (cocok dengan nol atau satu karakter).- Contoh 1: "fileName": "*.csv" - Contoh 2: "fileName": "???20180427.txt" Gunakan ^ untuk escape jika nama file Anda yang sebenarnya memiliki kartubebas atau karakter escape ini di dalamnya.Ketika fileName tidak ditentukan untuk himpunan data output dan preserveHierarchy tidak ditentukan dalam sink aktivitas, aktivitas salin secara otomatis menghasilkan nama file dengan pola berikut: "Data.[ activity run ID GUID]. [GUID if FlattenHierarchy]. [format if configured]. [compression if configured]", misalnya "Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt.gz"; jika Anda menyalin dari sumber tabular menggunakan nama tabel alih-alih kueri, pola nama adalah "[table.name].[ format]. [compression if configured]", misalnya "MyTable.csv". |
No |
modifiedDatetimeStart | Filter file berdasarkan atribut: Terakhir Diubah. File akan dipilih jika waktu modifikasi terakhir file tersebut besar dari atau sama dengan modifiedDatetimeStart dan kurang dari modifiedDatetimeEnd . Waktu diterapkan ke zona waktu UTC dalam format YYYY-MM-DDTHH:mm:ssZ. Ketahui performa keseluruhan pergerakan data terpengaruh dengan mengaktifkan pengaturan ini ketika Anda ingin melakukan filter file dari sejumlah besar file. Properti dapat menjadi NULL, yang berarti tidak ada filter atribut file yang akan diterapkan ke himpunan data. Ketika modifiedDatetimeStart memiliki nilai tanggalwaktu tetapi modifiedDatetimeEnd null, itu berarti file yang atribut terakhir diubah lebih besar dari atau sama dengan nilai tanggalwaktu dipilih. Ketika modifiedDatetimeEnd memiliki nilai tanggalwaktu tetapi modifiedDatetimeStart null, itu berarti file yang atribut terakhir dimodifikasi kurang dari nilai tanggalwaktu dipilih. |
No |
modifiedDatetimeEnd | Filter file berdasarkan atribut: Terakhir Diubah. File akan dipilih jika waktu modifikasi terakhir file tersebut besar dari atau sama dengan modifiedDatetimeStart dan kurang dari modifiedDatetimeEnd . Waktu diterapkan ke zona waktu UTC dalam format "2018-12-01T05:00:00Z". Ketahui performa keseluruhan pergerakan data terpengaruh dengan mengaktifkan pengaturan ini ketika Anda ingin melakukan filter file dari sejumlah besar file. Properti dapat menjadi NULL, yang berarti tidak ada filter atribut file yang akan diterapkan ke himpunan data. Ketika modifiedDatetimeStart memiliki nilai tanggalwaktu tetapi modifiedDatetimeEnd null, itu berarti file yang atribut terakhir diubah lebih besar dari atau sama dengan nilai tanggalwaktu dipilih. Ketika modifiedDatetimeEnd memiliki nilai tanggalwaktu tetapi modifiedDatetimeStart null, itu berarti file yang atribut terakhir dimodifikasi kurang dari nilai tanggalwaktu dipilih. |
No |
format | Jika Anda ingin menyalin file apa adanya antara penyimpanan berbasis file (salinan biner), lewati bagian format dalam himpunan data input dan output. Jika Anda ingin memilah atau membuat file dengan format tertentu, jenis format file berikut didukung: TextFormat, JsonFormat, AvroFormat, OrcFormat, ParquetFormat. Atur properti jenis berdasarkan format ke salah satu nilai ini. Untuk informasi selengkapnya, lihat Bagian Format Teks, Format Json, Format Avro, Format Orc, dan Format Parquet. |
Tidak (hanya untuk skenario salinan biner) |
kompresi | Tentukan jenis dan tingkat kompresi untuk data. Untuk informasi selengkapnya, lihat Format file yang didukung dan kodek pemadatan. Jenis yang didukung adalah: GZip, Deflate, BZip2, dan ZipDeflate. Tingkat yang didukung adalah: Optimal dan Tercepat. |
No |
Tip
Untuk menyalin semua file di sebuah folder, tentukan folderPath saja.
Untuk menyalin satu file dengan nama tertentu, tentukan folderPath dengan bagian folder dan fileName dengan nama file.
Untuk menyalin subset file di sebuah folder, tentukan folderPath dengan bagian folder dan fileName dengan filter karakter kartubebas.
Catatan
Jika Anda menggunakan properti "fileFilter" untuk filter file, properti masih didukung apa adanya, sementara Anda disarankan untuk menggunakan kemampuan filter baru yang ditambahkan ke "fileName" untuk selanjutnya.
Contoh:
{
"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"
}
}
}
}
Model sumber aktivitas salin warisan
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis sumber aktivitas salin harus diatur ke: FileSystemSource | Ya |
recursive | Menunjukkan apakah data dibaca secara rekursif dari subfolder atau hanya dari folder yang ditentukan. Perhatikan ketika rekursif diatur ke true dan sink adalah penyimpanan berbasis file, folder/sub-folder kosong tidak disalin/dibuat di sink. Nilai yang diperbolehkan adalah: true (default) dan false |
No |
maxConcurrentConnections | Batas atas koneksi bersamaan yang ditetapkan ke penyimpanan data selama eksekusi aktivitas. Menentukan nilai hanya saat Anda ingin membatasi koneksi bersamaan. | No |
Contoh:
"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>"
}
}
}
]
Model sink aktivitas salin warisan
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis sink aktivitas salin harus diatur ke FileSystemSink | Ya |
copyBehavior | Menentukan perilaku salin saat sumber berupa file dari penyimpanan data berbasis file. Nilai yang diperbolehkan adalah: - (default) PreserveHierarchy: Mempertahankan hierarki file di folder target. Jalur relatif file sumber ke folder sumber identik dengan jalur relatif file target ke folder target. - FlattenHierarchy: semua file dari folder sumber berada di tingkat pertama folder target. Nama file target dibuat secara otomatis. - MergeFiles: Menggabungkan semua file dari folder sumber dalam satu file. Tidak ada deduplikasi rekaman yang dilakukan selama penggabungan. Jika Nama File ditentukan, nama file yang digabungkan akan menjadi nama yang ditentukan; jika tidak, akan berupa nama file yang dibuat secara otomatis. |
No |
maxConcurrentConnections | Batas atas koneksi bersamaan yang ditetapkan ke penyimpanan data selama eksekusi aktivitas. Menentukan nilai hanya saat Anda ingin membatasi koneksi bersamaan. | No |
Contoh:
"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"
}
}
}
]
Konten terkait
Untuk daftar penyimpanan data yang didukung sebagai sumber dan sink oleh aktivitas salin, lihat penyimpanan data yang didukung.