2015-12-09 14 views
5

लोचदार खोज अनुक्रमणिका से पुराने डेटा को कैसे हटाएं क्योंकि सूचकांक में हर दिन बड़ी मात्रा में डेटा डाला जा रहा है।लोचदार खोज से पुराने डेटा को हटाएं या हटाएं

+0

यह प्रश्न क्यों कम किया गया था? – slim

उत्तर

5

आप delete by query प्लगइन के साथ ऐसा कर सकते हैं।

मान लिया जाये कि आप अपने सूचकांक में कुछ timestamp या creation date क्षेत्र है, आपकी क्वेरी इस

DELETE /your_index/your_type/_query 
{ 
    "query": { 
    "range": { 
     "timestamp": { 
     "lte": "now-10y" 
     } 
    } 
    } 
} 

कुछ इस तरह दिखाई 10 साल से अधिक उम्र के रिकॉर्ड को नष्ट करेगा होगा।

मुझे आशा है कि यह दैनिक अनुक्रमित और पुराने सूचकांक नाम के रूप में उपयोग करने के लिए उर्फ ​​

+0

क्या किसी स्क्रिप्ट के रूप में ऐसा करने का कोई तरीका है इसलिए हमें मैन्युअल रूप से क्वेरी चलाने की आवश्यकता नहीं है – sri

+0

क्या यह डिलीट क्वेरी इंडेक्स से पूरी तरह से रिकॉर्ड्स मिटा देती है और नए रिकॉर्ड्स को स्थानांतरित करने की अनुमति देती है – sri

+0

आप सेट कर सकते हैं इसे रोजाना करने के लिए 'क्रॉन जॉब' ऊपर, रिकॉर्ड्स ** ** हटाए जाने के बाद ** मिटा नहीं दिए जाते हैं, वे हटाए गए ** चिह्नित ** ** हटाए गए हैं और सेगमेंट विलय के दौरान वे वास्तव में हटा दिए जाते हैं, तो आप इंडेक्स आकार में वृद्धि देख सकते हैं हटाना या अपडेट करना, आप अपने सूचकांक को अनुकूलित करने के लिए [बल विलय] (https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-forcemerge.html) का उपयोग कर सकते हैं – ChintanShah25

4

स्प्लिट डेटा मदद करता है। फिर दैनिक प्रत्येक सूचकांक हटाएं। जैसे लॉगस्टैश:

दैनिक सूचकांक: logstash-20151011, logstash-20151012, logstash-20151013

पूर्ण उपनाम: logstash

तो दैनिक पिछले सूचकांक को हटा दें।

+1

एकाधिक अनुक्रमणिका का उपयोग करने का तरीका है। पुरानी अनुक्रमणिका को हटाने के लिए आप क्यूरेटर का उपयोग कर सकते हैं: https://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html – slim

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