Format Avro di Azure Data Factory dan 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!
Ikuti artikel ini saat Anda ingin mengurai file Avro atau menulis data ke dalam format Avro.
Format Avro didukung untuk konektor berikut: Amazon S3, Penyimpanan Kompatibel Amazon S3, Azure Blob, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2, Azure Files, File System, FTP, Google Cloud Storage, HDFS, HTTP, Oracle Cloud Storage, dan SFTP.
Properti himpunan data
Untuk daftar lengkap bagian dan properti yang tersedia untuk menentukan himpunan data, lihat artikel Himpunan Data. Bagian ini menyediakan daftar properti yang didukung oleh himpunan data Avro.
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis himpunan data harus diatur ke Avro. | Ya |
lokasi | Pengaturan lokasi file. Tiap konektor berbasis file memiliki jenis lokasinya sendiri dan properti yang didukung di location . Lihat detail di artikel konektor -> Bagian properti himpunan data. |
Ya |
avroCompressionCodec | Codec pemadatan yang digunakan saat menulis ke file Avro. Saat membaca dari file Avro, layanan akan secara otomatis menentukan kodek pemadatan berdasarkan metadata file. Jenis yang didukung adalah "none" (default), "deflate", "snappy". Perhatikan bahwa saat ini aktivitas Salin tidak mendukung Snappy ketika membaca/menulis file Avro. |
No |
Catatan
Spasi kosong dalam nama kolom tidak didukung untuk file Avro.
Di bawah ini adalah contoh himpunan data Avro di Azure Blob Storage:
{
"name": "AvroDataset",
"properties": {
"type": "Avro",
"linkedServiceName": {
"referenceName": "<Azure Blob Storage linked service name>",
"type": "LinkedServiceReference"
},
"schema": [ < physical schema, optional, retrievable during authoring > ],
"typeProperties": {
"location": {
"type": "AzureBlobStorageLocation",
"container": "containername",
"folderPath": "folder/subfolder",
},
"avroCompressionCodec": "snappy"
}
}
}
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 dan sink Avro.
Avro sebagai sumber
Properti berikut didukung di bagian *sumber* aktivitas salin.
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis dari sumber aktivitas salin harus diatur ke AvroSource. | Ya |
storeSettings | Grup berbagai properti tentang cara membaca data dari penyimpanan data. Setiap konektor berbasis file memiliki pengaturan baca yang didukung sendiri di bagian storeSettings . Lihat detail di artikel konektor -> Bagian properti aktivitas salin. |
No |
Avro sebagai sink
Properti berikut ini didukung di bagian sink aktivitas salin.
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Properti jenis dari sumber aktivitas salin harus diatur ke AvroSink. | Ya |
formatSettings | Grup properti. Lihat tabel pengaturan penulisan Avro di bawah ini. | No |
storeSettings | Grup properti tentang cara menulis data ke penyimpanan data. Setiap konektor berbasis file memiliki pengaturan tulis tersendiri yang didukung pada storeSettings . Lihat detail di artikel konektor -> Bagian properti aktivitas salin. |
No |
Pengaturan tulis Avro yang didukung di formatSettings
:
Properti | Deskripsi | Wajib |
---|---|---|
jenis | Jenis formatSettings harus diatur ke AvroWriteSettings. | Ya |
maxRowsPerFile | Saat menulis data ke dalam folder, Anda dapat memilih untuk menulis ke beberapa file dan menentukan baris maksimal per file. | No |
fileNamePrefix | Berlaku ketika maxRowsPerFile dikonfigurasi.Menentukan awalan nama file saat menulis data ke beberapa file, menghasilkan pola ini: <fileNamePrefix>_00000.<fileExtension> . Jika tidak ditentukan, awalan nama file akan dibuat secara otomatis. Properti ini tidak berlaku ketika sumber adalah penyimpanan berbasis file atau penyimpanan data dengan dukungan opsi partisi. |
No |
Properti pemetaan aliran data
Dalam memetakan aliran data, Anda dapat membaca dan menulis ke format avro di penyimpanan data berikut: Azure Blob Storage, Azure Data Lake Storage Gen1 dan Azure Data Lake Storage Gen2 dan SFTP. Anda dapat membaca format avro di Amazon S3.
Properti sumber
Tabel di bawah ini mencantumkan properti yang didukung oleh sumber avro. Anda bisa mengedit properti ini di tab opsi Sumber.
Nama | Deskripsi | Wajib diisi | Nilai yang diizinkan | Properti skrip aliran data |
---|---|---|---|---|
Jalur wild card | Semua file yang cocok dengan jalur kartubebas akan diproses. Mengambil alih jalur folder dan file yang diatur dalam himpunan data. | no | Tali[] | wildcardPaths |
Jalur akar partisi | Untuk data file yang dipartisi, Anda dapat memasukkan jalur akar partisi untuk membaca folder yang dipartisi sebagai kolom | no | String | partitionRootPath |
Daftar file | Apakah sumber Anda mengarah ke file teks yang mencantumkan file untuk diproses | no | true atau false |
fileList |
Kolom untuk menyimpan nama file | Membuat kolom baru dengan jalur dan nama file sumber | no | String | rowUrlColumn |
Setelah selesai | Hapus atau pindahkan file setelah diproses. Jalur file dimulai dari akar kontainer | no | Hapus: true atau false Pindah: ['<from>', '<to>'] |
purgeFiles moveFiles |
Filter menurut terakhir diubah | Pilih untuk memfilter file berdasarkan waktu terakhir file tersebut diubah | no | Tanda Waktu | modifiedAfter modifiedBefore |
Izinkan file tidak ditemukan | Jika true, kesalahan tidak akan ditampilkan jika tidak ditemukan file | no | true atau false |
ignoreNoFilesFound |
Properti sink
Tabel di bawah ini mencantumkan properti yang didukung oleh sink avro. Anda dapat mengedit properti ini di tab Pengaturan.
Nama | Deskripsi | Wajib diisi | Nilai yang diizinkan | Properti skrip aliran data |
---|---|---|---|---|
Menghapus folder | Jika folder tujuan dibersihkan sebelum menulis | no | true atau false |
Memotong |
Opsi nama file | Format penamaan data yang ditulis. Secara default, satu file per partisi dalam format part-#####-tid-<guid> |
no | Pola: String Per partisi: String[] Sebagai data dalam kolom: String Output ke satu file: ['<fileName>'] |
filePattern partitionFileNames rowUrlColumn partitionFileNames |
Kutip semua | Menyertakan semua nilai dalam kuotasi | no | true atau false |
quoteAll |
Dukungan jenis data
Salin aktivitas
Jenis data kompleks Avro tidak didukung (record, enum, array, map, union, and fixed) di Aktivitas Salin.
Aliran data
Saat bekerja dengan file Avro dalam aliran data, Anda dapat membaca dan menulis jenis data yang kompleks, tetapi pastikan untuk menghapus skema fisik dari himpunan data terlebih dahulu. Dalam aliran data, Anda dapat mengatur proyeksi logis dan menurunkan kolom yang merupakan struktur kompleks, lalu memetakan bidang tersebut secara otomatis ke file Avro.