全部产品
Search
文档中心

Elasticsearch:Catatan rilis AliES

更新时间:Jul 06, 2025

AliES adalah kernel yang sangat disesuaikan untuk Alibaba Cloud Elasticsearch. Kernel ini mendukung semua fitur dari Elasticsearch sumber terbuka serta menyediakan fitur tambahan seperti optimasi metrik, pooling thread, optimasi pemutusan sirkuit, dan peningkatan kinerja query serta penulisan. Fitur-fitur ini dikembangkan berdasarkan pengalaman luas tim Alibaba Cloud Elasticsearch dalam berbagai skenario. Fitur tambahan ini membantu meningkatkan stabilitas dan kinerja kluster, mengurangi biaya, serta memperluas cakupan pemantauan dan operasi & pemeliharaan. Topik ini menjelaskan fitur baru dan fitur dioptimalkan di setiap versi AliES.

Elasticsearch V7.16.2

Versi Kernel 1.7.0

Elasticsearch V7.10.0

Versi Kernel 1.12.0

  • Fitur Baru dan Dioptimalkan

    • Pencarian

      • Plugin analysis-dynamic-synonym disediakan.

      • Fitur penyeimbangan shard utama didukung.

      • Panjang nilai parameter dalam query wildcard dan prefix dibatasi.

      • Query kompleks seperti query terms dan prefix dari tipe keyword dioptimalkan berdasarkan doc_values. Ini meningkatkan kinerja query hingga 80% dalam skenario dengan rasio hit rendah.

      • Query numeric term dan terms dioptimalkan berdasarkan doc_values. Ini meningkatkan kinerja query hingga 80% dalam skenario dengan rasio hit rendah.

      • Kinerja query term dan terms BKD-tree dioptimalkan hingga 30% berdasarkan strategi lazy loading.

  • Perbaikan Bug

    • Manajemen tugas di lapisan penyimpanan dioptimalkan untuk menyelesaikan masalah berikut: Komunikasi berbasis RPC kadang-kadang macet.

    • Proses replikasi data dioptimalkan untuk menghindari kesalahan fail engine pada node replika.

    • Proses promosi shard replika dioptimalkan untuk menghindari ketidaksesuaian antara indeks utama dan indeks replika.

Versi Kernel 1.10.0

  • Fitur Baru dan Dioptimalkan

    • Toko/Snapshot

      LuceneVerifyIndexOutput dioptimalkan untuk meningkatkan kecepatan pemulihan indeks. Untuk informasi lebih lanjut, lihat ES pull 96975.

    • Koordinasi Kluster

      ClusterState tidak lagi direferensikan oleh tugas persisten. Dalam kluster berskala besar, penggunaan memori node master khusus tinggi. Untuk menghindari timeout pemilihan pemimpin dalam kluster berskala besar, nilai default cluster.election.initial_timeout diubah dari 100 milidetik menjadi 1 detik. Untuk informasi lebih lanjut, lihat ES pull 90724.

    • Pencarian

      • Fitur timeout query end-to-end ditambahkan untuk secara efektif mengontrol durasi query keseluruhan. Dengan fitur ini, beberapa hasil dapat dikembalikan jika terjadi timeout.

      • Beberapa bidang ditambahkan ke log akses.

  • Perbaikan Bug

    • Lucene

      Masalah berikut telah diperbaiki: File indeks DV update yang direferensikan oleh Lucene Merge dihapus oleh operasi flush konkuren. Untuk informasi lebih lanjut, lihat Lucene.

Versi Kernel 1.9.0

  • Fitur Baru dan Dioptimalkan

    • Kerangka kerja untuk query konkuren direkonstruksi dan dioptimalkan untuk kluster Edisi Standar yang ditingkatkan Kernel.

      • Durasi query berkurang.

      • Memori dapat digunakan kembali, dan penggunaan memori Java Virtual Machine (JVM) tinggi serta overhead garbage collection (GC) diperbaiki. Ini meningkatkan pemanfaatan sumber daya.

      • Durasi fase fetch dalam pengambilan konkuren teks mentah berkurang. Misalnya, jika parameter ukuran diatur ke 10.000, durasi fase fetch dapat dikurangi 6 hingga 10 kali lipat, dan durasi keseluruhan dapat dikurangi 50%.

      • Jenis agregasi berikut didukung dalam query: agregasi persentil, agregasi peringkat persentil, agregasi sampler, agregasi diversified sampler, agregasi teks signifikan, agregasi geodistance, agregasi geohash grid, agregasi geotile grid, agregasi geobounds, agregasi geocentroid, dan agregasi metrik terprogram.

    • Bidang seperti traceId dan bidang terkait durasi query ditambahkan ke log akses end-to-end. Anda dapat menggunakan traceId untuk menghubungkan proses query.

    • Pemetaan struktur indeks kustom dan parsing teks mentah dioptimalkan. Ini menggandakan performa penulisan untuk teks mentah.

  • Kode berikut dapat digunakan untuk mengaktifkan caching. Ini dapat menyelesaikan masalah berikut: caching tidak diaktifkan untuk subquery dalam beberapa skenario di mana sedikit query utama tetapi banyak subquery dilakukan.

    PUT _cluster / settings 
    {
    	"persistent": {
    		"search.query_cache_get_wait_lock_enable": "true",
    		"search.query_cache_skip_factor": "200000000"
    	}
    }
  • Ketidaksesuaian data antara shard utama dan shard replika dioptimalkan dalam skenario dengan query k-nearest neighbors (k-NN).

  • Perbaikan Bug

    • Masalah berikut telah diperbaiki: Setelah shard pada node dimigrasi selama pembaruan biru-hijau, perintah GET _cat/node gagal dijalankan.

Versi Kernel 1.8.0

Plugin aliyun-timestream disediakan. Plugin ini digunakan untuk meningkatkan kinerja penyimpanan dan penggunaan data deret waktu. Plugin ini memungkinkan Anda membuat, memodifikasi, menanyakan, dan menghapus indeks deret waktu, mengeksekusi pernyataan PromQL untuk menanyakan data yang disimpan di Elasticsearch, dan menulis data ke indeks deret waktu menggunakan protokol baris InfluxDB. Plugin ini membantu menyederhanakan operasi yang diperlukan untuk mengelola data deret waktu dalam skenario deret waktu. Untuk informasi lebih lanjut, lihat Ikhtisar aliyun-timestream, Integrasi Elasticsearch dengan Prometheus dan Grafana berdasarkan aliyun-timestream untuk implementasi pemantauan terintegrasi, dan Integrasi aliyun-timestream dengan protokol baris InfluxDB.

Versi Kernel 1.7.0

  • Fitur Baru

    Plugin analytic-search disediakan, yang secara signifikan meningkatkan kinerja query dalam skenario terkait log. Deskripsi berikut memberikan detailnya:

    • Kebijakan penggabungan indeks dan kebijakan agregasi histogram tanggal dioptimalkan. Ini meningkatkan kinerja query tanpa syarat atau dengan satu kondisi lebih dari enam kali lipat dalam skenario query log, seperti query yang dilakukan pada halaman Discover Kibana. Dalam skenario di mana lebih dari 1 TB data ditambahkan setiap hari, waktu untuk menyelesaikan query berkurang dari menit menjadi 5 detik atau bahkan kurang.

    • Query konkuren dioptimalkan. Untuk query konkuren, recall data konkuren didukung. Ini meningkatkan pemanfaatan sumber daya dan mengurangi waktu rata-rata yang diperlukan untuk recall data dalam skenario terkait log hingga 50%.

    • Segmen kecil hanya-baca terus digabungkan sebelum penggabungan paksa. Ini meningkatkan kinerja query sebesar 20%.

  • Peningkatan Kinerja

    • Algoritma kompresi ringan LZ4 digunakan untuk mentransmisikan permintaan tulis antara node klien dan node data. Ini mengurangi overhead lebar pita jaringan node sebesar 30%.

    • Penggabungan paksa dapat dilakukan secara paralel untuk shard. Ini mengurangi durasi penggabungan paksa.

    • Blok data besar dalam teks mentah dapat dikompresi, dan parameter untuk algoritma kompresi zstd dioptimalkan. Ini mengurangi ukuran teks mentah sebesar 8%. Selain itu, metode Patched Frame of Reference (PFOR) didukung untuk posting Lucene. Ini mengurangi ukuran indeks sebesar 3%.

  • Perbaikan Bug

    • Masalah berikut telah diperbaiki: Fitur source_reuse_doc_values dari plugin aliyun-codec tidak mendukung bidang dengan nama yang mengandung titik (.).

Versi Kernel 1.6.0

  • Fitur source_reuse_doc_values ditambahkan ke plugin aliyun-codec untuk lebih mengurangi ukuran indeks dan biaya. Untuk informasi lebih lanjut, lihat Gunakan plugin aliyun-codec.

  • Plugin aliyun-qos diperbarui ke V2.0 untuk mendukung jenis dan parameter throttling yang lebih halus. Untuk informasi lebih lanjut, lihat Gunakan plugin aliyun-qos.

Versi Kernel 1.5.0

  • Plugin aliyun-codec disediakan untuk meningkatkan kinerja kompresi kernel untuk kluster. Untuk informasi lebih lanjut, lihat Gunakan plugin aliyun-codec.

  • Bug terkait tipe bidang search_as_you_type diperbaiki. Untuk informasi lebih lanjut, lihat search_as_you_type.

Versi Kernel 1.4.0

  • Plugin aliyun-knn diperbarui untuk meningkatkan kinerja penulisan. Plugin ini mendukung query skrip dan terintegrasi dengan kemampuan teroptimalkan perangkat keras terkait untuk meningkatkan fitur pencarian vektor.

  • Plugin aliyun-qos dioptimalkan untuk meningkatkan throttling tingkat kluster. Saat menggunakan plugin ini, Anda tidak perlu fokus pada topologi dan beban node di kluster Elasticsearch Anda. Lalu lintas didistribusikan secara otomatis ke node. Ini meningkatkan kemudahan penggunaan dan stabilitas kluster.

Versi Kernel 1.3.0

  • Fitur isolasi query lambat disediakan untuk mengurangi dampak query anomali pada stabilitas kluster.

  • Plugin gig disediakan untuk melakukan switchover dalam hitungan detik setelah terjadi pengecualian pada kluster. Plugin ini mencegah jitter query yang disebabkan oleh node anomali.

    Catatan

    Untuk kluster Elasticsearch V7.10.0 Edisi Standar, plugin gig diintegrasikan ke dalam plugin aliyun-qos. Plugin aliyun-qos diinstal secara default.

  • Fitur replikasi fisik disediakan untuk meningkatkan kinerja penulisan indeks yang memiliki shard replika.

  • Fitur pemangkasan disediakan untuk indeks deret waktu untuk meningkatkan kinerja query indeks.

  • Log akses kluster dapat dilihat. Log ini berisi bidang seperti Waktu, IP Node, dan Konten. Anda dapat menggunakan log ini untuk mendiagnosis masalah dan menganalisis permintaan.

  • Kinerja penjadwalan node master khusus ditingkatkan sepuluh kali lipat. Setiap node master khusus dapat menjadwalkan lebih banyak shard.

Elasticsearch V6.7.0

Versi Kernel 1.3.0

  • Fitur isolasi query lambat disediakan untuk mengurangi dampak query anomali pada stabilitas kluster.

  • Plugin gig disediakan untuk melakukan switchover dalam hitungan detik setelah terjadi pengecualian pada kluster. Plugin ini mencegah jitter query yang disebabkan oleh node anomali.

Penting

Sebelum menggunakan fitur-fitur di atas, pastikan versi kernel kluster Elasticsearch Anda adalah V1.3.0. Jika tidak, tingkatkan kernelnya. Anda hanya dapat meningkatkan kernel kluster Edisi Standar yang versi kernellnya adalah V0.3.0, V1.0.2, atau V1.3.0.

Versi Kernel 1.2.0

  • Fitur replikasi fisik disediakan untuk meningkatkan kinerja penulisan indeks yang memiliki shard replika.

  • Fitur pemangkasan disediakan untuk indeks deret waktu untuk meningkatkan kinerja query indeks.

  • Deduplikasi data berbasis primary key dioptimalkan selama query. Ini meningkatkan kinerja penulisan dokumen yang mengandung primary key sebesar 10%.

  • Finite state transducers (FST) yang tidak memakan heap memory didukung. Sebuah node tunggal dapat menyimpan maksimum 20 TiB data indeks.

Versi Kernel 1.0.2

Log akses kluster dapat dilihat. Log ini berisi bidang seperti Waktu, IP Node, dan Konten. Anda dapat menggunakan log ini untuk mendiagnosis masalah dan menganalisis permintaan.

Versi Kernel 1.0.1

Kebijakan pemutusan sirkuit dapat dikonfigurasi untuk JVM. Saat penggunaan heap memory JVM kluster Anda mencapai 95%, sistem menolak permintaan untuk melindungi kluster. Parameter berikut digunakan untuk mengonfigurasi kebijakan:

  • indices.breaker.total.use_real_memory: Nilai defaultnya adalah false.

  • indices.breaker.total.limit: Nilai defaultnya adalah 95%.

Versi Kernel 0.3.0