Properti memori

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

Analysis Services telah mengalokasikan memori dalam jumlah sedikit saat startup, sehingga permintaan dapat segera ditangani. Memori tambahan dialokasikan saat beban kerja kueri dan pemrosesan meningkat. Dengan menentukan pengaturan konfigurasi, Anda dapat mengontrol ambang batas di mana memori dirilis.

Catatan

QueryMemoryLimit adalah satu-satunya properti Memori yang berlaku untuk Power BI.

Konfigurasi memori default

Di bawah konfigurasi default, setiap instans mengalokasikan sejumlah kecil RAM (40 MB hingga 50 MB) saat startup, bahkan jika instans menganggur. Pengaturan konfigurasi adalah per instans. Jika Anda menjalankan beberapa instans, seperti instans tabular dan multidmensional pada perangkat keras yang sama, setiap instans akan mengalokasikan memorinya sendiri secara independen dari instans lain.

Pengaturan Deskripsi
LowMemoryLimit Untuk instans multidmensional, ambang batas yang lebih rendah di mana server pertama kali mulai merilis memori yang dialokasikan untuk objek yang jarang digunakan.
VertiPaqMemoryLimit Untuk instans tabular, ambang batas yang lebih rendah di mana server pertama kali mulai merilis memori yang dialokasikan untuk objek yang jarang digunakan.
TotalMemoryLimit Ambang batas atas di mana Analysis Services mulai merilis memori secara lebih agresif untuk memberi ruang bagi permintaan yang sedang dieksekusi serta permintaan prioritas tinggi baru.
HardMemoryLimit Ambang batas lain di mana Analysis Services mulai menolak permintaan langsung karena tekanan memori.

Properti

Nilai antara 1 dan 100 mewakili persentase Total Memori Fisik atau Ruang Alamat Virtual, mana yang kurang. Nilai lebih dari 100 mewakili batas memori dalam byte.

DefaultPagesCountToReuse

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

HandleIA64AlignmentFaults

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

HardMemoryLimit

Menentukan ambang memori setelah instans secara agresif mengakhiri sesi pengguna aktif untuk mengurangi penggunaan memori. Semua sesi yang dihentikan akan menerima kesalahan tentang dibatalkan oleh tekanan memori. Nilai default, nol (0), berarti HardMemoryLimit akan diatur ke nilai tengah antara TotalMemoryLimit dan total memori fisik sistem; jika memori fisik sistem lebih besar dari ruang alamat virtual proses, maka ruang alamat virtual akan digunakan sebagai gantinya untuk menghitung HardMemoryLimit. Nilai ini tidak dapat dikonfigurasi untuk Azure Analysis Services.

HeapTypeForObjects

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft. Nilai yang valid adalah sebagai berikut:

Pengaturan Deskripsi
-1 (default) Otomatis. Mesin akan memutuskan mana yang akan digunakan.
0 Timbunan LFH Windows.
1 Alokator slot Analysis Services.
3 Setiap objek memiliki Timbunan Analysis Services sendiri.
HighMemoryPrice

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

LowMemoryLimit

Properti angka floating-point presisi ganda 64-bit yang ditandatangani yang menentukan ambang pertama di mana Analysis Services mulai merilis memori untuk objek berprioritas rendah, seperti cache yang jarang digunakan. Setelah memori dialokasikan, server tidak merilis memori di bawah batas ini. Nilai defaultnya adalah 65; yang menunjukkan batas memori rendah adalah 65% memori fisik atau ruang alamat virtual, mana yang kurang.

MemoryHeapType

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft. Nilai yang valid dalam SQL Server 2016 SP1 dan Analysis Services yang lebih baru adalah sebagai berikut:

Pengaturan Deskripsi
-1 (default) Otomatis. Mesin akan memutuskan mana yang akan digunakan.
1 Analysis Services HEAP.
2 Windows LFH.
5 Alokator hibrid. Alokator ini akan menggunakan Windows LFH untuk <= alokasi 16 KB dan As Heap untuk >alokasi 16 KB.
6 Alokator Intel TBB. Tersedia di SQL Server 2016 SP1 (dan yang lebih baru) Analysis Services.
MidMemoryPrice

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

MinimumAllocatedMemory

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

Pra-alokasi

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

QueryMemoryLimit

Berlaku untuk Power BI, Azure Analysis Services, dan SQL Server 2019 dan Analysis Services yang lebih baru saja. Properti tingkat lanjut untuk mengontrol berapa banyak memori yang dapat digunakan selama kueri.

Pada SQL Server 2019 dan yang lebih baru Analysis Services, pengaturan ini hanya berlaku untuk kumpulan memori tempat hasil kueri DAX perantara dibuat selama pemrosesan kueri. Ini tidak berlaku untuk kueri MDX.

Di Power BI, Azure Analysis Services, dan SQL Server 2022 dan yang lebih baru Analysis Services, jika properti FiturResourceTrackingEnabled diaktifkan, pengaturan ini tidak hanya terbatas pada penjemput memori. Ini berlaku untuk semua memori yang digunakan oleh kueri DAX dan MDX hanya dalam mode tabular.

Ditentukan dalam persentase hingga 100. Ketika lebih dari 100, itu dalam byte. Menetapkan nilai 0 berarti tidak ada batas yang ditentukan.

Untuk Azure Analysis Services, nilai default ditentukan oleh paket Anda.

Paket Default
D1 80
Semua lainnya 20
SessionMemoryLimit

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

TotalMemoryLimit

Menentukan ambang yang ketika tercapai, menyebabkan server membatalkan alokasi memori untuk memberi ruang bagi permintaan lain. Ketika batas ini tercapai, instans akan mulai secara perlahan menghapus memori dari cache dengan menutup sesi yang kedaluwarsa dan membongkar perhitungan yang tidak digunakan. Untuk SQL Server Analysis Services, Nilai defaultnya adalah 80% memori fisik atau ruang alamat virtual, mana yang kurang. Nilai default untuk Azure Analysis Services didasarkan pada paket Anda dan tidak dapat dikonfigurasi. TotalMemoryLimit harus selalu kurang dari HardMemoryLimit.

VertiPaqMemoryLimit

Hanya untuk instans tabular, jika halaman ke disk diizinkan, properti ini menentukan tingkat konsumsi memori (sebagai persentase total memori) di mana penomor dimulai. Default-nya adalah 60. Jika konsumsi memori kurang dari 60 persen, server tidak akan halaman ke disk. Properti ini tergantung pada VertiPaqPagingPolicyProperty, yang harus diatur ke 1 agar paging terjadi.

VertiPaqPagingPolicy

Hanya untuk instans tabular, menentukan perilaku paging jika server kehabisan memori. Nilai yang valid adalah sebagai berikut:

Pengaturan Deskripsi
0 (default untuk Azure Analysis Services dan Power BI) Menonaktifkan halaman. Jika memori tidak cukup, pemrosesan gagal dengan kesalahan kehabisan memori. Jika Anda menonaktifkan halaman, Anda harus memberikan hak istimewa Windows ke akun layanan. Lihat Mengonfigurasi Akun Layanan (Analysis Services) untuk petunjuknya.
1 (default untuk SQL Server Analysis Services) Properti ini memungkinkan paging ke disk menggunakan file halaman sistem operasi (pagefile.sys).

Ketika diatur ke 1, pemrosesan cenderung gagal karena batasan memori karena server akan mencoba halaman ke disk menggunakan metode yang Anda tentukan. Mengatur properti VertiPaqPagingPolicy tidak menjamin bahwa kesalahan memori tidak akan pernah terjadi. Kesalahan kehabisan memori masih dapat terjadi dalam kondisi berikut:

  • Memori tidak cukup untuk semua kamus. Selama pemrosesan, server mengunci kamus untuk setiap kolom dalam memori, dan semua ini bersama-sama tidak boleh lebih dari nilai yang ditentukan untuk VertiPaqMemoryLimit.

  • Ruang alamat virtual tidak cukup untuk mengakomodasi proses.

Untuk mengatasi kesalahan kehabisan memori yang terus-menerus, Anda dapat mencoba mendesain ulang model untuk mengurangi jumlah data yang perlu diproses, atau Anda dapat menambahkan lebih banyak memori fisik ke komputer.

VirtualMemoryLimit

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

WaitCountIfHighMemory

Properti tingkat lanjut yang tidak boleh Anda ubah, kecuali di bawah panduan dukungan Microsoft.

Lihat juga

Properti server di Analysis Services
Menentukan Mode Server instans Analysis Services