2015-12-02 9 views
6

में कितना तेज़ है, मैं पोस्टग्रेस 9.3 से 9.4 तक माइग्रेट करना चाहता हूं, और JSON कॉलम में बहुत अधिक डेटा है। हालांकि यह ठीक है, मैं अधिक कुशल कॉलम स्टोरेज में माइग्रेट करना चाहता हूं (जो जेएसओएनबी लगता है - तकनीक का वास्तव में रोमांचक टुकड़ा!)।जेएसओएन -> JSONB कॉलम रूपांतरण पोस्टग्रेस 9.4

वास्तव में माइग्रेट करने के लिए, मैं की तरह

ALTER TABLE table_with_json 
    ALTER COLUMN my_json 
    SET DATA TYPE jsonb 
    USING my_json::jsonb; 
( this helpful question से)

कुछ के लिए माइग्रेशन विशेषताओं जानना चाहते हैं।

आदर्श रूप से, यह जानना अच्छा होगा कि 1 मिलीलीटर और 10 मिलीलीटर प्रविष्टियों को माइग्रेट करने में कितना समय लगता है, और यह कैसे स्केल करता है।

जबकि मैं इन नंबरों को स्वयं प्राप्त कर सकता हूं, मैंने सोचा कि यह प्रश्न दूसरों के लिए सहायक हो सकता है। अगर मैं इसे स्वयं करने की कोशिश करता हूं, तो मैं दूसरों के लिए उत्तर प्रदान करना सुनिश्चित करूँगा, लेकिन यह सुनिश्चित नहीं होगा कि यह कब होगा।

+8

यह एक * बहुत पर * निर्भर करता है व्यक्तिगत जेसन दस्तावेज कितने बड़े हैं। –

उत्तर

4

JSON से JSONB में माइग्रेट करने से 282 सेकंड लगे। यह मूल रूप से SQL INSERT के साथ डेटा डालने के लिए आवश्यक समय से मेल खाता है।

परीक्षण वातावरण:

  • PostgreSQL 9.5
  • 4 कोर, 16GB राम
  • 2KB/JSON सामग्री की पंक्ति
  • 5.2 मिलियन पंक्तियों
संबंधित मुद्दे