Elasticsearch dan Sistem Carian Teks Penuh · Pelajaran

Templat Indeks dan Alias

Gunakan templat indeks untuk menggunakan pemetaan dan tetapan secara automatik pada indeks baharu, serta gunakan alias untuk pengurusan indeks yang fleksibel.

Pelajaran 3 daripada 411 langkah

Templat Indeks dan Alias ialah pelajaran Elasticsearch dan Sistem Carian Teks Penuh percuma di CoddyKit. Ini ialah pelajaran 3 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 Elasticsearch dan Sistem Carian Teks Penuh, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Elasticsearch dan Sistem Carian Teks Penuh merangkumi sejumlah 4 pelajaran.

Pengurusan Indeks Pintar

Apabila penggunaan Elasticsearch anda berkembang, anda sering perlu mengendalikan banyak indeks. Fikirkan tentang log, data siri masa atau versi berlainan data aplikasi anda.

  • Mengkonfigurasi tetapan (seperti bilangan serpihan) dan pemetaan (jenis medan) secara manual untuk setiap indeks baharu boleh memakan masa dan mudah menyebabkan ralat.
  • Menukar indeks asas bagi sesuatu aplikasi tanpa masa henti ialah satu lagi cabaran.

Pelajaran ini memperkenalkan dua ciri berkuasa untuk memudahkan tugasan ini: Templat Indeks dan Alias.

Automatikkan Penciptaan Indeks

Templat Indeks adalah seperti pelan tindakan untuk indeks baharu. Templat ini membolehkan anda mentakrifkan tetapan lalai dan pemetaan yang akan digunakan secara automatik pada mana-mana indeks baharu yang sepadan dengan corak tertentu.

  • Ketekalan: Memastikan semua indeks yang sepadan mempunyai konfigurasi yang sama.
  • Automasi: Tidak perlu mencipta pemetaan atau tetapan secara manual untuk aliran data baharu.
  • Fleksibiliti: Kemas kini templat dengan mudah, dan indeks baharu akan menggunakan perubahan tersebut.

Ini amat berguna untuk mengurus indeks harian, mingguan atau bulanan (contohnya, logs-2023-10-26).

Mentakrifkan Templat Indeks

Anda mencipta templat indeks menggunakan API _index_template. Bahagian paling penting ialah index_patterns, yang menentukan nama indeks yang patut digunakan oleh templat tersebut.

Berikut ialah templat asas bernama my_logs_template yang akan digunakan pada mana-mana indeks yang bermula dengan logs-:

PUT _index_template/my_logs_template
{
  "index_patterns": ["logs-*"],
  "template": {
    "settings": {
      "number_of_shards": 1,
      "number_of_replicas": 1
    },
    "mappings": {
      "properties": {
        "timestamp": {
          "type": "date"
        },
        "message": {
          "type": "text"
        }
      }
    }
  },
  "priority": 50
}

Tetapan dan Pemetaan Templat

Dalam contoh sebelumnya, perhatikan blok template. Di sinilah anda mentakrifkan settings dan mappings sebenar yang akan digunakan:

  • settings: Mengawal konfigurasi peringkat indeks seperti number_of_shards, number_of_replicas atau penganalisis tersuai.
  • mappings: Mentakrifkan cara medan dalam dokumen disimpan dan diindeks, termasuk jenis datanya (contohnya, date, text, keyword).

Medan priority membantu menyelesaikan konflik jika berbilang templat sepadan dengan sesuatu indeks.

Memahami Keutamaan Templat

Apakah yang berlaku jika lebih daripada satu templat sepadan dengan nama indeks baharu? Elasticsearch menggunakan priority untuk menentukan templat yang 'menang'.

  • Templat dengan priority yang lebih tinggi didahulukan.
  • Jika tetapan atau pemetaan yang bercanggah ditakrifkan dalam beberapa templat yang sepadan, templat dengan keutamaan tertinggi akan digunakan.
  • Ini membolehkan anda mencipta templat umum (keutamaan rendah) dan templat yang lebih khusus (keutamaan tinggi) yang mengatasi tetapan tertentu untuk corak indeks tertentu.

Anda juga boleh menggunakan _component_templates untuk membina blok tetapan/pemetaan yang boleh digunakan semula dan menggabungkannya dalam templat komposit.

Nama Indeks Fleksibel dengan Alias

Alias Indeks adalah seperti pautan simbolik atau penuding. Alias memberikan nama logik kepada satu atau lebih indeks fizikal.

  • Abstraksi: Aplikasi anda berinteraksi dengan nama alias, bukan nama indeks sebenar.
  • Fleksibiliti: Anda boleh menukar indeks fizikal yang dituju oleh alias tanpa mengemas kini kod aplikasi anda.
  • Operasi Tanpa Masa Henti: Penting untuk mengindeks semula data atau bertukar antara versi indeks dengan lancar.

Alias boleh menunjuk kepada satu indeks atau berbilang indeks. Alias juga boleh merangkumi penapis untuk mengehadkan dokumen yang boleh dilihat melaluinya.

Mencipta dan Menggunakan Alias

Anda boleh mencipta alias semasa mencipta indeks, atau menambahnya kemudian menggunakan titik akhir _alias atau API _aliases.

Berikut ialah cara mencipta indeks dan memberikan alias my_app_data kepadanya:

PUT my_application_v1
{
  "aliases": {
    "my_app_data": {}
  }
}

// Or adding an alias to an existing index:

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "my_application_v1",
        "alias": "my_app_data"
      }
    }
  ]
}

Mengurus Alias Secara Dinamik

Kuasa sebenar alias terletak pada keupayaannya untuk dikemas kini secara atomik. Anda boleh menambah atau mengalih keluar indeks daripada alias dalam satu permintaan.

Contohnya, untuk menukar alias my_app_data daripada my_application_v1 kepada indeks my_application_v2 yang baharu:

POST _aliases
{
  "actions": [
    {
      "remove": {
        "index": "my_application_v1",
        "alias": "my_app_data"
      }
    },
    {
      "add": {
        "index": "my_application_v2",
        "alias": "my_app_data"
      }
    }
  ]
}

Pengindeksan Semula Tanpa Masa Henti

Pengurusan alias dinamik ini penting untuk pengindeksan semula tanpa masa henti. Bayangkan anda perlu mengubah pemetaan indeks, yang memerlukan penciptaan indeks baharu.

  1. Aplikasi anda membuat pertanyaan kepada my_app_data (yang menunjuk kepada my_application_v1).
  2. Anda mencipta my_application_v2 dengan pemetaan baharu dan mengindeks semula data daripada my_application_v1 ke dalamnya.
  3. Setelah my_application_v2 sedia, anda menggunakan API _aliases untuk menukar my_app_data secara atomik daripada my_application_v1 kepada my_application_v2.
  4. Aplikasi anda terus membuat pertanyaan kepada my_app_data tanpa gangguan dan kini mendapatkan data daripada indeks baharu.

Akhir sekali, anda boleh memadam indeks lama my_application_v1.

Semakan Pantas

Antara pernyataan berikut tentang Templat Indeks dan Alias Elasticsearch, yang manakah TRUE?

Ringkasan Templat dan Alias

Tahniah! Anda telah mempelajari cara memanfaatkan dua ciri Elasticsearch lanjutan untuk pengurusan indeks yang kukuh:

  • Templat Indeks: Mengautomatikkan penggunaan tetapan dan pemetaan yang konsisten pada indeks yang baharu dicipta berdasarkan corak nama. Templat ini memastikan keseragaman dan mengurangkan konfigurasi manual.
  • Alias Indeks: Menawarkan lapisan abstraksi yang membolehkan aplikasi anda berinteraksi dengan nama logik yang stabil, sementara indeks fizikal yang mendasarinya boleh berubah. Alias penting untuk menjalankan pengindeksan semula tanpa masa henti dan operasi indeks fleksibel yang lain.

Menguasai konsep ini penting untuk membina penyelesaian Elasticsearch yang boleh diskalakan dan mudah diselenggara.

Percuma untuk bermula

Pelajari Elasticsearch dan Sistem Carian Teks Penuh 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
12
Pelajaran
48

Soalan Lazim

Adakah pelajaran “Templat Indeks dan Alias” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Elasticsearch dan Sistem Carian Teks Penuh, termasuk “Templat Indeks dan Alias”, 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 Elasticsearch dan Sistem Carian Teks Penuh merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Templat Indeks dan Alias”?

Gunakan templat indeks untuk menggunakan pemetaan dan tetapan secara automatik pada indeks baharu, serta gunakan alias untuk pengurusan indeks yang fleksibel. Anda berlatih Elasticsearch dan Sistem Carian Teks Penuh 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 Elasticsearch dan Sistem Carian Teks Penuh?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Elasticsearch dan Sistem Carian Teks Penuh 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 3 daripada 4.

Berapa lamakah pelajaran “Templat Indeks dan Alias” 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 Elasticsearch dan Sistem Carian Teks Penuh ini?

Ya. Setiap pelajaran Elasticsearch dan Sistem Carian Teks Penuh 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. Menyesuaikan Pemetaan Medan
  2. Pemetaan Dinamik berbanding Eksplisit
  3. Templat Indeks dan Alias
  4. Jenis Medan Bersarang dan Objek
← Kembali ke Elasticsearch dan Sistem Carian Teks Penuh