|.Aplikasi - Instalasi - Pengembangan - Dokumentasi - Pembelajaran Mendalam - FAQ - TIPS - Setengah Jam EA - Topik Teknis |
kumo search
adalah kerangka mesin pencari ujung ke ujung yang mendukung pengambilan teks lengkap, indeks terbalik, indeks maju, pengurutan, caching, pelapisan indeks, sistem intervensi, pengumpulan fitur, komputasi offline, sistem penyimpanan dan fungsi lainnya. kumo search
berjalan pada platform EA
(Arsitektur Infrastruktur Otomatis Elastis) dan mendukung fungsi seperti工程自动化
,服务治理
,实时数据
,服务降级与容灾
di beberapa ruang komputer dan beberapa cluster.
Dengan berkembangnya Internet, pencarian di seluruh Internet bukan lagi satu-satunya cara untuk memperoleh informasi. Banyak layanan informasi vertikal, seperti e-commerce, jejaring sosial, berita, dll., memiliki mesin pencari sendiri. Karakteristik mesin pencari ini adalah: volume data sedang, bisnis kompleks, dan persyaratan pengalaman pengguna yang tinggi. Perkembangan mesin pencari ini memerlukan banyak dukungan teknik dan algoritma. kumo search
bertujuan untuk menyediakan kerangka kerja mesin pencari yang unik untuk membantu pengguna dengan cepat membangun mesin pencari mereka sendiri. Pada kerangka ini, pengguna dapat menulis logika bisnis dengan python
melalui kompiler AOT di proyek. Kerangka kerja ini akan secara otomatis menghasilkan kode c++
dan perpustakaan dinamis biner, yang akan diperbarui secara dinamis ke mesin pencari. Hal ini memungkinkan iterasi cepat pada mesin pencari.
nomor seri | Nama proyek | menjelaskan | menjelaskan |
---|---|---|---|
1 | collie | Referensikan pustaka header eksternal saja seperti jason, toml, dll., untuk manajemen terpadu | |
2 | turbo | hash, log, kelas kontainer, operasi terkait string | |
3 | melon | komunikasi rpc | |
4 | alkali | Enkapsulasi sistem file, file lokal, hdfs, s3, dll. | Sistem file api terpadu, zlib, lz4, api terpadu zst |
5 | mizar | Berdasarkan rockdb, inti mesin penyimpanan toplingdb | Fungsi wisekey belum dikembangkan. Untuk saat ini, versi resmi rocksdb akan digunakan. |
6 | alioth Yuheng | memori tabel | Sedang dikembangkan |
7 | megreztianquan | Membaca dan menulis kumpulan data | hdf5 cvs bin telah selesai dan c++api tingkat lanjut harus dienkapsulasi |
8 | phekda | Mesin vektor terpadu mengakses api UnifiedIndex untuk menyederhanakan antarmuka | Mendukung snapshot, filter plug-in |
9 | meraktianxuan | Inti mesin pencari yang komprehensif | Untuk dikembangkan |
10 | dubhe Tianshu | kernel nlp | Untuk dikembangkan |
11 | suar | GPU, penghitungan tensor dimensi tinggi CPU, dll. | |
12 | theia | Berdasarkan grafik opengl dan tampilan gambar, server tidak tersedia (tidak ada perangkat tampilan) | |
13 | kerdil | protokol jupyter c++ kernel | |
14 | Keluaran | hercules dan aplikasi jupyter lainnya | Menyelesaikan |
15 | hercules | kompiler python aot | |
16 | karabin | manajer paket c++, generator cmake | Menyelesaikan |
17 | templat karbin | perpustakaan templat cmake | Menyelesaikan |
18 | resep karabin | resep karabin bergantung pada konfigurasi khusus perpustakaan | Menyelesaikan |
18 | hadar | menyarankan kernel layanan saran pencarian | Hampir selesai, bukan open source untuk penggunaan komersial |
19 | neptunus | yaitu layanan front-end | Sedang dikembangkan |
nomor seri | Nama proyek | menjelaskan | jadwal |
---|---|---|---|
1 | sirius | Penemuan layanan server metadata EA, layanan jam global, layanan konfigurasi global, layanan id global | Menyelesaikan |
2 | polaris | Layanan mesin vektor yang berdiri sendiri | Menyelesaikan |
3 | Elnath | Layanan pencarian dan kutipan komprehensif yang berdiri sendiri | Sedang dikembangkan |
4 | Vega | Edisi Cluster Database Mesin Vektor | Selesaikan penggunaan komersial tetapi bukan open source |
5 | arcturus | Versi cluster mesin pencari yang komprehensif | Dalam pengembangan, bukan open source untuk penggunaan komersial |
6 | polusi | Konsol bisnis mesin terintegrasi | Dalam pengembangan, bukan open source untuk penggunaan komersial |
7 | capella | layanan penyortiran ltr | Dalam pengembangan, bukan open source untuk penggunaan komersial |
8 | aldebaran | menyarankan cluster layanan saran pencarian | Dalam pengembangan, bukan open source untuk penggunaan komersial |
9 | nunki | layanan nlp | Dalam pengembangan, bukan open source untuk penggunaan komersial |
Seri berdurasi setengah jam ini berfokus pada pembangunan cepat layanan aplikasi tingkat perusahaan berdasarkan infrastruktur EA
, dengan fokus pada pengoperasian praktis, mulai cepat, pengembangan cepat, penerapan cepat, dan iterasi cepat.
**Topik ini terutama memperkenalkan pengetahuan dasar mesin pencari, serta evolusi, peningkatan dan desain arsitektur pencarian seiring dengan perkembangan teknologi pencarian dan bisnis pencarian, serta prinsip teknis dan implementasi di baliknya. **
EA
adalah infrastruktur aplikasi sisi server. EA
saat ini mendukung sistem operasi centos
dan ubuntu
. Sistem mac
sedang dalam pengembangan dan kami akan berusaha sebaik mungkin untuk mendukung sistem mac
. Namun, kami belum mencobanya. Untuk memudahkan kompilasi dan pengembangan IDE, beberapa fungsi selanjutnya mungkin dicoba untuk kompatibilitas. Untuk penerapan lingkungan dasar, lihat Instalasi dan Penggunaan
cicd
sistem EA
dikelola menggunakan alat carbin. carbin
adalah manajer paket c++
, generator cmake
, alat cicd
. carbin
dapat mengunduh perpustakaan yang bergantung pada pihak ketiga, menghasilkan sistem build cmake
, dan mengkompilasi serta menerapkan proyek. Untuk penggunaan carbin
lihat dokumen karbin
karabin | conda | membuat | BPS | conan | bazel | |
---|---|---|---|---|---|---|
Kompleksitas penggunaan | mudah | tengah | keras | tengah | keras | keras |
Kesulitan instalasi | mudah | biner mudah | Tidak mudah | membuat | mudah | biner keras |
pola ketergantungan | sumber/biner | biner | sumber | sumber | sumber/biner | sumber |
pohon ketergantungan | mendukung | mendukung | mendukung | mendukung | mendukung | mendukung |
kode sumber lokal | mendukung | TIDAK | mendukung | mendukung | TIDAK | mendukung |
kesesuaian | Bagus | tengah | Bagus | Bagus | Bagus | miskin |
kecepatan | Bagus | tengah | miskin | miskin | Bagus | miskin |
conda adalah alat manajemen yang baik. Saya tidak memilih conda karena dependensi kompilasinya relatif rumit dan opsi kompilasi sering menimbulkan masalah, sehingga tidak cocok untuk mengkompilasi proyek C++. Alat manajemen yang disertakan dengan cmake tidak cocok untuk pengelolaan proyek besar. Setiap kali Anda mengkompilasi ulang proyek, hal ini dapat menyebabkan perpustakaan yang bergantung diunduh ulang, dan waktu kompilasi akan terlalu lama. CPM adalah manajer paket C++. Demikian pula, di lingkungan jaringan domestik, pengunduhan pustaka yang bergantung padanya lambat dan tidak cocok untuk pengelolaan proyek besar. Conan adalah pengelola paket C++, tetapi kecepatan unduh pustaka yang bergantung pada conan lambat dan tidak cocok untuk pengelolaan proyek besar.
Pada saat yang sama, carbin juga sangat cocok untuk pengelolaan proyek C++. Carbin dapat dengan cepat menghasilkan sistem cmake manajemen proyek C++, menyatukan proses kompilasi proyek, konfigurasi opsi, dan aturan variabel untuk instalasi dan ekspor setelah kompilasi proyek sistem EA
dapat menemukan proyek dan paket melalui objek aturan find_package
yang tetap. Ini juga cocok untuk digunakan dalam proyek berbasis cmake
apa pun.
Jika Anda mengembangkan berdasarkan buruh pelabuhan, EA
menyediakan pengembangan dasar wadah ea inf:
centos7-openssl11-python-310-gcc-9.3:
lijippy/ea_inf:c7_base_v1