Bagikan melalui


Dimensi Write-Enabled

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

Penting

Fitur ini akan dihapus di versi Microsoft SQL Server berikutnya. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini.

Data dalam dimensi umumnya bersifat baca-saja. Namun, untuk skenario tertentu, Anda mungkin ingin menulis-mengaktifkan dimensi. Di Microsoft SQL Server SQL Server Analysis Services, mengaktifkan dimensi tulis memungkinkan pengguna bisnis untuk memodifikasi konten dimensi dan melihat efek langsung perubahan pada hierarki dimensi. Dimensi apa pun yang didasarkan pada satu tabel dapat diaktifkan tulis. Dalam dimensi yang mendukung penulisan, pengguna dan administrator bisnis dapat mengubah, memindahkan, menambahkan, dan menghapus anggota atribut dalam dimensi. Pembaruan ini disebut secara kolektif sebagai penulisan balik dimensi.

SQL Server Analysis Services mendukung tulis balik dimensi pada semua atribut dimensi dan setiap anggota dimensi dapat dimodifikasi. Untuk kubus atau partisi yang diaktifkan tulis, pembaruan disimpan dalam tabel tulis balik yang terpisah dari tabel sumber kubus. Namun, untuk dimensi yang mendukung penulisan, pembaruan direkam langsung dalam tabel dimensi. Selain itu, jika dimensi yang diaktifkan penulisan disertakan dalam kubus dengan beberapa partisi di mana beberapa atau semua sumber datanya memiliki salinan tabel dimensi, hanya tabel dimensi asli yang diperbarui selama proses tulis balik.

Dimensi yang diaktifkan tulis dan kubus yang mendukung penulisan memiliki fitur yang berbeda tetapi melengkapi. Dimensi yang mendukung penulisan memberi pengguna bisnis kemampuan untuk memperbarui anggota, sedangkan kubus yang diaktifkan tulis memberi mereka kemampuan untuk memperbarui nilai sel. Meskipun kedua fitur ini saling melengkapi, Anda tidak perlu menggunakan kedua fitur dalam kombinasi. Dimensi tidak harus disertakan dalam kubus agar penulisan balik dimensi terjadi. Dimensi yang mendukung penulisan juga dapat disertakan dalam kubus yang tidak mendukung penulisan. Anda menggunakan prosedur yang berbeda untuk menulis dimensi dan kubus, dan untuk menjaga keamanannya.

Pembatasan berikut berlaku untuk tulis balik dimensi:

  • Saat membuat anggota baru, Anda harus menyertakan setiap atribut dalam dimensi. Anda tidak dapat menyisipkan anggota tanpa menentukan nilai untuk atribut kunci dimensi. Oleh karena itu, membuat anggota tunduk pada batasan apa pun (seperti nilai kunci non-null) yang ditentukan pada tabel dimensi.

  • Penulisan balik dimensi hanya didukung untuk skema star. Dengan kata lain, dimensi harus didasarkan pada tabel dimensi tunggal yang terkait langsung dengan tabel fakta. Setelah Anda mengaktifkan dimensi, SQL Server Analysis Services memvalidasi persyaratan ini saat Anda menyebarkan ke database SQL Server Analysis Services yang ada atau saat Anda membangun proyek SQL Server Analysis Services.

Setiap anggota dimensi tulis balik yang ada dapat dimodifikasi atau dihapus. Saat anggota dihapus, penghapusan berkaskala untuk semua anggota anak. Misalnya, dalam dimensi Pelanggan yang berisi atribut CountryRegion, Provinsi, Kota, dan Pelanggan, menghapus negara/wilayah akan menghapus semua provinsi, kota, dan pelanggan yang termasuk dalam negara/wilayah yang dihapus. Jika negara/wilayah hanya memiliki satu provinsi, menghapus provinsi tersebut juga akan menghapus negara/wilayah tersebut.

Anggota dimensi tulis balik hanya dapat dipindahkan dalam tingkat yang sama. Misalnya, kota dapat dipindahkan ke tingkat Kota di negara/wilayah atau provinsi yang berbeda, tetapi kota tidak dapat dipindahkan ke tingkat Provinsi atau CountryRegion. Dalam hierarki induk-anak, semua anggota adalah anggota daun, dan oleh karena itu anggota dapat dipindahkan ke tingkat apa pun selain tingkat (Semua).

Jika anggota hierarki induk-anak dihapus, anak anggota akan dipindahkan ke induk anggota. Izin pembaruan pada tabel relasional diperlukan pada anggota yang dihapus, tetapi tidak ada izin yang diperlukan pada anggota yang dipindahkan. Ketika aplikasi memindahkan anggota dalam hierarki induk-anak, aplikasi dapat menentukan dalam operasi UPDATE apakah keturunan anggota dipindahkan dengan anggota atau dipindahkan ke induk anggota. Untuk menghapus anggota secara rekursif dalam hierarki induk-anak, pengguna harus memiliki izin pembaruan pada tabel relasional untuk anggota dan semua turunan anggota.

Catatan

Updates ke atribut induk dalam hierarki induk-anak tidak boleh menyertakan pembaruan ke properti atau atribut lainnya.

Semua perubahan pada dimensi menyebabkan struktur dimensi dimodifikasi. Setiap perubahan pada dimensi dianggap sebagai satu transaksi, yang memerlukan pemrosesan inkremental untuk memperbarui struktur dimensi. Dimensi yang mendukung penulisan memiliki persyaratan pemrosesan yang sama dengan dimensi lainnya.

Catatan

Penulisan balik dimensi tidak didukung oleh dimensi tertaut.

Keamanan

Satu-satunya pengguna bisnis yang dapat memperbarui dimensi yang mendukung penulisan adalah pengguna dalam peran database SQL Server Analysis Services yang telah diberikan izin baca/tulis ke dimensi. Untuk setiap peran, Anda dapat mengontrol anggota mana yang dapat dan tidak dapat diperbarui. Agar pengguna bisnis dapat memperbarui dimensi yang mendukung penulisan, aplikasi klien mereka harus mendukung kemampuan ini. Untuk pengguna tersebut, dimensi yang mendukung penulisan harus disertakan dalam kubus yang diproses sejak dimensi terakhir diubah. Untuk informasi selengkapnya, lihat Mengotorisasi akses ke objek dan operasi (Analysis Services).

Pengguna dan grup yang disertakan dalam peran Administrator dapat memperbarui anggota atribut dimensi yang diaktifkan tulis, bahkan jika dimensi tidak disertakan dalam kubus.

Lihat juga

Properti Dimensi Database
Partisi berkemampuan tulis
Dimensi (Analysis Services - Data Multidmensional)