2009-10-12 9 views
16

मैं अपने वेबपैप के लिए एक सोलर-पावर्ड सर्च के साथ खेल रहा हूं, और मुझे लगा कि डेटाबेस के माध्यम से ऐप के साथ समन्वय को संभालने के लिए DataImportHandler का उपयोग करना सबसे अच्छा होगा। मुझे बस last_updated_date फ़ील्ड की जांच करने की लालित्य पसंद है। अच्छी चीज़। हालांकि, मुझे नहीं पता कि इस दृष्टिकोण के साथ दस्तावेज़ों को हटाने का तरीका कैसे है। जिस तरह से मैं इसे देखता हूं, मुझे 2 विकल्प मिलते हैं। जब कोई दस्तावेज़ हटा दिया जाता है, तो मैं क्लाइंट से सोलर को एक स्पष्ट संदेश भेज सकता हूं, या मैं एक "हटाया गया" ध्वज जोड़ सकता हूं और ऑब्जेक्ट को डेटाबेस में छोड़ सकता हूं, ताकि सोलर ध्यान दे सके कि दस्तावेज़ बदल गया है और अब "हटा दिया गया है । " मैं एक क्वेरी फ़िल्टर जोड़ सकता हूं जो हटाए गए ध्वज के साथ परिणामों को नजरअंदाज कर देगा, लेकिन यह लुसीन इंडेक्स में सभी हटाए गए दस्तावेज़ों को शामिल करने में अक्षम है। अन्य लोग क्या करते हैं?सोलर डीआईएच - हटाए गए दस्तावेज़ों को कैसे संभालें?

उत्तर

20

ये आपके विकल्प हैं:

  • उपयोग DIH special commands $ deleteDocById या $ deleteDocByQuery (Solr की आवश्यकता है 1.4 +)
  • आयात करने से पहले पूरे सूचकांक को हटाने के लिए DIH की clean parameter का प्रयोग करें।
  • आयात करने से पहले क्या साफ किया जा रहा है यह परिभाषित करने के लिए preImportDeleteQuery का उपयोग करें। (सोलर 1.4+ की आवश्यकता है)
  • इंडेक्स को अपडेट करने के लिए डीआईएच के बजाय डेटाबेस ट्रिगर्स का उपयोग करें।
  • यदि आप किसी प्रकार का ओआरएम उपयोग कर रहे हैं तो इसकी डीएचएच की बजाय अवरोध क्षमताओं का उपयोग करें। उदाहरण के लिए आप अपडेट, डालने या हटाने पर इंडेक्स को अपडेट करने के लिए hibernate events का उपयोग कर सकते हैं।
+0

यह एक अच्छी सूची है! मैं अभी भी 1.3 का उपयोग कर रहा हूं, लेकिन यह स्विचिंग में देखने का एक ठोस कारण है। –

+0

हाँ, सोलर 1.4 बस आरसी चला गया, अंतिम रिलीज निकट है। –

+0

हाय मॉरिसियो, क्या हटाए गए दस्तावेज़ों पर डेल्टा आयात करते समय preImportDeleteQuery का उपयोग करने के लिए कोई अच्छा उदाहरण हैं? – Joyce

2

मुझे "हटाया गया" झंडा होना पसंद है, इसलिए मैं वास्तव में अपना डेटा नहीं हटाता! इस पर निर्भर करता है कि आप कितने पागल हैं। मुझे मॉरिसियो के सुझाव पसंद हैं ...

+0

"हटाया गया" ध्वज = अच्छा कॉल! – Brian

संबंधित मुद्दे