Dictionary डिक्शनरी आकार ’संपीड़न को कैसे प्रभावित करता है?


39

मुझे पता है कि उच्च आकार बेहतर संपीड़न अनुपात और इसके विपरीत हो सकता है। लेकिन क्या कोई तरीका है जिससे मैं बेहतर निर्णय ले सकता हूं? .. क्योंकि बहुत सारे विकल्प हैं 7zip


अब तक मैंने डिक्शनरी साइज़ size फ़ाइल का आकार पैदावार इष्टतम संपीड़न देखा है। फाइल का आकार
यहाँ the8mb फ़ाइल test.aviमें 8mb से अधिक सभी शब्दकोश आकारों के लिए एक ही संपीड़न अनुपात है। फिर गिरने लगता है।


2
हाँ, वह पूरी फ़ाइल मेमोरी में है। हालाँकि, यह संभव नहीं हो सकता है यदि बहु-गिग फ़ाइलों के साथ काम कर रहा है। निवेश पर मिलने वाला रिटर्न उतना ही कम हो जाता है जितना आप जाते हैं। यदि आपको अंतिम 1% चाहिए तो आकार = फ़ाइल का आकार। नोट: जब आपके पास बहुत बड़ा डेटा सेट होता है तो 128mb + डिक्शनरी का आकार फाइलों को कंप्रेस करने में लगने वाले समय को बढ़ाएगा।
सायबरनार्ड

जवाबों:


28

दोहराने योग्य वस्तुओं को एक शब्दकोश में संग्रहीत किया जाता है और एक कोड एक विकल्प के रूप में सौंपा जाता है।

यह कभी भी सिम नहीं है

aaaaaaaaaaaaaaaaaaaaaaaa  0001
bbbbbbbbbbbbbbbbbbbbbbbb  0002
alsdjl;asjdfkl;asdfjkljj  0003

पूरी लाइन के बजाय यह कोड को अपनी जगह पर रखता है। जितना बड़ा शब्दकोश उतने अधिक कोड इसे संभाल सकते हैं। आम तौर पर, जब कोई शब्दकोश पूर्ण हो जाता है तो यह मक्खी पर एक नई शुरुआत करता है। जब यह एक नया शुरू होता है तो यह रिक्त होता है और नए कोड्स को पता लगाए गए पैटर्न को सौंपा जाता है।

आम तौर पर, बड़ा एक बिंदु के लिए बेहतर है। पूरे शब्दकोश को स्मृति में रखा जाता है इसलिए आपको शब्दकोश आकार से अधिक RAM की आवश्यकता होती है।

डिक्शनरी का आकार आपके डेटा की कम्प्रेसिबिलिटी, फाइलों की संख्या, आकार और समग्र आकार पर निर्भर करता है।

आम तौर पर, 32mb पर्याप्त से अधिक होता है, लेकिन यदि आपकी कई मल्टी-गिग फ़ाइलों को संपीड़ित किया जाता है तो बहुत अधिक संख्या का उपयोग किया जा सकता है। बड़े शब्दकोश अक्सर प्रक्रिया को धीमा कर देते हैं, लेकिन परिणाम एक छोटी फ़ाइल में।


2
क्या आकार जो आपने शब्दकोश आकार के लिए एक सीमा निर्धारित किया है, या वास्तविक आकार यह होगा? क्या कार्यक्रम (विशेष रूप से 7-ज़िप) सामान्य रूप से समझदारी से निर्धारित करते हैं कि क्या उन्हें वास्तव में पूरे शब्दकोश को भरने की आवश्यकता है जिसे आपने अनुमति दी है?
स्टेन

1
हां, यह एक सीमा है। जब वे पूरी तरह से एक नया शब्दकोश शुरू करते हैं, या पुराने डेटा को समझदारी से बाहर निकालते हैं। जब तक कि संपीड़ित करने के लिए डेटा अधिक है कि शब्दकोश का आकार भर जाएगा।
साइबरनार्ड

@ बर्बर "यह भर जाएगा"? स्पष्ट होने के लिए, जब यह नहीं भरा जाता है तो क्या डिक्शनरी का आकार सीमा से कम रहता है?
लोनीबेस्ट

1
@ लोनीस्टेस्ट हां, शब्दकोश पूरी तरह से खाली हो गया है। हर इतने सारे बिट्स / बाइट्स एक नई शब्दकोश प्रविष्टि बनाते हैं जब तक कि यह पूर्ण न हो जाए।
साइबरबर्ड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.