मुझे लगता है कि 'SYNC EVERY' विकल्प, जैसा कि पिछले उत्तर में वर्णित है, केवल ओरेकल 10 जी या नए में उपलब्ध है। यदि आप ओरेकल के पुराने संस्करण का उपयोग कर रहे हैं तो आपको समय-समय पर सिंक ऑपरेशन करना होगा। उदाहरण के लिए, आप निम्न संग्रहीत प्रक्रिया बना सकते हैं:
CREATE OR REPLACE
Procedure sync_ctx_indexes
IS
CURSOR sql1 is select distinct(pnd_index_owner||'.'||pnd_index_name) as index_name from ctx_pending;
BEGIN
FOR rec1 IN sql1 LOOP
ctx_ddl.sync_index(rec1.index_name);
END LOOP;
END;
और फिर इसे DBMS_JOB के माध्यम से चलाने के लिए शेड्यूल:
DBMS_JOB.SUBMIT(job_id, 'sync_ctx_indexes;', SYSDATE, 'SYSDATE + 1/720');
सूचकांक अनुकूलन के लिए के रूप में, निम्न आदेश इस्तेमाल किया जा सकता है (यह भी DBMS_JOB या के साथ निर्धारित किया जा सकता क्रॉन के माध्यम से):
alter index my_index rebuild online parameters('optimize full maxtime 60');
इसी तरह के फ़ंक्शन के साथ CTX_ * पैकेज भी उपलब्ध है।
आपके पास क्या संकेत हैं कि सूचकांक सिंक में नहीं रह रहा है? – dpbradley
इस तरह के औजारों के लिए यह आपकी सामान्य आवश्यकताओं के बारे में धारणा नहीं है। बड़ी मात्रा में असंगठित डेटा पर सूचकांक बनाना और बनाए रखना आम तौर पर कुछ विचारों की आवश्यकता होती है ताकि आपके डिज़ाइन विकल्प स्वीकार्य ट्रेडऑफ के साथ समाधान उत्पन्न कर सकें। एक खोज इंजन के लिए अद्यतन और रखरखाव रणनीतियों को एक सहयोगी संलेखन समाधान से बहुत अलग होगा, जो एनालिटिक्स का समर्थन करने वाले एपर्ट फॉर्म को खराब करता है। ओरेकल आपको चुनने के लिए सिंक विकल्पों की एक छोटी सी श्रृंखला देता है, और केवल 10k दैनिक डीएमएल के साथ आप उनमें से किसी के साथ दूर हो सकते हैं। – Roy