का अर्थ क्या है n_live_tup
और n_dead_tup
में pg_stat_user_tables
या pgstattuple
?
का अर्थ क्या है n_live_tup
और n_dead_tup
में pg_stat_user_tables
या pgstattuple
?
जवाबों:
उन दो स्तंभों का परिणाम है
SELECT pg_stat_get_live_tuples(c.oid) AS n_live_tup
, pg_stat_get_dead_tuples(c.oid) AS n_dead_tup
FROM pg_class c;
तालिका में जीवित और मृत पंक्तियों (ट्यूपल्स) की संख्या का प्रतिनिधित्व करना। मैनुअल में
उन कार्यों का पता लगाएं ।
मृत पंक्तियों को हटा दी गई पंक्तियाँ हैं जिन्हें बाद में INSERT
s या UPDATE
s (स्थान, डेटा नहीं) से नई पंक्तियों के लिए पुन: उपयोग किया जाएगा । कुछ मृत पंक्तियाँ (या आरक्षित मुक्त स्थान) HOT अपडेट (हीप-ओनली ट्यूपल्स) के लिए विशेष रूप से उपयोगी हो सकती हैं जो समान डेटा पेज में कुशलता से अंतरिक्ष का पुन: उपयोग कर सकती हैं। HOT पर और अधिक:
या मृत पंक्तियों को हटा दिया जा सकता है VACUUM FULL
(या सादे VACUUM
अगर यह भाग्यशाली हो जाता है) या मेज पर इसी तरह के संचालन, जिससे तदनुसार भौतिक तालिका सिकुड़ जाती है।
जब भी कोई पंक्ति हटा दी जाती है या अपडेट की जाती है, तो पुराने पंक्ति संस्करण लेन-देन होने के बाद शुरू होने वाले अन्य सभी लेनदेन के लिए अदृश्य हो जाता है। जैसे ही अधिक पुराने पुराने लेन-देन नहीं होते, पंक्ति पूरी तरह से मृत हो जाती है। समवर्ती को संभालने के लिए PostgreSQL के MVCC मॉडल के लिए यह आवश्यक है।
वो सिर्फ आंकड़े हैं । postgresql.conf
यदि आप उन्हें अपने आप अपडेट करना चाहते हैं , तो आपको आँकड़े संग्रह को सक्षम करने की आवश्यकता है । track_counts
हालांकि डिफ़ॉल्ट रूप से होना चाहिए। ध्यान रखें कि आंकड़े तुरंत अपडेट नहीं किए जाते हैं। मैनुअल में इसके बारे में और पढ़ें ।
SELECT n_live_tup FROM pg_stat_user_tables WHEN relname = 'mytable';
यह शून्य क्यों दिखाता है?mytable
6 पंक्तियाँ हैं।