Transformasi kunci pengganti di aliran data pemetaan

BERLAKU UNTUK: Azure Data Factory Azure Synapse Analytics

Aliran data tersedia di Alur Azure Data Factory dan Azure Synapse. Artikel ini berlaku untuk memetakan aliran data. Jika Anda baru mengenal transformasi, silakan lihat artikel pengantar Transformasi data menggunakan aliran data pemetaan.

Gunakan transformasi kunci pengganti untuk menambahkan nilai kunci bertahap ke setiap baris data. Langkah ini berguna saat mendesain tabel dimensi dalam model data analitis skema bintang. Dalam skema bintang, setiap anggota dalam tabel dimensi Anda memerlukan kunci unik yang merupakan kunci non-bisnis.

Konfigurasi

Transformasi Kunci Pengganti

Kolom kunci: Nama kolom kunci pengganti yang dihasilkan.

Nilai awal: Nilai kunci terendah yang akan dihasilkan.

Kunci tahapan dari sumber yang ada

Untuk memulai urutan Anda dari nilai yang ada di sumber, kami sarankan untuk menggunakan sink cache untuk menyimpan nilai tersebut dan menggunakan transformasi kolom turunan untuk menambahkan dua nilai bersama-sama. Gunakan pencarian cache untuk mendapatkan output dan menambahkannya ke kunci yang dihasilkan. Untuk informasi selengkapnya, pelajari tentang sink cache dan pencarian cache.

Pencarian Kunci Pengganti

Tahapan dari nilai maksimum yang ada

Untuk menyemai nilai kunci dengan maks sebelumnya, ada dua teknik yang dapat Anda gunakan berdasarkan di mana letak data sumber Anda berada.

Sumber database

Gunakan opsi kueri SQL untuk memilih MAX() dari sumber Anda. Contohnya:Select MAX(<surrogateKeyName>) as maxval from <sourceTable>

Kueri Kunci Pengganti

Sumber file

Jika nilai maks Anda sebelumnya ada dalam file, gunakan fungsi max() dalam transformasi agregat untuk mendapatkan nilai maks sebelumnya:

File Kunci Pengganti

Dalam kedua kasus tersebut, Anda harus menulis ke sink cache dan mencari nilainya.

Skrip aliran data

Sintaks

<incomingStream> 
    keyGenerate(
        output(<surrogateColumnName> as long),
        startAt: <number>L
    ) ~> <surrogateKeyTransformationName>

Contoh

Transformasi Kunci Pengganti

Skrip aliran data untuk konfigurasi kunci pengganti di atas ada dalam cuplikan kode di bawah ini.

AggregateDayStats
    keyGenerate(
        output(key as long),
        startAt: 1L
    ) ~> SurrogateKey1

Langkah berikutnya

Contoh ini menggunakan transformasi Gabung dan Kolom Turunan.