Jadi saya perkenalkan dengan mengatakan saya tidak memiliki kendali penuh atas desain db saya, jadi banyak aspek dari sistem saat ini tidak dapat diubah untuk keperluan skenario ini.
Komentar tentang bagaimana kita harus memikirkan kembali aspek-aspek desain mungkin benar tetapi tidak membantu :)
Saya memiliki tabel yang sangat besar, kira-kira 150 bidang lebar dan sekitar 600m baris, yang menggerakkan sejumlah besar proses. Ini berada dalam situasi gudang data sehingga kami tidak memiliki pembaruan / sisipan APAPUN di luar proses pemuatan terjadwal, sehingga sangat terindeks.
Keputusan telah dibuat untuk mencoba mempartisi tabel ini, dan saya memiliki beberapa kekhawatiran tentang pengindeksan tabel dipartisi. Saya tidak punya pengalaman dengan mempartisi, jadi masukan atau tautan apa pun dihargai. Saya tidak dapat menemukan secara spesifik apa yang saya cari di BOL atau msdn.
Saat ini kami klaster pada bidang yang kita sebut IncidentKey
yang merupakan varchar(50)
dan tidak unik - kita bisa memiliki antara 1-100 catatan dengan sama IK
(tidak ada komentar menyenangkan). Kami sering mendapatkan data baru pada IncidentKey
catatan lama sehingga tidak berurutan juga.
Saya mengerti saya harus memasukkan bidang partisi saya IncidentDate
,, di kunci indeks berkerumun saya agar partisi berfungsi dengan benar. Saya pikir itu akan terjadi IncidentKey, IncidentDate
.
Pertanyaannya adalah, bagaimana mekanisme indeks berkerumun bekerja pada kunci 2 bagian dalam tabel dipartisi, jika catatan dalam partisi "baru" harus sebelum rekaman dalam partisi "lama" dalam indeks berkerumun?
Misalnya, saya punya 5 catatan:
IncidentKey Date
ABC123 1/1/2010
ABC123 7/1/2010
ABC123 1/1/2011
XYZ999 1/1/2010
XYZ999 7/1/2010
Jika saya mendapatkan catatan baru untuk ABC123, 2/1/2011
itu harus dalam indeks berkerumun SEBELUM XYZ999, 1/1/2010
. Bagaimana cara kerjanya?
Saya mengasumsikan fragmentasi dan petunjuk, tetapi saya tidak dapat menemukan info tentang penyimpanan fisik dan konfigurasi indeks berkerumun non-dipartisi pada tabel dipartisi dengan kunci dua bagian.