postgresql अपरिवर्तनीय पठन वर्कलोड ट्यूनिंग - postgresql, डेटाबेस-ट्यूनिंग

मेरे पास एक मेज है जहां गैर-प्राथमिक कुंजी कॉलम निर्धारक को प्राथमिक कुंजी दिया जाता है।

मुझे लगता है कि यह बहुत आम हो सकता है, उदाहरण के लिए एक महंगी फ़ंक्शन के संस्मरण / कैशिंग का प्रतिनिधित्व करने वाली तालिका, या जहां प्राथमिक कुंजी अन्य कॉलम का एक हैश है।

आगे यह मानकर कि कार्यभार ज्यादातर 1-100 अलग-अलग पंक्तियों का है, और जो लिखता है उसे सबसे अच्छा प्रदर्शन देता है उसके आधार पर बैच या "एसिंक्स" लिखा जा सकता है।

What are interesting tuning options on the table/database in this case?

उत्तर:

जवाब के लिए 0 № 1

यह एक आदर्श उम्मीदवार होगाindex-only-scans in versions 9.2 or up, by creating an index on all the primary key columns plus the frequently queried other columns. Aggressively vacuum the table (i.e. manually after every batch update) because the default autovacuum settings are not aggressive enough to get maximal benefit from IOS.


संबंधित सवाल
सबसे लोकप्रिय