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

डेटाबेस में अंतर को स्टोर करने का सबसे कॉम्पैक्ट तरीका क्या है?

प्रत्येक रिकॉर्ड को उसकी संपूर्णता में स्टोर करना उनके अंतर को स्टोर करने की तुलना में बहुत आसान है। फिर यदि आप दो संशोधनों का एक अंतर चाहते हैं तो आप PECL Text_Diff पुस्तकालय

मैं रिकॉर्ड के सभी संस्करणों को एक ही तालिका में संग्रहीत करना चाहता हूं और MAX(revision) के साथ नवीनतम संस्करण को पुनः प्राप्त करना चाहता हूं , एक "वर्तमान" बूलियन विशेषता, या समान। अन्य लोग सामान्यीकरण करना पसंद करते हैं और एक दर्पण तालिका रखते हैं जिसमें गैर-वर्तमान संशोधन होते हैं।

यदि आप इसके बजाय डिफ ​​स्टोर करते हैं, तो आपकी स्कीमा और एल्गोरिदम बहुत अधिक जटिल हो जाते हैं। फिर आपको कम से कम एक "पूर्ण" संशोधन और एकाधिक "diff" संस्करणों को संग्रहीत करने की आवश्यकता होती है, और जब भी आपको पूर्ण संस्करण की आवश्यकता होती है, तो अंतर के एक सेट से एक पूर्ण संस्करण का पुनर्निर्माण करना होता है। (इस प्रकार एसवीएन चीजों को स्टोर करता है। गिट प्रत्येक संशोधन की एक पूरी प्रति संग्रहीत करता है, अलग नहीं।)

प्रोग्रामर का समय महंगा है, लेकिन डिस्क स्थान आमतौर पर सस्ता होता है। कृपया विचार करें कि क्या प्रत्येक संशोधन को पूर्ण रूप से संग्रहीत करना वास्तव में एक समस्या है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql संसाधन स्ट्रिंग की पहली पंक्ति प्राप्त करना?

  2. हिम तेंदुए पर mysqldb स्थापित करें

  3. MySQL सेटिंग्स को सहेजना

  4. JDBC कैरेक्टर एन्कोडिंग

  5. createArrayOf () विधि का उपयोग करते समय 'java.sql.SQLFeatureNotSupportedException' को कैसे सुधारें