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" टेबल की जांच करता है. इससे यह पता चलता है कि रॉ डेटा के कौनसे पार्टिशन में, डेटा प्रूनिंग की तारीखें शामिल हैं. इसके बाद, यह उन टेबल को हटा देता है. टेबल ड्रॉप होने के बाद, "childfactables" में मौजूद उन पार्टिशन से जुड़ी एंट्री मिटा दी जाती हैं.
Childfactables, रोज़ाना के हिसाब से अलग-अलग किया गया फ़ैक्ट डेटा होता है. हर दिन नए पार्टिशन बनाए जाते हैं और डेटा को रोज़ाना सेगमेंट में बांटी गई टेबल में डाला जाता है. इसलिए, बाद में जब पुराने फ़ैक्ट डेटा की ज़रूरत नहीं होगी, तब उससे जुड़े childfactables को मिटाया जा सकता है.
वर्शन 4.51.00.00 के बाद से, स्क्रिप्ट में ये विकल्प मौजूद हैं:
- Delete-from-parent-fact डिफ़ॉल्ट : No. इससे पैरंट फ़ैक्ट टेबल से, डेटा के रखरखाव की अवधि से पुराना डेटा भी मिट जाएगा.
- 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 है.