Transformasi Pivot

Berlaku untuk: Integration Runtime SSIS SQL Server di Azure Data Factory

Transformasi Pivot membuat himpunan data yang dinormalisasi menjadi versi yang kurang dinormalisasi tetapi lebih ringkas dengan mempivot data input pada nilai kolom. Misalnya, himpunan data Pesanan yang dinormalisasi yang mencantumkan nama pelanggan, produk, dan kuantitas yang dibeli biasanya memiliki beberapa baris untuk setiap pelanggan yang membeli beberapa produk, dengan setiap baris untuk pelanggan tersebut menunjukkan detail pesanan untuk produk yang berbeda. Dengan mempivot himpunan data pada kolom produk, transformasi Pivot dapat menghasilkan himpunan data dengan satu baris per pelanggan. Baris tunggal tersebut mencantumkan semua pembelian oleh pelanggan, dengan nama produk yang ditampilkan sebagai nama kolom, dan kuantitas yang ditampilkan sebagai nilai di kolom produk. Karena tidak setiap pelanggan membeli setiap produk, banyak kolom mungkin berisi nilai null.

Saat himpunan data dipivot, kolom input melakukan peran yang berbeda dalam proses pivot. Kolom dapat berpartisipasi dengan cara berikut:

  • Kolom diteruskan melalui tidak berubah ke output. Karena banyak baris input hanya dapat menghasilkan satu baris output, transformasi hanya menyalin nilai input pertama untuk kolom.

  • Kolom bertindak sebagai kunci atau bagian dari kunci yang mengidentifikasi sekumpulan rekaman.

  • Kolom menentukan pivot. Nilai dalam kolom ini dikaitkan dengan kolom dalam himpunan data yang dipivot.

  • Kolom berisi nilai yang ditempatkan di kolom yang dibuat pivot.

Transformasi ini memiliki satu input, satu output reguler, dan satu output kesalahan.

Urutkan dan Duplikat Baris

Untuk mempivot data secara efisien, yang berarti membuat beberapa rekaman dalam himpunan data output mungkin, data input harus diurutkan pada kolom pivot. Jika data tidak diurutkan, transformasi Pivot mungkin menghasilkan beberapa rekaman untuk setiap nilai dalam kunci yang ditetapkan, yang merupakan kolom yang menentukan keanggotaan yang ditetapkan. Misalnya, jika himpunan data dipivot pada kolom Nama tetapi nama tidak diurutkan, himpunan data output dapat memiliki lebih dari satu baris untuk setiap pelanggan, karena pivot terjadi setiap kali nilai dalam Nama berubah.

Data input mungkin berisi baris duplikat, yang akan menyebabkan transformasi Pivot gagal. "Baris duplikat" berarti baris yang memiliki nilai yang sama dalam kolom kunci yang ditetapkan dan kolom pivot. Untuk menghindari kegagalan, Anda dapat mengonfigurasi transformasi untuk mengalihkan baris kesalahan ke output kesalahan atau Anda dapat melakukan pra-agregat nilai untuk memastikan tidak ada baris duplikat.

Opsi dalam Kotak Dialog Pivot

Anda mengonfigurasi operasi pivot dengan mengatur opsi dalam kotak dialog Pivot . Untuk membuka kotak dialog Pivot, tambahkan transformasi Pivot ke paket di SQL Server Data Tools (SSDT), lalu klik kanan komponen dan klik Edit.

Daftar berikut ini menjelaskan opsi dalam kotak dialog Pivot .

Kunci Pivot
Menentukan kolom yang akan digunakan untuk nilai di seluruh baris atas (baris header) tabel.

Atur Kunci
Menentukan kolom yang akan digunakan untuk nilai di kolom kiri tabel. Tanggal input harus diurutkan pada kolom ini.

Nilai Pivot
Menentukan kolom yang akan digunakan untuk nilai tabel, selain nilai di baris header dan kolom kiri.

Abaikan nilai Kunci Pivot yang tidak cocok dan laporkan setelah eksekusi Aliran Data
Pilih opsi ini untuk mengonfigurasi transformasi Pivot untuk mengabaikan baris yang berisi nilai yang tidak dikenali di kolom Kunci Pivot dan untuk menghasilkan semua nilai kunci pivot ke pesan log, saat paket dijalankan.

Anda juga dapat mengonfigurasi transformasi untuk menghasilkan nilai dengan mengatur properti kustom PassThroughUnmatchedPivotKeys ke True.

Membuat kolom output pivot dari nilai
Masukkan nilai kunci pivot dalam kotak ini untuk mengaktifkan transformasi Pivot untuk membuat kolom output untuk setiap nilai. Anda dapat memasukkan nilai sebelum menjalankan paket, atau melakukan hal berikut.

  1. Pilih opsi Abaikan nilai Kunci Pivot yang tidak cocok dan laporkan setelah opsi eksekusi Aliran Data , lalu klik OK dalam kotak dialog Pivot untuk menyimpan perubahan ke transformasi Pivot.

  2. Jalankan paket.

  3. Saat paket berhasil, klik tab Kemajuan dan cari pesan log informasi dari transformasi Pivot yang berisi nilai kunci pivot.

  4. Klik kanan pesan dan klik Salin Teks Pesan.

  5. Klik Hentikan Penelusuran Kesalahan pada menu Debug untuk beralih ke mode desain.

  6. Klik kanan transformasi Pivot, lalu klik Edit.

  7. Hapus centang opsi Abaikan nilai Kunci Pivot yang tidak cocok dan laporkan setelah opsi eksekusi Aliran Data , lalu tempelkan nilai kunci pivot di kotak Hasilkan kolom output pivot dari nilai menggunakan format berikut.

    [value1],[value2],[value3]

Hasilkan Kolom Sekarang
Klik untuk membuat kolom output untuk setiap nilai kunci pivot yang tercantum dalam kotak Hasilkan kolom output pivot dari nilai .

Kolom output muncul dalam kotak kolom output pivot yang ada .

Kolom output pivot yang ada
Mencantumkan kolom output untuk nilai kunci pivot

Tabel berikut ini memperlihatkan himpunan data sebelum data dipivot pada kolom Tahun .

Tahun Nama Produk Total
2004 Ban Gunung HL 1504884.15
2003 Tabung Ban Jalan 35920.50
2004 Botol Air - 30 oz. 2805.00
2002 Ban Touring 62364.225

Tabel berikut ini memperlihatkan himpunan data setelah data dipivot pada kolom Tahun .

Nama Produk 2002 2003 2004
Ban Gunung HL 141164.10 446297.775 1504884.15
Tabung Ban Jalan 3592.05 35920.50 89801.25
Botol Air - 30 oz. NULL NULL 2805.00
Ban Touring 62364.225 375051.60 1041810.00

Untuk mempivot data pada kolom Tahun , seperti yang diperlihatkan di atas, opsi berikut diatur dalam kotak dialog Pivot .

  • Tahun dipilih dalam kotak daftar Kunci Pivot .

  • Nama Produk dipilih dalam kotak daftar Atur Kunci .

  • Total dipilih dalam kotak daftar Nilai Pivot .

  • Nilai berikut dimasukkan dalam kotak Hasilkan kolom output pivot dari nilai .

    [2002],[2003],[2004]

Konfigurasi Transformasi Pivot

Anda dapat mengatur properti melalui SSIS Designer atau secara terprogram.

Untuk informasi selengkapnya tentang properti yang bisa Anda atur dalam kotak dialog Editor Lanjutan, klik salah satu topik berikut ini:

Untuk informasi tentang cara mengatur properti komponen ini, lihat Mengatur Properti Komponen Aliran Data.

Lihat juga

Transformasi Unpivot
Aliran Data
Transformasi Layanan Integrasi