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

PostgreSQL में छवियाँ संग्रहीत करना

2012 में अपडेट हो रहा है, जब हम देखते हैं कि सभी एप्लिकेशन में छवि आकार और छवियों की संख्या बढ़ रही है और बढ़ रही है...

हमें थंबनेल की तरह "मूल छवि" और "संसाधित छवि" के बीच कुछ अंतर की आवश्यकता है।

जैसा कि जेकोबी का जवाब कहता है, दो विकल्प हैं, तो, मैं अनुशंसा करता हूं:

  • बूँद का उपयोग करें (बाइनरी लार्ज ओबजेक्ट):मूल छवि स्टोर के लिए, आपकी टेबल पर। इवान का उत्तर देखें (ब्लॉब्स का बैक अप लेने में कोई समस्या नहीं है!), पोस्टग्रेएसक्यूएल अतिरिक्त आपूर्ति मॉड्यूल, कैसे करें इत्यादि।

  • डीबीलिंक के साथ एक अलग डेटाबेस का उपयोग करें:मूल छवि स्टोर के लिए, दूसरे (एकीकृत/विशिष्ट) डेटाबेस पर। इस मामले में, मुझे बाइटा . पसंद है , लेकिन बूँद उसी के पास है। "एकीकृत छवि वेब सेवा" के लिए डेटाबेस को अलग करना सबसे अच्छा तरीका है।

  • बाइटा का उपयोग करें (BYTE Array):थंबनेल छवियों को कैशिंग करने के लिए। वेब-ब्राउज़र पर तेज़ी से भेजने के लिए छोटी छवियों को कैश करें (रेंडरिंग समस्याओं से बचने के लिए) और सर्वर प्रोसेसिंग को कम करें। कैश भी आवश्यक मेटाडेटा, जैसे चौड़ाई और ऊंचाई। डेटाबेस कैशिंग सबसे आसान तरीका है, लेकिन अपनी आवश्यकताओं और सर्वर कॉन्फ़िगरेशन (उदा. अपाचे मॉड्यूल) की जांच करें:फ़ाइल सिस्टम पर स्टोर थंबनेल बेहतर हो सकते हैं, प्रदर्शन की तुलना करें। याद रखें कि यह एक (एकीकृत) वेब-सेवा है, फिर इसे एक अलग डेटाबेस (बिना बैकअप के) में संग्रहीत किया जा सकता है, कई तालिकाओं की सेवा करता है। PostgreSQL बाइनरी डेटा प्रकार मैनुअल, बाइटा कॉलम के साथ परीक्षण, आदि भी देखें।

नोट 1:आज "दोहरे समाधान" (डेटाबेस + फाइल सिस्टम) का उपयोग बहिष्कृत (!) दोहरे के बजाय "केवल डेटाबेस" का उपयोग करने के कई फायदे हैं। PostgreSQL में निर्यात/आयात/इनपुट/आउटपुट के लिए तुलनीय प्रदर्शन और अच्छे उपकरण हैं।

Note2:याद रखें कि PostgreSQL में केवल bytea है , डिफ़ॉल्ट Oracle नहीं है BLOB :"एसक्यूएल मानक (...) बीएलओबी को परिभाषित करता है। इनपुट प्रारूप बाइटा से अलग है, लेकिन प्रदान किए गए फ़ंक्शन और ऑपरेटर अधिकतर समान हैं", मैनुअल।

संपादित करें 2014 :मैंने आज उपरोक्त मूल पाठ को नहीं बदला है (मेरा उत्तर 22 अप्रैल '12 था, अब 14 मतों के साथ), मैं आपके परिवर्तनों के लिए उत्तर खोल रहा हूं ("विकी मोड" देखें, आप संपादित कर सकते हैं!), प्रूफरीडिंग के लिए और अपडेट के लिए .
प्रश्न स्थिर है (@Ivans's '08 उत्तर 19 मतों के साथ), कृपया, इस पाठ को बेहतर बनाने में सहायता करें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या SQL सर्वर प्रोफाइलर के बराबर PostgreSQL है?

  2. Postgres प्रारंभ नहीं किया जा सकता

  3. विशिष्ट तालिकाओं और प्रविष्टियों के लिए एक डेटाबेस डंप बनाना Postgres

  4. पोस्टग्रेएसक्यूएल डीबी से टिप्पणियां प्राप्त करना

  5. PostgreSQL के लिए Percona वितरण की निगरानी - प्रमुख मेट्रिक्स