مكتبة محرك بحث سريع النص الكامل مكتوبة في الصدأ
إذا كنت تبحث عن بديل لـ Elasticsearch أو Apache Solr ، تحقق من QuickWit ، محرك البحث الموزع الخاص بنا المبني فوق Tantivy.
Tantivy أقرب إلى Apache Lucene من Elasticsearch أو Apache Solr ، بمعنى أنه ليس خادم محرك بحث على الرف ، بل هو صندوق يمكن استخدامه لبناء محرك البحث مثل هذا.
في الواقع ، تانتيفي مستوحى بشدة من تصميم لوسين.
معيار
المعيار التالي ينهار الأداء لأنواع مختلفة من الاستعلامات/المجموعات.
سوف تختلف الأميال الخاصة بك اعتمادًا على طبيعة الاستفسارات وتحميلها.

يمكن العثور على تفاصيل حول المعيار في هذا المستودع.
سمات
- البحث عن النص الكامل
- Tokenizer القابل للتكوين (المتاح لشراء 17 لغة لاتينية) بدعم من طرف ثالث لـ الصينيين (Tantivy-Jieba و cang-jie) ، واليابانية (Lindera ، و Vaporetto ، و Tantivy-Tokenizer-Tiny-inclyer) و Corean (Lindera + Lindera-Ko-dic-builder)
- سريع (تحقق من؟ القياس؟)
- وقت بدء تشغيل صغير (<10 مللي ثانية) ، مثالي لأدوات سطر الأوامر
- تسجيل BM25 (نفس Lucene)
- لغة الاستعلام الطبيعية (على سبيل المثال
(michael AND jackson) OR "king of pop" ) - البحث عن استعلامات العبارات (على سبيل المثال
"michael jackson" ) - الفهرسة الإضافية
- الفهرسة متعددة مؤشرات الترابط (فهرسة اللغة الإنجليزية ويكيبيديا تستغرق أقل من 3 دقائق على سطح المكتب)
- دليل MMAP
- SIMD INTEGER ضغط عندما تتضمن النظام الأساسي/وحدة المعالجة المركزية مجموعة تعليمات SSE2
- الحقول السريعة ذات القيمة الواحدة والمتعددة من حقول U64 و I64 و F64 (تعادل قيم DOC في Lucene)
-
&[u8] الحقول السريعة - Text ، i64 ، U64 ، F64 ، Dates ، IP ، Bool ، و Hericharical Facet Fields
- متجر مستندات مضغوط (LZ4 ، ZSTD ، لا شيء)
- الاستعلامات المدى
- البحث الوجه
- فهرسة قابلة للتكوين (تكرار مصطلح اختياري وفهرسة الموضع)
- JSON Field
- جامع التجميع: رسم بياني ، دلاء النطاق ، المتوسط ، والإحصائيات
- logmergepolicy مع الحذف
- الباحث API WRADER
- شعار جبني مع حصان
غير حميدات
البحث الموزع خارج نطاق tantivy ، ولكن إذا كنت تبحث عن هذه الميزة ، تحقق من QuickWit.
ابدء
يعمل Tantivy على الصدأ المستقر ويدعم Linux و MacOs و Windows.
- مثال البحث البسيط لـ Tantivy
- Tantivy-Cli والبرنامج التعليمي-
tantivy-cli هي واجهة خط الأوامر الفعلية التي تجعل من السهل عليك إنشاء محرك بحث ومستندات فهرسة والبحث عبر CLI أو خادم صغير مع API REST. إنه يمشي من خلال الحصول على محرك بحث ويكيبيديا وتشغيله في غضون دقائق قليلة. - DOC المرجعية لآخر إصدار تم إصداره
كيف يمكنني دعم هذا المشروع؟
هناك العديد من الطرق لدعم هذا المشروع.
- استخدم Tantivy وأخبرنا عن تجربتك على Discord أو عبر البريد الإلكتروني ([email protected])
- الإبلاغ عن الأخطاء
- اكتب مدونة منشور
- مساعدة في الوثائق عن طريق طرح الأسئلة أو إرسال PRS
- رمز المساهمة (يمكنك الانضمام إلى خادم Discord الخاص بنا)
- تحدث عن Tantivy من حولك
رمز المساهمة
نستخدم سير عمل طلب GitHub سحب: إشارة إلى تذكرة GitHub و/أو تضمين رسالة ملزمة شاملة عند فتح العلاقات العامة. لا تتردد في تحديث changelog.md بمساهمتك.
رمز
عند تنفيذ رمز الرمز المميز لـ Tantivy يعتمد على قفص tantivy-tokenizer-api .
استنساخ وبناء محليا
يجمع Tantivy على الصدأ المستقر. للتحقق من الاختبارات وتشغيلها ، يمكنك ببساطة التشغيل:
git clone https://github.com/quickwit-oss/tantivy.git
cd tantivy
cargo test
الشركات التي تستخدم تانتيفي








التعليمات
هل يمكنني استخدام Tantivy بلغات أخرى؟
- بيثون → تانتيفي باي
- روبي → tantiny
يمكنك أيضًا العثور على روابط أخرى على github ولكن قد تكون أقل صيانة.
ما هي بعض الأمثلة على استخدام tantivy؟
- Seshat: قاعدة بيانات رسائل مصفوفة/فهرس
- TANTINY: البحث الكامل عن النص الكامل عن روبي
- LNX: محرك بحث قابل للتكيف ، مطبعي مطبعي مع واجهة برمجة تطبيقات REST
- وأكثر!
في المتوسط ، ما مدى أسرع تانتيفي مقارنة بلوكين؟
- وفقًا لقياس بحثنا في البحث ، يكون Tantivy أسرع تقريبًا من لوسين.
هل يدعم Tantivy الفهرسة الإضافية؟
كيف يمكنني تحرير المستندات؟
- البيانات في tantivy غير قابلة للتغيير. لتحرير وثيقة ، يجب حذف المستند وإثباته.
متى ستكون مستنداتي قابلة للبحث أثناء الفهرسة؟
- سيتم البحث عن المستندات بعد استدعاء
commit على IndexWriter . ستحتاج أيضًا إلى إعادة تحميل IndexReader S الحالي من أجل عكس التغييرات. أخيرًا ، تكون التغييرات مرئية فقط Searcher المكتسب حديثًا.