Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 19085|Jawab: 2

[Sumber] SQL Server membuat indeks

[Salin tautan]
Diposting pada 20/09/2019 09.31.08 | | |
Konsep pengindeksan

Tujuan pembuatan indeks adalah untuk meningkatkan kinerja sistem database, mempercepat kecepatan kueri data, dan mengurangi waktu respons sistem.
Apa itu indeks: Indeks dalam database mirip dengan daftar isi buku, di mana Anda dapat dengan cepat menemukan informasi yang Anda inginkan tanpa membaca seluruh buku.
Dalam database, program database menggunakan indeks untuk mengkueri data dalam tabel dengan cepat tanpa harus memindai seluruh tabel.
Daftar isi dalam buku adalah daftar kata dan nomor halaman di mana mereka berada, dan indeks dalam database adalah daftar nilai dalam tabel dan tempat setiap nilai disimpan.
Pro dan kontra pengindeksan: Sebagian besar overhead eksekusi kueri adalah I/O, dan salah satu tujuan utama menggunakan indeks untuk meningkatkan performa adalah untuk menghindari pemindaian tabel penuh, karena pemindaian tabel penuh perlu membaca setiap halaman data tabel dari disk, dan jika ada indeks yang menunjuk ke nilai data, kueri hanya perlu membaca beberapa kali ke disk.
Oleh karena itu, penggunaan indeks yang wajar dapat mempercepat kueri data. Namun, indeks tidak selalu meningkatkan performa sistem, tabel yang diindeks perlu memakan lebih banyak ruang penyimpanan dalam database, dan perintah yang sama untuk memodifikasi dan menghapus data akan memakan waktu lebih lama untuk dijalankan dan memelihara indeks.
Oleh karena itu, kita harus menggunakan indeks secara wajar dan memperbaruinya tepat waktu untuk menghapus indeks suboptimal.

Klasifikasi indeks

Indeksnya mirip dengan daftar isi di depan kamus bahasa Cina, dan Anda dapat dengan cepat menemukan kata yang ingin Anda temukan sesuai dengan pinyin atau ibu kota.
UNIK: Nilai indeks setiap baris adalah unik (batasan unik dibuat, dan sistem akan secara otomatis membuat indeks unik).
Indeks Kunci Utama: Kolom kunci utama yang ditentukan saat tabel dibuat secara otomatis membuat indeks kunci primer dan memiliki karakteristik unik.
CLUSTERED: Indeks berkluster setara dengan menggunakan pencarian pinyin kamus, karena indeks berkluster menyimpan catatan yang secara fisik terus menerus, yaitu, pinyin a harus diikuti dengan b.
NONCLUSTERED: Indeks NONCLUSTERED setara dengan menggunakan radikal kamus untuk mencari, indeks non-clustered secara logis berkelanjutan, dan penyimpanan fisik tidak berdekatan.
Indeks berkluster hanya dapat memiliki satu tabel dalam tabel, sedangkan indeks non-berkluster dapat memiliki lebih dari satu tabel dalam tabel.

Bidang mana yang perlu diindeks

1. Kunci primer dan asing tabel harus memiliki indeks
2. Tabel dengan lebih dari 300 data harus memiliki indeks
3. Tabel yang sering terhubung ke tabel lain harus diindeks pada bidang yang terhubung
4. Bidang yang sering muncul dalam klausa Where, terutama yang ada dalam tabel besar, harus diindeks
5. Bidang yang sering diurutkan atau dikelompokkan (yaitu, melakukan operasi GROUP BY atau ORDER BY) harus diindeks
6. Indeks harus dibangun di atas bidang yang sangat selektif
7. Indeks harus dibangun di atas bidang kecil, untuk bidang teks besar atau bahkan bidang ultra-panjang, jangan membuat indeks, dan menggunakan bilangan bulat sebagai nilai kunci sebisa mungkin, karena bilangan bulat memiliki kecepatan akses tercepat
8. Pembentukan indeks komposit perlu dianalisis dengan cermat; Cobalah untuk mempertimbangkan untuk menggunakan indeks bidang tunggal sebagai gantinya
9. Tabel yang sering melakukan manipulasi data tidak boleh diindeks terlalu banyak
10. Hapus indeks yang tidak berguna untuk menghindari dampak negatif pada rencana eksekusi

Kerugian dari terlalu banyak indeks

1. Ruang penyimpanan akan menjadi lebih besar, dan setiap indeks perlu disimpan di ruang angkasa
2. Jika ada banyak indeks non-cluster, setelah indeks berkluster berubah, maka semua indeks non-clustered akan berubah sesuai
3. Terlalu banyak indeks akan menyebabkan peningkatan jumlah kombinasi yang perlu dievaluasi dalam proses pengoptimalan pengoptimal, meningkatkan waktu kueri
4. Setiap indeks memiliki informasi statistik, dan semakin banyak indeks, semakin banyak informasi statistik, yang meningkatkan waktu kueri
5. Perbarui overhead, setelah data berubah, dan ada banyak kolom yang berubah, hal itu dapat menyebabkan beberapa indeks berubah, mengakibatkan pembaruan, penghapusan, dan sisipan melambat








Mantan:Video MV pengiring kuat remaja
Depan:C# mendapatkan huruf disk sistem saat ini, direktori sistem, desktop, dll
 Tuan tanah| Diposting pada 27/12/2020 11.56.05 |
CREATE INDEX Nama Tabel PersonIndex ON (Nama Bidang)

DROP INDEX Nama tabel PersonIndex ON
 Tuan tanah| Diposting pada 24/02/2021 15.16.27 |
Ketika bidang Pengujian tabel Itsvse tidak memiliki indeks, itu ditambahkan

Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com