समय-समय पर आंकड़ों से जुड़ी सेवाओं के रखरखाव के टास्क

Apigee Analytics Services से जुड़े कई टास्क, स्टैंडर्ड Postgres टूल का इस्तेमाल करके किए जा सकते हैं. Analytics के डेटाबेस में रखरखाव के जो सामान्य टास्क किए जाते हैं वे ही PostgreSQL के किसी भी डेटाबेस पर किए जाते हैं. जैसे, VACUUM का इस्तेमाल करके डेटाबेस को फिर से व्यवस्थित करना, फिर से इंडेक्स करना, और लॉग फ़ाइल का रखरखाव करना. रूटीन Postgres के रखरखाव की जानकारी http://www.postgresql.org/docs/9.1/static/maintenance.html पर पाई जा सकती है.

PostgreSQL डेटाबेस को बनाए रखने के बारे में ज़्यादा जानकारी के लिए, http://www.postgresql.org/docs/9.1/static/maintenance.html देखें.

Analytics डेटा में काट-छांट करना

Apigee डेटा स्टोर करने की जगह में उपलब्ध आंकड़ों की संख्या बढ़ने पर, हो सकता है कि आपको डेटा को अपने हिसाब से बनाए रखने की ज़रूरत के हिसाब से, डेटा को "अलग" करने की ज़रूरत लगे. किसी खास संगठन और एनवायरमेंट के लिए, डेटा कम करने के लिए नीचे दिए गए निर्देश का इस्तेमाल करें:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge org_name env_name number_of_days_to_retain

स्क्रिप्ट चलाने के लिए, ये निर्देश डालें:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge org_name env_name number_of_days_to_retain [Delete-from-parent-fact - N/Y] [Confirm-delete-from-parent-fact - N/Y]

स्क्रिप्ट में निम्न विकल्प होते हैं:

  • Delete-from-parent-fact डिफ़ॉल्ट : नहीं. अभिभावक तथ्य टेबल से निजी डेटा के रखरखाव के दिनों से पुराना डेटा भी मिटा दिया जाएगा.
  • Skip-confirmation-prompt. डिफ़ॉल्ट: नहीं. अगर नहीं, तो पैरंट तथ्य से डेटा मिटाने से पहले स्क्रिप्ट में पुष्टि करने के लिए कहा जाएगा. अगर पर्ज स्क्रिप्ट अपने-आप काम करती है, तो इसे 'हां' पर सेट करें.

यह निर्देश, "Analytics" स्कीमा में मौजूद "चाइल्डफ़ैक्टेबल" टेबल से यह पता लगाता है कि कौनसे रॉ डेटा सेगमेंट में, वे तारीखें शामिल हैं जिनके लिए डेटा को फ़िल्टर किया जाना है. इसके बाद, उन टेबल को छोड़ दिया जाता है. टेबल छोड़ने के बाद, उन पार्टीशन से जुड़े "childfactables" में मौजूद एंट्री मिटा दी जाती हैं.

चाइल्डफ़ैक्टेबल, हर दिन के हिसाब से बांटा गया तथ्यों वाला डेटा होता है. हर दिन, नए सेगमेंट बनाए जाते हैं और डेटा हर दिन के हिसाब से बांटी गई टेबल में डाला जाता है. इसलिए, बाद में कभी-कभी, जब तथ्यों के बारे में पुराने डेटा की ज़रूरत न हो, तो आपके पास बच्चों के डेटा को पूरी तरह मिटाने का विकल्प होता है.

स्क्रिप्ट में 4.51.00.00 के बाद से ये विकल्प हैं:

  • डिफ़ॉल्ट तौर पर, माता-पिता के लिए डेटा मिटाएं : नहीं. इससे, माता-पिता के तथ्यों की टेबल से वह डेटा भी मिट जाता है जो रखरखाव के दिनों से पहले का है.
  • Confirm-delete-from-parent-fact. डिफ़ॉल्ट: नहीं. अगर नहीं, तो स्क्रिप्ट में पैरंट तथ्य से डेटा मिटाने से पहले, पुष्टि करने का अनुरोध भेजा जाएगा. अगर पर्ज स्क्रिप्ट अपने-आप काम करती है, तो इसे 'हां' पर सेट करें.

एग्रीगेट टेबल डेटा को पूरी तरह मिटाएं

एग्रीगेट टेबल आम तौर पर, तथ्यों की टेबल जितनी जगह नहीं लेती हैं. हालांकि, अगर आपको एग्रीगेट टेबल से पुराना डेटा पूरी तरह मिटाना है, तो इस कमांड को चलाएं:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql agg-data-purge org_name env_name days_to_retain [confirm_data_deletion-Y/N]

जहां confirm_data_deletion एक वैकल्पिक पैरामीटर है. इसकी मदद से, पुष्टि करने के लिए कहा जा सकता है. डिफ़ॉल्ट वैल्यू N है.