milli
v0.41.3

مؤشر متزامن مع خوارزميات البحث السريعة والذات صلة
محتوى هذا المستودع متاح الآن في مستودع Meilisearch في مساحة العمل milli .
يحتوي هذا المستودع على المحرك الأساسي المستخدم في Meilisearch.
أنه يحتوي على مكتبة يمكنها إدارة فهرس واحد وفهرس واحد فقط. Meilisearch يدير المؤشر المتعدد نفسه. Milli غير قادر على تخزين التحديثات في أحد المتجر: إنها مهمة شيء آخر أعلاه وهذا هو السبب في أنه قادر فقط على معالجة تحديث واحد في وقت واحد.
يحتوي هذا المستودع على صناديق لتصحيح المحرك بسرعة:
benchmarks .cli Crate عبارة عن واجهة سطر أوامر بسيطة تساعد على تشغيل FlameGraph فوقه.filter-parser على محلل بناء جملة مرشح Meilisearch.flatten-serde-json على المكتبة التي تتساقط كائنات Value Serde-json مثل Elasticsearch.json-depth-checker للإشارة إلى ما إذا كان يجب تسوية JSON. Milli هي مكتبة تقوم بالبحث في الأشياء ، ويجب تضمينها في البرنامج. يمكنك حساب توثيقه باستخدام cargo doc --open .
فيما يلي مثال على الاستخدام للمكتبة حيث نقوم بإدراج المستندات في المحرك ونبحث عن واحد منها مباشرة.
let path = tempfile :: tempdir ( ) . unwrap ( ) ;
let mut options = EnvOpenOptions :: new ( ) ;
options . map_size ( 10 * 1024 * 1024 ) ; // 10 MB
let index = Index :: new ( options , & path ) . unwrap ( ) ;
let mut wtxn = index . write_txn ( ) . unwrap ( ) ;
let content = documents ! ( [
{
"id" : 2 ,
"title" : "Prideand Prejudice" ,
"author" : "Jane Austin" ,
"genre" : "romance" ,
"price$" : "3.5$" ,
} ,
{
"id" : 456 ,
"title" : "Le Petit Prince" ,
"author" : "Antoine de Saint-Exupéry" ,
"genre" : "adventure" ,
"price$" : "10.0$" ,
} ,
{
"id" : 1 ,
"title" : "Wonderland" ,
"author" : "Lewis Carroll" ,
"genre" : "fantasy" ,
"price$" : "25.99$" ,
} ,
{
"id" : 4 ,
"title" : "Harry Potter ing fantasy