Pendahuluan (analisis masalah)
Bagi pengembang back-end dan arsitek dari platform konten, situs e-commerce, atau aplikasi tingkat perusahaan yang berkembang pesat, mesin pencari yang kuat dan fleksibel merupakan infrastruktur inti untuk meningkatkan pengalaman pengguna dan efisiensi bisnis. Namun, saat membangun sendiri atau menggunakan layanan pencarian tradisional di cloud, apakah Anda sering kali mengalami masalah-masalah berikut:
- Mengehadapi lonjakan lalu lintas sangat sulit: Saat menghadapi promosi besar atau peristiwa penting, permintaan per detik (QPS) meningkat secara drastis, sedangkan sumber daya cluster yang tetap tidak mampu menanganinya, sehingga layanan pencarian menjadi lambat atau bahkan tidak tersedia, yang secara langsung memengaruhi konversi pengguna dan pendapatan bisnis.
- Sumber daya dan biaya sulit untuk diseimbangkan:Untuk memastikan stabilitas selama periode puncak, Anda harus mengonfigurasi sumber daya sesuai dengan lalu lintas tertinggi. Namun, selama sebagian besar periode normal, banyak sumber daya komputasi dan penyimpanan tetap tidak terpakai, yang mengakibatkan pemborosan biaya yang besar.
- Kompleksitas operasi dan pemeliharaan yang tinggi:Pe kerja operasi dan pemeliharaan seperti menambah dan mengurangi ukuran cluster, peningkatan versi, manajemen indeks, dan penyetelan kinerja membutuhkan tim profesional dan banyak usaha, serta memiliki batasan teknis yang tinggi, yang dapat mengalihkan perhatian dari fokus pada bisnis inti.
Jika Anda sedang kesulitan dengan stabilitas layanan pencarian, biaya tinggi, dan pengoperasian dan pemeliharaan yang rumit, maka artikel ini akan memberi Anda solusi pencarian elastis cloud-native yang lengkap.
Diagram arsitektur solusi dan ikhtisar.
Tujuan:Sebuah gambar bernilai seribu kata, memberikan pembaca pandangan keseluruhan.
Diagram arsitektur:

Ulasan arsitektur:
Aplikasi pengguna (Web/Aplikasi/Server) mengirimkan permintaan pencarian, yang pertama kali didistribusikan oleh Tencent Cloud Load Balancer (CLB), dan kemudian permintaan tersebut mengakses layanan Tencent Cloud Elasticsearch (ES) melalui jaringan pribadi yang aman (VPC). Gugus ES menggunakanArsitektur tanpa server.或Grup Skala Elastis berdasarkan indikator pemantauan.Hal tersebut memungkinkan untuk meningkatkan kapasitas node perhitungan secara cepat berdasarkan permintaan secara real-time. Data ditulis secara real-time melalui komponen seperti Kafka, dan di dalam cluster ES.Pemisahan cerdas antara panas dan dingin.Mekanisme ini menyimpan data panas yang sering diakses di disk SSD untuk memastikan kinerja, secara otomatis memindahkan data dingin yang jarang diakses ke penyimpanan objek (COS), dan mengurangi biaya penyimpanan lebih lanjut dengan teknologi kompresi ZSTD. Seluruh solusi ini tidak hanya menjamin respons dalam hitungan milidetik dan ketersediaan tinggi, tetapi juga mencapai optimasi biaya yang maksimal.
Proposisi nilai:Program ini melaluiElastisitas ekstrem.Untuk mengatasi lalu lintas puncak, melaluiStratifikasi dan kompresi cerdas.Mengurangi biaya keseluruhan, melaluiFull Managed ServiceMenghilangkan beban operasi dan pemeliharaan, ini sempurna mengatasi semua kesulitan yang disebutkan dalam pengantar.
Detail produk dan komponen inti
- Nama komponen: \n Tencent Cloud Elasticsearch Service (ES)
- Memainkan peran:Sebagai inti dari seluruh solusi, menyediakan layanan mesin pencarian dan analisis terdistribusi, menangani semua permintaan indeks dan kueri data.
- Konfigurasi kunci/saran pemilihan:
- Pemilihan arsitektur:Untuk skenario dengan fluktuasi lalu lintas yang sangat besar, sangat disarankan untuk memilihVersi tanpa server.Ini benar-benar mengimplementasikan pembayaran sesuai penggunaan dan penskalaan elastis dalam hitungan milidetik. Untuk skenario dengan fluktuasi yang teratur, Anda dapat memilih versi penskalaan elastis dan mengatur strategi penskalaan berdasarkan penggunaan CPU atau QPS permintaan.
- Konfigurasi node: \n Disarankan untuk mengaktifkan.Node utama eksklusif.Untuk meningkatkan stabilitas cluster; node data menggunakanTipe IO tinggi.或UniversalContohnya, dan dilengkapi dengan hard drive cloud SSD untuk mendapatkan kinerja I/O terbaik.
- Konfigurasi fungsi:Harap pastikan untuk mengaktifkannya.Manajemen Siklus Hidup Indeks (ILM)Fitur ini mengotomatiskan pembagian lapisan panas, dingin, dan suhu normal; aktifkan.Kompresi ZSTD.Untuk mendapatkan rasio kompresi yang lebih tinggi dan kecepatan kompresi yang lebih cepat.
- Mengapa memilihnya: Tencent Cloud ES adalah layanan yang sepenuhnya terkelola yang kompatibel dengan Elasticsearch open-source 100%, yang menyediakan semua kemampuan open-source, serta fitur nilai tambah seperti keamanan tingkat perusahaan, pemantauan dan peringatan, serta peningkatan satu klik. Pengguna tidak perlu khawatir tentang infrastruktur dasar, sehingga mereka dapat fokus pada logika bisnis pencarian itu sendiri.
- Nama komponen: \n Tencent Cloud Object Storage (COS)
- Memainkan peran:Sebagai penyimpanan dasar untuk lapisan data dingin ES, menyimpan data arsip yang jarang diakses, dan menyediakan layanan penyimpanan dengan keandalan tinggi dan biaya sangat rendah.
- Konfigurasi kunci/saran pemilihan: \n Membuat data dingin untuk ES.Penyimpanan standar.或Penyimpanan frekuensi rendah.Hanya sebuah ember, dengan daya tahan hingga 99,99999999991 TP4T (12 nol), tanpa perlu konfigurasi tambahan.
- Mengapa memilihnya: Biaya penyimpanan COS jauh lebih rendah daripada penyimpanan blok berkinerja tinggi. Dengan integrasi yang mulus dengan fungsi ILM ES, data dingin dapat dipindahkan tanpa terganggu, sehingga mengurangi biaya penyimpanan lebih dari 80% tanpa kehilangan kemampuan pelacakan data.
- Nama komponen: \n Tencent Cloud Load Balancing (CLB)
- Memainkan peran:Sebagai pintu masuk terpadu untuk layanan, ini mendistribusikan sejumlah besar permintaan pencarian secara otomatis ke beberapa node data ES di backend, menghilangkan kemungkinan kegagalan pada satu titik, dan menyediakan kemampuan seperti offload HTTPS.
- Konfigurasi kunci/saran pemilihan: \n PilihCLB berbasis aplikasi.Konfigurasikan sebagai pendengar TCP/UDP, dan teruskan ke port 9200 pada node ES. Disarankan untuk mengikat IP publik elastis dan mengonfigurasi batasan bandwidth.
- Mengapa memilihnya: Mencapai keseimbangan beban lalu lintas akses, meningkatkan ketersediaan dan skalabilitas layanan, sambil menyembunyikan detail internal dari cluster backend dari klien, sehingga lebih mudah untuk dikelola.
Ringkasan kelebihan dari solusi tersebut.
- ⚡ Fleksibilitas ekstrem, skalabilitas dalam hitungan detik: Dengan menggunakan Serverless atau Elastic Scaling Group, Anda dapat dengan cepat memperluas skala sesuai dengan tekanan bisnis, lalu secara otomatis mengembalikan sumber daya setelah lonjakan lalu lintas. Ini benar-benar memungkinkan Anda untuk membayar sesuai penggunaan.
- 💸 Mengurangi biaya keseluruhan secara signifikan:Dengan pemisahan data panas dan dingin yang cerdas dan teknologi kompresi ZSTD, biaya penyimpanan data dingin dikurangi lebih dari 80%, menghindari pemborosan akibat menyisihkan banyak sumber daya untuk menghadapi lonjakan permintaan, dan biaya keseluruhan dapat dioptimalkan hingga 50%+.
- 🛡️ Siap digunakan, dengan ketersediaan tinggi tingkat perusahaan: Kami menyediakan SLA ketersediaan layanan 99,95%, mekanisme replikasi built-in, penyebaran lintas zona ketersediaan, kemampuan transfer otomatis, serta fitur keamanan seperti isolasi jaringan VPC, grup keamanan, log akses, dan lain-lain, untuk memastikan kelangsungan bisnis dan keamanan data.
- 🔧 Tanpa perlu pemeliharaan dan pengoperasian, fokuslah pada inovasi bisnis:Layanan terkelola sepenuhnya menghemat pekerjaan operasional dan pemeliharaan yang rumit seperti penyebaran perangkat keras, instalasi perangkat lunak, peningkatan versi, pemulihan kesalahan, dll. Anda hanya perlu melakukan konfigurasi sederhana melalui konsol atau API, dan Anda akan mendapatkan kemampuan pencarian yang kuat, sehingga tim Anda dapat lebih fokus pada pengembangan bisnis inti.
Scenario aplikasi dan klien yang cocok
- Scenario aplikasi khas:
- Situs web/aplikasi e-commerce:Pencarian, penyaringan, dan daftar rekomendasi produk, untuk menangani permintaan pencarian yang sangat banyak dan instan selama periode promosi besar seperti 618 dan Double Eleven.
- Platform konten dan informasi:Pencarian kata kunci dan pencarian teks lengkap untuk berita, video, artikel, dan konten lainnya.
- Analisis log dan pemantauan operasi dan pemeliharaan (ELK):Mengumpulkan, menyimpan, dan menganalisis data log dari server dan aplikasi perusahaan secara real-time, untuk melakukan pemecahan masalah dan mendapatkan wawasan bisnis.
- Pencarian data internal perusahaan: Seperti, mencari informasi pelanggan, pesanan, dan produk dalam sistem CRM, ERP, dan lain-lain.
- Karakteristik pelanggan yang berlaku:
- Beban kerja bisnis memiliki puncak dan palung yang jelas, dan puncaknya sulit diprediksi.
- Jumlah datanya sangat besar (dalam skala TB-PB), dan akses data memiliki karakteristik yang jelas antara data "dingin" dan "panas".
- Perusahaan menengah dan besar yang mencari rasio harga-kinerja tinggi dan berharap mengoptimalkan biaya infrastruktur.
- Semua pengembang yang menginginkan layanan pencarian yang siap pakai, stabil, dan dapat diandalkan, tetapi tidak memiliki tim operasi dan pemeliharaan Elasticsearch yang profesional.