Bagikan melalui


Tabel Berlapis (Analysis Services - Penggalian Data)

Berlaku untuk: SQL Server 2019 dan Analysis Services Azure Analysis Services Fabric/Power BI Premium sebelumnya

Penting

Penambangan data tidak digunakan lagi pada SQL Server 2017 Analysis Services dan sekarang dihentikan di SQL Server 2022 Analysis Services. Dokumentasi tidak diperbarui untuk fitur yang tidak digunakan lagi dan dihentikan. Untuk mempelajari selengkapnya, lihat Kompatibilitas mundur Analysis Services.

Dalam SQL Server SQL Server Analysis Services, data harus disalurkan ke algoritma penggalian data sebagai serangkaian kasus yang terkandung dalam tabel kasus. Namun, tidak semua kasus dapat dijelaskan oleh satu baris data. Misalnya, kasus mungkin berasal dari dua tabel: satu tabel yang berisi informasi pelanggan, dan tabel lain yang berisi pembelian pelanggan. Satu pelanggan dalam tabel informasi pelanggan mungkin memiliki beberapa item dalam tabel pembelian pelanggan, yang menyulitkan untuk menggambarkan data dengan menggunakan satu baris. SQL Server Analysis Services menyediakan metode unik untuk menangani kasus ini, dengan menggunakan tabel berlapis. Konsep tabel berlapis ditunjukkan dalam ilustrasi berikut.

Dua tabel digabungkan dengan menggunakan tabel berlapis

Dalam diagram ini, tabel pertama, yang merupakan tabel induk, berisi informasi tentang pelanggan, dan mengaitkan pengidentifikasi unik untuk setiap pelanggan. Tabel kedua, tabel anak, berisi pembelian untuk setiap pelanggan. Pembelian dalam tabel anak terkait dengan tabel induk oleh pengidentifikasi unik, kolom CustomerKey . Tabel ketiga dalam diagram memperlihatkan dua tabel yang digabungkan.

Tabel berlapis diwakili dalam tabel kasus sebagai kolom khusus yang memiliki tipe data TABLE. Untuk baris kasus tertentu, kolom semacam ini berisi baris yang dipilih dari tabel anak yang berkaitan dengan tabel induk.

Data dalam tabel berlapis dapat digunakan untuk prediksi atau untuk input, atau untuk keduanya. Misalnya, Anda mungkin memiliki dua kolom tabel berlapis dalam model: satu kolom tabel berlapis mungkin berisi daftar produk yang telah dibeli pelanggan, sementara kolom tabel berlapis lainnya berisi informasi tentang hobi dan minat pelanggan, yang mungkin diperoleh dari survei. Dalam skenario ini, Anda dapat menggunakan hobi dan minat pelanggan sebagai input untuk menganalisis perilaku pembelian, dan memprediksi kemungkinan pembelian.

Menggabungkan Tabel Kasus dan Tabel Berlapis

Untuk membuat tabel berlapis, dua tabel sumber harus berisi hubungan yang ditentukan sehingga item dalam satu tabel dapat terkait dengan tabel lainnya. Dalam SQL Server Data Tools, Anda dapat menentukan hubungan ini dalam tampilan sumber data.

Catatan

Bidang CustomerKey adalah kunci relasional yang digunakan untuk menautkan tabel kasus dan tabel berlapis dalam definisi tampilan sumber data, dan untuk membuat hubungan kolom dalam struktur penambangan. Namun, biasanya Anda tidak boleh menggunakan kunci relasional ini dalam model penambangan yang dibangun di atas struktur tersebut. Biasanya yang terbaik adalah menghilangkan kolom kunci relasional dari model penambangan jika hanya berfungsi untuk menggabungkan tabel dan tidak memberikan informasi yang menarik untuk analisis.

Anda dapat membuat tabel berlapis secara terprogram dengan menggunakan Ekstensi Penggalian Data (DMX) atau Analysis Management Objects (AMO), atau Anda dapat menggunakan Panduan Penggalian Data dan Designer Penggalian Data di SQL Server Data Tools.

Menggunakan Kolom Tabel Berlapis dalam Model Penambangan

Dalam tabel kasus, kuncinya sering kali merupakan ID pelanggan, nama produk, atau tanggal dalam seri: data yang secara unik mengidentifikasi baris dalam tabel. . Namun, dalam tabel berlapis, kunci biasanya bukan kunci relasional (atau kunci asing) melainkan kolom yang mewakili atribut yang Anda model.

Misalnya, jika tabel kasus berisi pesanan, dan tabel berlapis berisi item dalam urutan, Anda akan tertarik untuk memodelkan hubungan antara item yang disimpan dalam tabel berlapis di beberapa pesanan, yang disimpan dalam tabel kasus. Oleh karena itu, meskipun tabel Item berlapis digabungkan ke tabel kasus Pesanan oleh kunci relasional OrderID, Anda tidak boleh menggunakan OrderID sebagai kunci tabel berlapis. Sebagai gantinya, Anda akan memilih kolom Item sebagai kunci tabel berlapis, karena kolom tersebut berisi data yang ingin Anda model. Dalam kebanyakan kasus, Anda dapat dengan aman mengabaikan OrderID dalam model penambangan, karena hubungan antara tabel kasus dan tabel berlapis telah dibuat oleh definisi tampilan sumber data.

Saat Anda memilih kolom untuk digunakan sebagai kunci tabel berlapis, Anda harus memastikan bahwa nilai dalam kolom tersebut unik untuk setiap kasus. Misalnya, jika tabel kasus mewakili pelanggan dan tabel berlapis mewakili item yang dibeli oleh pelanggan, Anda harus memastikan bahwa tidak ada item yang tercantum lebih dari satu kali per pelanggan. Jika pelanggan telah membeli item yang sama lebih dari satu kali, Anda mungkin ingin membuat tampilan berbeda yang memiliki kolom yang menggabungkan jumlah pembelian untuk setiap produk unik.

Cara Anda memutuskan untuk menangani nilai duplikat dalam tabel berlapis tergantung pada model penambangan yang Anda buat dan masalah bisnis yang Anda selesaikan. Dalam beberapa skenario, Anda mungkin tidak peduli berapa kali pelanggan telah membeli produk tertentu, tetapi ingin memeriksa keberadaan setidaknya satu pembelian. Dalam skenario lain, kuantitas dan urutan pembelian mungkin sangat penting.

Jika urutan item penting, Anda mungkin memerlukan kolom tambahan yang menunjukkan urutannya. Saat Anda menggunakan algoritma pengklusteran urutan untuk membuat model, Anda harus memilih kolom urutan kunci tambahan untuk mewakili urutan item. Kolom urutan kunci adalah jenis kunci berlapis khusus yang hanya digunakan dalam model pengklusteran urutan, dan memerlukan jenis data numerik yang unik. Misalnya, bilangan bulat dan tanggal keduanya dapat digunakan sebagai kolom urutan kunci, tetapi semua nilai urutan harus unik. Selain kolom urutan kunci, model pengklusteran urutan juga memiliki kunci tabel berlapis yang mewakili atribut yang sedang dimodelkan, seperti produk yang telah dibeli.

Menggunakan Kolom Berlapis Non-Kunci dari Tabel Berlapis

Setelah Anda menentukan gabungan antara tabel kasus dan tabel berlapis, dan Anda telah memilih kolom yang berisi atribut menarik dan unik untuk digunakan sebagai kunci tabel berlapis, Anda dapat menyertakan kolom lain dari tabel berlapis untuk digunakan sebagai input ke model. Semua kolom dari tabel berlapis dapat digunakan untuk input, prediksi, dan input, atau untuk prediksi saja.

Misalnya, jika tabel berlapis berisi kolom Produk, ProductQuantity, dan ProductPrice, Anda dapat memilih Produk sebagai kunci tabel berlapis, tetapi menambahkan ProductQuantity ke struktur penambangan untuk digunakan sebagai input.

Memfilter Data Tabel Berlapis

Pada SQL Server 2017, Anda dapat membuat filter pada data yang digunakan untuk melatih atau menguji model penggalian data. Filter dapat digunakan untuk memengaruhi komposisi model, atau untuk menguji model pada subset kasus. Filter juga dapat diterapkan ke tabel berlapis. Namun, ada batasan pada sintaks yang dapat digunakan dengan tabel berlapis.

Sering kali ketika Anda menerapkan filter ke tabel berlapis, Anda menguji keberadaan atau tidak adanya atribut. Misalnya, Anda dapat menerapkan filter yang membatasi kasus yang digunakan dalam model hanya untuk kasus yang memiliki nilai tertentu dalam tabel berlapis. Atau, Anda dapat membatasi kasus yang digunakan dalam model kepada pelanggan yang belum membeli item tertentu.

Saat membuat filter pada tabel berlapis, Anda juga dapat menggunakan operator seperti lebih besar dari atau kurang dari. Misalnya, Anda dapat membatasi kasus yang digunakan dalam model kepada pelanggan yang telah membeli setidaknya n unit produk target. Kemampuan untuk memfilter atribut tabel berlapis memberikan fleksibilitas yang besar untuk menyesuaikan model.

Untuk informasi selengkapnya tentang cara membuat dan menggunakan filter model, lihat Filter untuk Model Penambangan (Analysis Services - Data Mining).

Lihat juga

Algoritma Penggalian Data (Analysis Services - Penggalian Data)
Struktur Pertambangan (Analysis Services - Penggalian Data)