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

PostgreSQL द्वारा पेश किया गया JSONB की व्याख्या

सबसे पहले, hstore एक योगदान मॉड्यूल है, जो आपको केवल कुंजी => मान जोड़े को संग्रहीत करने की अनुमति देता है, जहां कुंजी और मान केवल text हो सकते हैं s (हालांकि मान sql हो सकते हैं NULL एस भी)।

दोनों json &jsonb आपको एक मान्य JSON मान स्टोर करने की अनुमति देता है (इसकी कल्पना में परिभाषित)।

एफ.ई.एक्स. ये मान्य JSON प्रतिनिधित्व हैं:null , true , [1,false,"string",{"foo":"bar"}] , {"foo":"bar","baz":[null]} - hstore JSON जो सक्षम है उसकी तुलना में बस एक छोटा सा सबसेट है (लेकिन अगर आपको केवल इस सबसेट की आवश्यकता है, तो यह ठीक है)।

json . के बीच एकमात्र अंतर &jsonb उनका भंडारण है:

  • json अपने सादे पाठ प्रारूप में संग्रहीत किया जाता है, जबकि
  • jsonb कुछ बाइनरी प्रतिनिधित्व में संग्रहीत है

इसके 3 प्रमुख परिणाम हैं:

  • jsonb आमतौर पर json . की तुलना में स्टोर करने के लिए अधिक डिस्क स्थान लेता है (कभी-कभी नहीं)
  • jsonb json . की तुलना में इसके इनपुट प्रतिनिधित्व से निर्माण में अधिक समय लगता है
  • json संचालन काफी लेता है jsonb . से अधिक समय (और हर बार जब आप json . पर कुछ ऑपरेशन करते हैं तो पार्सिंग भी की जानी चाहिए टाइप किया गया मान)

जब jsonb एक स्थिर रिलीज के साथ उपलब्ध होगा, दो प्रमुख उपयोग के मामले होंगे, जब आप आसानी से उनके बीच चयन कर सकते हैं:

  1. यदि आप अपने एप्लिकेशन में केवल JSON प्रतिनिधित्व के साथ काम करते हैं, तो PostgreSQL का उपयोग केवल इस प्रतिनिधित्व को संग्रहीत और पुनर्प्राप्त करने के लिए किया जाता है, आपको json का उपयोग करना चाहिए ।
  2. यदि आप PostgreSQL में JSON मान पर बहुत अधिक संचालन करते हैं, या कुछ JSON फ़ील्ड पर अनुक्रमण का उपयोग करते हैं, तो आपको jsonb का उपयोग करना चाहिए ।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक दिन का अंत कैसे प्राप्त करें?

  2. @JoinColumn क्या है और हाइबरनेट में इसका उपयोग कैसे किया जाता है

  3. टाइप कैरेक्टर अलग-अलग के लिए बहुत लंबा मान (एन)

  4. PostgreSQL के लिए एक इष्टतम वातावरण की स्थापना

  5. सम्मिलित तालिका से चयन करते हुए, एक ही क्वेरी में कई तालिकाओं में पंक्तियों को सम्मिलित करें