Prestasi PostgreSQL & Pengoptimuman Pertanyaan · Pelajaran

Indeks Gubahan dan Indeks Meliputi

Percepat pertanyaan berbilang lajur dengan indeks gubahan dan hapuskan carian jadual sepenuhnya menggunakan indeks meliputi dengan INCLUDE.

Pelajaran 4 daripada 413 langkah

Indeks Gubahan dan Indeks Meliputi ialah pelajaran Prestasi PostgreSQL & Pengoptimuman Pertanyaan percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Prestasi PostgreSQL & Pengoptimuman Pertanyaan, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Prestasi PostgreSQL & Pengoptimuman Pertanyaan merangkumi sejumlah 4 pelajaran.

Melangkaui Indeks Satu Lajur

Banyak kueri menapis lebih daripada satu lajur. Indeks komposit merangkumi beberapa lajur dan boleh melayani kueri sedemikian dengan jauh lebih baik berbanding indeks satu lajur yang berasingan.

Mencipta Indeks Komposit

Senaraikan lajur mengikut susunan yang anda mahu indekskan.

CREATE INDEX idx_orders_cust_date
ON orders (customer_id, order_date);

Susunan Lajur Penting

Indeks komposit pada (a, b) membantu kueri yang menapis a sahaja atau a AND b, tetapi secara umum TIDAK membantu kueri yang hanya menapis b.

Peraturan Awalan Paling Kiri

PostgreSQL boleh menggunakan mana-mana awalan paling kiri bagi indeks. Jadi (a, b, c) melayani penapis pada a, a+b dan a+b+c.

Menyusun Mengikut Keberpilihan

Letakkan lajur yang paling terpilih atau paling kerap ditapis di hadapan, lazimnya lajur kesamaan sebelum lajur julat, untuk memaksimumkan bilangan baris yang disingkirkan oleh indeks pada peringkat awal.

CREATE INDEX idx_orders_status_date
ON orders (status, order_date);

Kos Carian Timbunan

Imbasan indeks biasa mencari baris yang sepadan kemudian mengunjungi jadual (timbunan) untuk membaca lajur lain. Pengambilan tambahan ini menambah kos I/O.

Indeks Meliputi

Indeks meliputi mengandungi setiap lajur yang diperlukan oleh kueri, jadi PostgreSQL boleh menjawab daripada indeks sahaja melalui Imbasan Indeks Sahaja, tanpa mengunjungi timbunan.

Menggunakan INCLUDE

Klausa INCLUDE menambah lajur bukan kunci pada halaman daun indeks supaya lajur tersebut tersedia tanpa menjadi sebahagian daripada kunci yang boleh dicari.

CREATE INDEX idx_orders_cust_incl
ON orders (customer_id)
INCLUDE (order_date, total);

Mengesahkan Imbasan Indeks Sahaja

Semak pelan; anda mahu melihat Imbasan Indeks Sahaja, bukannya Imbasan Indeks bersama pengambilan timbunan.

EXPLAIN ANALYZE
SELECT order_date, total
FROM orders WHERE customer_id = 42;

Peringatan tentang Peta Keterlihatan

Imbasan Indeks Sahaja masih memerlukan timbunan apabila halaman tidak ditanda sebagai kelihatan sepenuhnya. Mengekalkan jadual dalam keadaan vakum yang baik memastikan peta keterlihatan dikemas kini supaya imbasan kekal hanya menggunakan indeks.

VACUUM ANALYZE orders;

Kos Indeks Lebar

Lebih banyak lajur bermakna indeks lebih besar dan penulisan lebih perlahan. Tambahkan lajur meliputi hanya untuk kueri penting, bukan di semua tempat.

Semakan Pantas

Uji perkara yang telah anda pelajari.

Imbas Kembali

Anda telah mempelajari cara indeks komposit melayani penapis berbilang lajur di bawah peraturan awalan paling kiri, kepentingan susunan dan keberpilihan lajur, serta cara indeks meliputi dengan INCLUDE membolehkan Imbasan Indeks Sahaja, dengan mengambil kira saiz dan kos penulisan yang lebih besar.

Percuma untuk bermula

Pelajari SQL dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
22
Pelajaran
88

Soalan Lazim

Adakah pelajaran “Indeks Gubahan dan Indeks Meliputi” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Prestasi PostgreSQL & Pengoptimuman Pertanyaan, termasuk “Indeks Gubahan dan Indeks Meliputi”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Prestasi PostgreSQL & Pengoptimuman Pertanyaan merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Indeks Gubahan dan Indeks Meliputi”?

Percepat pertanyaan berbilang lajur dengan indeks gubahan dan hapuskan carian jadual sepenuhnya menggunakan indeks meliputi dengan INCLUDE. Anda berlatih Prestasi PostgreSQL & Pengoptimuman Pertanyaan menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Prestasi PostgreSQL & Pengoptimuman Pertanyaan?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Prestasi PostgreSQL & Pengoptimuman Pertanyaan di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.

Berapa lamakah pelajaran “Indeks Gubahan dan Indeks Meliputi” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Prestasi PostgreSQL & Pengoptimuman Pertanyaan ini?

Ya. Setiap pelajaran Prestasi PostgreSQL & Pengoptimuman Pertanyaan menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Asas Indeks B-Tree
  2. Mencipta dan Menggunakan Indeks
  3. Bila dan Cara Mengindeks
  4. Indeks Gubahan dan Indeks Meliputi
← Kembali ke Prestasi PostgreSQL & Pengoptimuman Pertanyaan