PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

पृष्ठ लेआउट के साथ तालिका का आकार

आपकी गणना कई बिंदुओं पर बंद है।

टिप्पणी में प्रश्न को संबोधित करने के लिए मेरा बोल्ड जोर।

  • HeapTupleHeader 23 बाइट्स लेता है . लेकिन प्रत्येक टपल ("आइटम" - पंक्ति या अनुक्रमणिका प्रविष्टि) में एक आइटम पहचानकर्ता होता है इसके लिए डेटा पृष्ठ की शुरुआत में, उल्लिखित 27 बाइट्स पर कुल। यह अंतर प्रासंगिक है क्योंकि वास्तविक उपयोगकर्ता डेटा MAXALIGN . के गुणज से शुरू होता है प्रत्येक आइटम की शुरुआत से, और आइटम पहचानकर्ता इस ऑफ़सेट के साथ-साथ वास्तविक "टपल आकार" के विरुद्ध नहीं गिना जाता है।

  • डेटा संरेखण (8 के गुणक) के कारण पैडिंग का 1 बाइट, जिसका उपयोग इस मामले में NULL बिटमैप के लिए किया जाता है।

  • varchar . प्रकार के लिए कोई पैडिंग नहीं (लेकिन ऊपर उल्लिखित अतिरिक्त बाइट)

तो, वास्तविक गणना (अधिकतम तक भरे गए सभी कॉलम के साथ) है:

    23    -- heaptupleheader
 +   1    -- NULL bitmap (or padding if row has NO null values)
 +   9    -- columns ...
 + 101 
 +   2 
 + 101 
 +   4 
 +  11
-------------
   252 bytes

 +   4    -- item identifier at page start

संबंधित:

आपको लिंक सूची . में और भी बहुत कुछ मिलेगा इन उत्तरों के दाईं ओर।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या JDBC पोस्टग्रेज ड्राइवर के पास डेटाबेस से कनेक्ट करने के लिए क्लाइंट_एन्कोडिंग सेट करने का कोई तरीका है?

  2. पंक्तियों को समान रूप से छोड़कर पंक्तियों की निश्चित संख्या चुनें

  3. pg_escape_string वास्तव में क्या करता है?

  4. एडब्ल्यूएस और एज़्योर पर पूरी तरह से प्रबंधित पोस्टग्रेएसक्यूएल होस्टिंग लिगेसी माइग्रेशन के लिए समय पर लॉन्च होती है

  5. Psycopg2 इंसर्ट सहेजा नहीं गया