Objek partisi (TMSL)
Berlaku untuk: SQL Server 2016 dan yang lebih baru Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
Menentukan partisi, atau segmentasi logis, dari kumpulan baris tabel. Partisi terdiri dari kueri Power Query M atau SQL yang digunakan untuk mengimpor data, untuk data sampel di lingkungan pemodelan, atau sebagai kueri data lengkap untuk melewati eksekusi kueri melalui DirectQuery.
Properti pada partisi menentukan bagaimana data bersumber untuk tabel. Dalam hierarki objek, objek induk partisi adalah objek tabel.
Definisi objek
Semua objek memiliki sekumpulan properti umum, termasuk nama, jenis, deskripsi, koleksi properti, dan anotasi. Objek partisi juga memiliki properti berikut.
jenis
Jenis partisi. Nilai yang valid adalah numerik, dan menyertakan yang berikut ini:
Kueri (1) – data dalam partisi ini diambil dengan menjalankan kueri terhadap DataSource. DataSource harus merupakan sumber data yang ditentukan dalam file model.bim.
Dihitung (2) – data dalam partisi ini diisi dengan menjalankan ekspresi terhitung.
Tidak ada (3) – data dalam partisi ini diisi dengan mendorong kumpulan baris data ke server sebagai bagian dari operasi Refresh.
mode
Menentukan mode kueri partisi. Nilai yang valid adalah impor, DirectQuery, atau default (diwariskan). Nilai ini diperlukan.
Nilai | Deskripsi |
---|---|
Impor | Menunjukkan permintaan kueri dikeluarkan terhadap mesin analitik dalam memori yang menyimpan data yang diimpor. |
DirectQuery | Teruskan eksekusi kueri ke database relasional eksternal. Mode DirectQuery menggunakan partisi untuk menyediakan data sampel yang digunakan selama desain model. Saat disebarkan di server produksi, Anda harus beralih kembali ke tampilan Data lengkap. Ingat bahwa mode DirectQuery memerlukan satu partisi per tabel, dan satu sumber data per model. |
default | Atur ini jika Anda ingin beralih mode lebih tinggi ke atas pohon objek, di tingkat model atau database. Saat Anda memilih default, mode kueri akan menjadi impor atau DirectQuery. |
sumber
Mengidentifikasi lokasi data yang akan dikueri. Nilai yang valid adalah kueri, terhitung, atau tidak ada. Nilai ini diperlukan.
Nilai | Deskripsi |
---|---|
Tidak ada | Digunakan untuk mode impor, tempat data dimuat dan disimpan dalam memori. |
query | Untuk mode DirectQuery, ini adalah kueri SQL yang dijalankan terhadap database relasional yang ditentukan dalam DataSource model. Lihat objek DataSources (TMSL). |
Dihitung | Tabel terhitung bersumber dari ekspresi yang ditentukan saat tabel dibuat. Ekspresi ini dianggap sebagai sumber partisi yang dibuat untuk tabel terhitung. |
Dataview
Untuk partisi DirectQuery, properti dataView tambahan selanjutnya menentukan apakah kueri yang mengambil data adalah sampel atau himpunan data lengkap. Nilai yang valid penuh, sampel, atau default (diwariskan). Seperti disebutkan, sampel hanya digunakan selama pemodelan dan pengujian data.
Penggunaan
Objek partisi digunakan dalam perintah Alter (TMSL), perintah Buat (TMSL), perintah CreateOrReplace (TMSL), perintah Hapus (TMSL), perintah Refresh (TMSL), dan perintah MergePartitions (TMSL).
Saat membuat, mengganti, atau mengubah objek partisi, tentukan semua properti baca-tulis definisi objek. Kelalaian properti baca-tulis dianggap sebagai penghapusan. Properti baca-tulis mencakup nama, deskripsi, mode, dan sumber.
Contoh
Contoh 1 - Struktur partisi sederhana tabel (bukan tabel fakta).
"partitions": [
{
"name": "Customer",
"source": {
"query": "SELECT [dbo].[Customer].* FROM [dbo].[Customer]",
"dataSource": "SqlServer localhost FoodmartDB"
}
]
Contoh 2 - Data fakta yang dipartisi biasanya didasarkan pada klausa WHERE yang membuat partisi yang tidak tumpang tindih untuk data dari tabel yang sama.
"partitions": [
{
"name": "sales_fact_2015",
"source": {
"query": "SELECT [dbo].[sales_fact_2015].* FROM [dbo].[sales_fact_2015] WHERE [dbo].[sales_fact_2015].[Quarter]=4",
"dataSource": "SqlServer localhost FoodmartDB"
},
}
]
Contoh 3 - Tabel terhitung berdasarkan ekspresi DAX.
"partitions": [
{
"name": "CalcTable1",
"source": {
"type": "calculated",
"expression": "'Product Class'"
},
}
]
Sintaks Penuh
Di bawah ini adalah representasi skema objek partisi.
"partitions": {
"type": "array",
"items": {
"description": "Partition object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"mode": {
"enum": [
"import",
"directQuery",
"default"
]
},
"dataView": {
"enum": [
"full",
"sample",
"default"
]
},
"source": {
"anyOf": [
{
"description": "QueryPartitionSource object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"type": {
"enum": [
"query",
"calculated",
"none"
]
},
"query": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"dataSource": {
"type": "string"
}
},
"additionalProperties": false
},
{
"description": "CalculatedPartitionSource object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"type": {
"enum": [
"query",
"calculated",
"none"
]
},
"expression": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"additionalProperties": false
}
]
},
"annotations": {
"type": "array",
"items": {
"description": "Annotation object of Tabular Object Model (TOM)",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}
},
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk