Plugin apack dikembangkan oleh tim Elasticsearch Alibaba Cloud. Plugin ini menyediakan fitur replikasi fisik dan pencarian vektor. Topik ini menjelaskan secara khusus fitur replikasi fisik yang secara signifikan mengurangi overhead CPU serta meningkatkan kinerja penulisan dalam skenario seperti logging dan analitik deret waktu. Dalam skenario tersebut, shard replika dikonfigurasikan untuk indeks dengan volume data besar, sementara visibilitas data tidak sensitif terhadap latensi.
Prasyarat
- Kluster Alibaba Cloud Elasticsearch V6.7.0 atau V7.10.0 telah dibuat. Jika Anda membuat kluster V6.7.0, pastikan versi kernel kluster adalah V1.2.0 atau lebih baru. Dalam topik ini, kluster V6.7.0 digunakan. Untuk informasi lebih lanjut tentang cara membuat kluster, lihat Buat Kluster Alibaba Cloud Elasticsearch.
- Plugin apack telah diinstal pada kluster. Hanya kluster Elasticsearch V6.7.0 dan V7.10.0 yang mendukung plugin apack. Jika Anda menggunakan kluster Elasticsearch V6.7.0 dengan versi kernel lebih lama dari V1.2.0, Anda harus memperbarui kernel kluster sebelum menggunakan plugin apack. Untuk informasi lebih lanjut, lihat Tingkatkan Versi Kluster. Jika versi kernel kluster V6.7.0 Anda adalah V1.2.0 atau lebih baru, plugin apack diinstal secara default dan tidak dapat dihapus. Anda dapat memeriksa status instalasi plugin melalui halaman Plugin.Catatan Setelah plugin apack diinstal, Anda dapat menggunakan fitur replikasi fisik dan pencarian vektor. Untuk informasi lebih lanjut tentang penggunaan fitur pencarian vektor, lihat Gunakan Plugin aliyun-knn.
Informasi latar belakang
Prinsip dasar fitur replikasi fisik adalah sebagai berikut: Jika fitur dinonaktifkan, sistem menulis data ke shard utama setelah node yang menyimpan shard utama menerima permintaan penulisan. Kemudian, sistem menyinkronkan permintaan ke node tempat shard replika berada dan menulis data indeks ke shard replika. Proses ini identik dengan proses di Elasticsearch open source. Dalam proses ini, data indeks ditulis ke shard utama, shard replika, serta translog mereka. Setelah fitur diaktifkan, data indeks ditulis ke shard utama, translognya, dan translog shard replika. Hal ini memastikan keandalan dan konsistensi data. Setiap kali shard utama diperbarui, sistem menyalin data indeks tambahan ke shard replika melalui jaringan. Fitur ini menunda visibilitas data selama beberapa milidetik tetapi secara signifikan meningkatkan kinerja penulisan kluster.
- Lingkungan Pengujian
- Konfigurasi Kluster: lima node data, masing-masing dengan 8 vCPU, 32 GiB memori, dan satu SSD standar 2-TiB.
- Dataset: Dataset nyc_taixs 74-GiB dari Rally yang disediakan oleh Elasticsearch open source.
- Konfigurasi Indeks: lima shard utama, dengan satu shard replika untuk setiap shard utama (konfigurasi default).
- Hasil Pengujian
Layanan Kecepatan penulisan (dokumen/detik) Elasticsearch open source 6.7.0 127.305 Alibaba Cloud Elasticsearch V6.7.0 (dengan fitur replikasi fisik diaktifkan) 184.592 - Kesimpulan Pengujian
Alibaba Cloud Elasticsearch dengan fitur replikasi fisik diaktifkan memberikan kinerja penulisan 45% lebih baik dibandingkan dengan Elasticsearch open source.
Perhatian
- Fitur replikasi fisik dari plugin apack bekerja pada tingkat indeks. Secara default, fitur ini dinonaktifkan untuk indeks yang dibuat sebelum plugin diinstal dan diaktifkan untuk indeks yang dibuat setelah instalasi. Jika indeks Anda dibuat sebelum plugin diinstal, Anda harus mengaktifkan fitur sebelum menggunakannya.
- Anda dapat menonaktifkan fitur replikasi fisik untuk indeks. Namun, sebelum menonaktifkan fitur ini, nonaktifkan indeks terlebih dahulu.
- Sebelum mengaktifkan fitur replikasi fisik untuk indeks, nonaktifkan indeks dan atur jumlah shard replika menjadi 0.
Aktifkan fitur replikasi fisik untuk indeks baru
PUT index-1
{
"settings": {
"index.replication.type" : "segment"
}
}Nonaktifkan fitur replikasi fisik untuk indeks
- Nonaktifkan indeks.
POST index-1/_close - Nonaktifkan fitur replikasi fisik.
PUT index-1/_settings { "index.replication.type" : null } - Aktifkan indeks.
POST index-1/_open
Aktifkan fitur replikasi fisik untuk indeks yang ada
- Atur jumlah shard replika untuk indeks menjadi 0.
PUT index-1/_settings { "index.number_of_replicas": 0 } - Nonaktifkan indeks.
POST index-1/_close - Aktifkan fitur replikasi fisik.
PUT index-1/_settings { "index.replication.type" : "segment" } - Aktifkan indeks.
POST index-1/_open - Atur jumlah shard replika menjadi 1.
PUT index-1/_settings { "index.number_of_replicas": 1 }