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

लंबी बाइनरी (कच्चे डेटा) तारों को संग्रहित करना

जहाँ तक PostgreSQL संबंधित है, टाइप करें text सवाल से बाहर है। यह धीमा है, अधिक स्थान का उपयोग करता है और bytea . की तुलना में अधिक त्रुटि-प्रवण है इस उद्देश्य के लिए।

मूल रूप से 3 दृष्टिकोण हैं:

  1. bytea type प्रकार का उपयोग करें (मूल रूप से एसक्यूएल ब्लॉब प्रकार के पीजी समकक्ष)।

  2. "बड़ी वस्तुओं . का उपयोग करें ".

  3. ब्लॉब्स को फाइल के रूप में फाइल सिस्टम . में स्टोर करें और केवल फ़ाइल नाम को डेटाबेस में संग्रहीत करें।

प्रत्येक के अपने फायदे और नुकसान हैं।

1. संभालना आसान है लेकिन सबसे अधिक डिस्क स्थान की आवश्यकता है। कुछ डिकोडिंग और एन्कोडिंग की आवश्यकता होती है, जो इसे धीमा-ईश भी बनाती है। बैकअप आकार में तेजी से बढ़ते हैं!

2. संभालने में थोड़ा अजीब है, लेकिन ब्लब्स में हेरफेर करने के लिए आपके पास अपना खुद का बुनियादी ढांचा है - अगर आपको इसकी आवश्यकता होनी चाहिए। और आप अधिक आसानी से अलग बैकअप बना सकते हैं।

3. अब तक का सबसे तेज़ तरीका है और कम से कम डिस्क स्थान का उपयोग करता है। लेकिन यह उस संदर्भात्मक अखंडता को प्रदान नहीं करता है जो आपको डेटाबेस के अंदर संग्रहीत करने पर मिलती है।

छवि फ़ाइलों के लिए मेरे पास इस तरह के कई कार्यान्वयन हैं:एक छोटा थंबनेल store संग्रहित करें संदर्भात्मक अखंडता और त्वरित संदर्भ के लिए एक बाइटा-फ़ील्ड में। फ़ाइल-सिस्टम में मूल छवि को फ़ाइल के रूप में संग्रहीत करें। बेशक, आपको कुछ विचार करने की ज़रूरत है कि पुरानी फ़ाइलों को कब और कैसे हटाया जाए, बाहरी फ़ाइलों का बैकअप कैसे लिया जाए।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. अजीब SQLAlchemy त्रुटि संदेश:लेखन त्रुटि:'तानाशाह' वस्तु अनुक्रमण का समर्थन नहीं करता

  2. पोस्टग्रेज़ फ़ंक्शन में कस्टम प्रकार सरणी कैसे पास करें

  3. प्रत्येक समूह में शीर्ष तीन मान चुनें

  4. PostgreSQL में क्वेरी परिणामों को कैसे फ़िल्टर करें

  5. postgresql - sql - `सत्य` मानों की गणना