Dapatkan aktivitas Metadata di 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!

Anda bisa menggunakan aktivitas Dapatkan Metadata untuk mengambil metadata dari data apa pun di Azure Data Factory atau alur Synapse. Anda dapat menggunakan output dari aktivitas Dapatkan Metadata dalam ungkapan bersyarat untuk melakukan validasi, atau menggunakan metadata dalam aktivitas berikutnya.

Membuat aktivitas Get Metadata dengan UI

Untuk menggunakan aktivitas Get Metadata dalam alur, selesaikan langkah-langkah berikut:

  1. Cari Get Metadata di panel Aktivitas alur, dan tarik aktivitas Fail ke kanvas alur.

  2. Pilih aktivitas Dapatkan Metadata baru di kanvas jika belum dipilih, dan tab Pengaturan,untuk mengedit detailnya.

  3. Pilih himpunan data, atau buat yang baru dengan tombol Baru. Kemudian Anda dapat menentukan opsi filter dan menambahkan kolom dari metadata yang tersedia untuk himpunan data.

    Shows the UI for a Get Metadata activity.

  4. Gunakan output aktivitas sebagai input ke aktivitas lain, seperti aktivitas Switch dalam contoh ini. Anda dapat mereferensikan output Aktivitas Metadata di mana saja konten dinamis didukung dalam aktivitas lain.

    Shows the pipeline with a Switch activity added to handle the output of the Get Metadata activity.

  5. Di editor konten dinamis, pilih output aktivitas Get Metadata untuk mereferensikannya di aktivitas lain.

    Shows the dynamic content editor with the output of the Get Metadata activity as the dynamic content.

Kemampuan yang didukung

Aktivitas Dapatkan Metadata mengambil himpunan data sebagai input dan mengembalikan informasi metadata sebagai output. Saat ini, konektor berikut dan metadata yang dapat diambil terkait didukung. Ukuran maksimum metadata yang dikembalikan adalah 4 MB.

Konektor yang didukung

Penyimpanan file

Konektor/Metadata itemName
(file/folder)
itemType
(file/folder)
size
(file)
Dibuat
(file/folder)
lastModified1
(file/folder)
childItems
(folder)
contentMD5
(file)
structure2
(file)
columnCount2
(file)
ada3
(file/folder)
Amazon S3 √/√ √/√ x/x √/√ x √/√
Penyimpanan yang Kompatibel dengan Amazon S3 √/√ √/√ x/x √/√ x √/√
Penyimpanan Cloud Google √/√ √/√ x/x √/√ x √/√
Penyimpanan Cloud Oracle √/√ √/√ x/x √/√ x √/√
Azure Blob Storage √/√ √/√ x/x √/√ √/√
Azure Data Lake Storage Gen1 √/√ √/√ x/x √/√ x √/√
Azure Data Lake Storage Gen2 √/√ √/√ x/x √/√ √/√
Azure Files √/√ √/√ √/√ √/√ x √/√
Microsoft Fabric Lakehouse √/√ √/√ x/x √/√ √/√
Sistem file √/√ √/√ √/√ √/√ x √/√
SFTP √/√ √/√ x/x √/√ x √/√
FTP √/√ √/√ x/x x/x x √/√

1 Metadata lastModified:

  • Untuk Amazon S3, Penyimpanan Kompatibel Amazon S3, Penyimpanan Cloud Google, dan Penyimpanan Cloud Oracle, lastModified berlaku untuk wadah dan kunci tetapi tidak ke folder virtual, dan exists berlaku untuk wadah serta kunci tetapi tidak ke awalan atau folder virtual.
  • Untuk Azure Blob Storage, lastModified berlaku untuk kontainer dan blob tetapi tidak ke folder virtual.

2 Metadata structure dan columnCount tidak didukung saat mendapatkan metadata dari file Binary, JSON, atau XML.

3 Metadata exists : Untuk Amazon S3, Penyimpanan Kompatibel Amazon S3, Penyimpanan Cloud Google, dan Penyimpanan Cloud Oracle, exists berlaku untuk wadah serta kunci tetapi tidak ke awalan atau folder virtual.

Berikut hal-hal yang perlu diketahui:

  • Saat menggunakan aktivitas Dapatkan Metadata terhadap folder, pastikan Anda memiliki izin DAFTAR/EKSEKUSI ke folder yang diberikan.

  • Filter kartubebas pada folder/file tidak didukung untuk aktivitas Dapatkan Metadata.

  • Filter modifiedDatetimeStart dan modifiedDatetimeEnd diatur pada konektor:

    • Kedua properti ini digunakan untuk memfilter item anak saat mendapatkan metadata dari folder. Ini tidak berlaku saat mendapatkan metadata dari file.
    • Ketika filter tersebut digunakan, childItems pada output hanya mencakup file yang dimodifikasi dalam rentang yang ditentukan tetapi bukan folder.
    • Untuk menerapkan filter tersebut, aktivitas GetMetadata akan menghitung semua file di folder yang ditentukan dan memeriksa waktu yang dimodifikasi. Hindari masuk ke folder dengan file yang besar meskipun jumlah file yang diharapkan memenuhi syarat kecil.

Database hubungan

Konektor/Metadata Struktur columnCount ada
Amazon RDS untuk SQL Server
Azure SQL Database
Instans Terkelola Azure SQL
Azure Synapse Analytics
SQL Server

Opsi metadata

Anda bisa menentukan tipe metadata berikut ini di daftar bidang aktivitas Dapatkan Metadata untuk mengambil informasi terkait:

Jenis metadata Deskripsi
itemName Nama file atau folder.
itemType Jenis file atau folder. Nilai yang dikembalikan adalah File atau Folder.
size Ukuran file, dalam byte. Hanya berlaku untuk file.
Dibuat Membuat tanggalwaktu file atau folder.
lastModified Tanggalwaktu file atau folder terakhir diubah.
childItems Daftar subfolder dan file di folder yang diberikan. Hanya berlaku untuk folder. Nilai yang dikembalikan adalah daftar nama dan jenis masing-masing item anak.
contentMD5 MD5 dari file. Hanya berlaku untuk file.
Struktur Struktur data file atau tabel database hubungan. Nilai yang dikembalikan adalah daftar nama kolom dan jenis kolom.
columnCount Jumlah kolom dalam file atau tabel hubungan.
ada Apakah ada file, folder, atau tabel. Jika exists ditentukan dalam daftar bidang Dapatkan Metadata, aktivitas tidak akan gagal meskipun file, folder, atau tabel tidak ada. Sebaliknya, exists: false dikembalikan dalam output.

Tip

Saat Anda ingin memvalidasi bahwa file, folder, atau tabel ada, tentukan exists di daftar bidang aktivitas Dapatkan Metadata. Anda kemudian dapat memeriksa hasil exists: true/false dalam output aktivitas. Jika exists tidak ditentukan dalam daftar bidang, aktivitas Dapatkan Metadata akan gagal jika objek tidak ditemukan.

Catatan

Saat Anda mendapatkan metadata dari penyimpanan file dan mengonfigurasi modifiedDatetimeStart atau modifiedDatetimeEnd, childItems dalam output hanya menyertakan file di jalur yang ditentukan yang memiliki waktu terakhir dimodifikasi dalam rentang yang ditentukan. Item dalam subfolder tidak disertakan.

Catatan

Untuk daftar bidang Struktur dapat menyediakan struktur data aktual untuk teks yang dibatasi dan himpunan data format Excel, Anda harus mengaktifkan properti First Row as Header, yang didukung hanya untuk sumber data ini.

Sintaks

Aktivitas Dapatkan Metadata

{
    "name":"MyActivity",
    "type":"GetMetadata",
    "dependsOn":[

    ],
    "policy":{
        "timeout":"7.00:00:00",
        "retry":0,
        "retryIntervalInSeconds":30,
        "secureOutput":false,
        "secureInput":false
    },
    "userProperties":[

    ],
    "typeProperties":{
        "dataset":{
            "referenceName":"MyDataset",
            "type":"DatasetReference"
        },
        "fieldList":[
            "size",
            "lastModified",
            "structure"
        ],
        "storeSettings":{
            "type":"AzureBlobStorageReadSettings"
        },
        "formatSettings":{
            "type":"JsonReadSettings"
        }
    }
}

Dataset

{
    "name":"MyDataset",
    "properties":{
        "linkedServiceName":{
            "referenceName":"AzureStorageLinkedService",
            "type":"LinkedServiceReference"
        },
        "annotations":[

        ],
        "type":"Json",
        "typeProperties":{
            "location":{
                "type":"AzureBlobStorageLocation",
                "fileName":"file.json",
                "folderPath":"folder",
                "container":"container"
            }
        }
    }
}

Properti jenis

Saat ini, aktivitas Dapatkan Metadata dapat menampilkan jenis informasi metadata berikut:

Properti Deskripsi Wajib diisi
fieldList Jenis informasi metadata yang diperlukan. Untuk detail tentang metadata yang didukung, lihat bagian Opsi metadata di artikel ini. Ya
himpunan data Himpunan data referensi yang metadatanya akan diambil oleh aktivitas Dapatkan Metadata. Lihat bagian Kemampuan untuk informasi tentang konektor yang didukung. Lihat topik konektor tertentu untuk detail sintaks himpunan data. Ya
formatSettings Terapkan saat menggunakan himpunan data jenis format. No
storeSettings Terapkan saat menggunakan himpunan data jenis format. No

Sampel output

Hasil Dapatkan Metadata ditunjukkan dalam output aktivitas. Berikut ini adalah dua sampel yang menunjukkan opsi metadata yang ekstensif. Untuk menggunakan hasil dalam aktivitas berikutnya, gunakan pola ini: @{activity('MyGetMetadataActivity').output.itemName}.

Mendapatkan metadata file

{
  "exists": true,
  "itemName": "test.csv",
  "itemType": "File",
  "size": 104857600,
  "lastModified": "2017-02-23T06:17:09Z",
  "created": "2017-02-23T06:17:09Z",
  "contentMD5": "cMauY+Kz5zDm3eWa9VpoyQ==",
  "structure": [
    {
        "name": "id",
        "type": "Int64"
    },
    {
        "name": "name",
        "type": "String"
    }
  ],
  "columnCount": 2
}

Mendapatkan metadata folder

{
  "exists": true,
  "itemName": "testFolder",
  "itemType": "Folder",
  "lastModified": "2017-02-23T06:17:09Z",
  "created": "2017-02-23T06:17:09Z",
  "childItems": [
    {
      "name": "test.avro",
      "type": "File"
    },
    {
      "name": "folder hello",
      "type": "Folder"
    }
  ]
}

Pelajari tentang aktivitas aliran kontrol yang didukung lainnya: