pri:lucene
اختلافات
عرض الاختلافات بين النسخة المختارة و النسخة الحالية من الصفحة.
| جانبي المراجعة السابقةالمراجعة السابقة | |||
| pri:lucene [2009/03/30 00:35] – alsadi | pri:lucene [2015/04/23 03:21] (حالي) – تحرير خارجي 127.0.0.1 | ||
|---|---|---|---|
| سطر 1: | سطر 1: | ||
| + | ====== ملاحظات على lucene ====== | ||
| + | ===== تلقيم محرك البحث ===== | ||
| + | بالنسبة للجزء الذي يمد lucene بالمستندات | ||
| + | |||
| + | <code groovy> | ||
| + | document = new Document() | ||
| + | document.add(new Field(FIELD_ID, | ||
| + | document.add(new Field(FIELD_DEPTH, | ||
| + | </ | ||
| + | |||
| + | http:// | ||
| + | |||
| + | يجب أن لا نستخدم | ||
| + | الأفضل ANALYZED و NOT_ANALYZED وهو مجرد تغيير اصطلاحي | ||
| + | |||
| + | نستخدم NOT_ANALYZED مع المعرّفات أو عندما نقوم نحن بعمل التقطيع | ||
| + | |||
| + | نستخدم ANALYZED مع الحقول التي نريد أن يتم تجذيعها وتقطيعها وتوحيدها ... | ||
| + | |||
| + | http:// | ||
| + | |||
| + | يجب أن نستعمل Field.Store بقيمة YES مع الحقول التي نريد أن نحفظها حتى تعاد لنا عند البحث مثل معرف الوثيقة واسم الملف وربما عنوان الوثيقة (لتوفير الاستعلام لجلب العنوان) | ||
| + | |||
| + | |||
| + | [[http:// | ||
| + | |||
| + | Term vectors will not be stored in the index. | ||
| + | |||
| + | لذا من الأفضل أن يكون التطبيق | ||
| + | |||
| + | <code groovy> | ||
| + | document = new Document() | ||
| + | document.add(new Field(FIELD_ID, | ||
| + | document.add(new Field(FIELD_FILENAME, | ||
| + | document.add(new Field(FIELD_CONTENT, | ||
| + | </ | ||
| + | التفصيل مذكور في | ||
| + | |||
| + | http:// | ||
| + | |||
| + | ===== بالنسبة للتقطيع والتجذيع ===== | ||
| + | وظيفة المحلل هو التقطيع والتجذيع | ||
| + | < | ||
| + | Typical implementations first build a Tokenizer, which breaks the stream of characters from the Reader into raw Tokens. One or more TokenFilters may then be applied to the output of the Tokenizer. | ||
| + | </ | ||
| + | |||
| + | بالنسبة للجزء | ||
| + | <code groovy> | ||
| + | indexWriter = new IndexWriter(indexDirFile, | ||
| + | </ | ||
| + | |||
| + | فهو يستعمل التحليل القياسي الخاص باللغة الإنجليزية | ||
| + | وكما هو واضح من [[http:// | ||
| + | |||
| + | إن المحلل القياسي ليس أقوى محلل للقة الإنجليزية بل هناك | ||
| + | |||
| + | [[http:// | ||
| + | حيث يقوم بما يلي بعد التقطيع القياسي: | ||
| + | * StandardFilter | ||
| + | * LowerCaseFilter - تحويل كل الحروف إلى صغيرة | ||
| + | * StopFilter - إهمال الكلمات بعض الكلمات الإنجليزية | ||
| + | * SnowballFilter - التجذيع | ||
| + | |||
| + | يجب أن نقوم ببناء محلل خاص بنا مبني من أحدها | ||
| + | |||
| + | http:// | ||
| + | |||
| + | |||
| + | |||
| + | وبالحبث في الكود وجدت محلل للغة العربية | ||
| + | |||
| + | http:// | ||
| + | |||
| + | اكتب | ||
| + | <code bash> | ||
| + | svn co http:// | ||
| + | </ | ||
| + | وهو موثق هنا وهناك كود سي للتجذيع | ||
| + | |||
| + | http:// | ||
| + | |||
| + | وهو طبعا غبي لأنه ظاهر جدا أنه قام بتقطيع صحيفة واعتبر الكلمات المحرردة جدا مهملة مثل غزة واسرائيل | ||
| + | |||
| + | بأي حال | ||
| + | علينا وضع برنامج التحليل والتجذيع الخاص بنا هناك وليس عند تمرير المحتوي عبر document.add | ||
| + | |||
| + | |||
| + | محرك البحث xapian ربما يحتوي معلومات خطا في | ||
| + | |||
| + | http:// | ||
| + | |||
pri/lucene.txt · آخر تعديل: بواسطة 127.0.0.1
