डेटा डुप्लिकेशन: Difference between revisions

From Vigyanwiki
(Created page with "{{short description|Data processing technique to eliminate duplicate copies of repeating data}} कम्प्यूटिंग में, डेटा डिडुप...")
 
No edit summary
Line 1: Line 1:
{{short description|Data processing technique to eliminate duplicate copies of repeating data}}
{{short description|Data processing technique to eliminate duplicate copies of repeating data}}
[[ कम्प्यूटिंग ]] में, डेटा डिडुप्लीकेशन दोहराए जाने वाले डेटा की डुप्लिकेट प्रतियों को समाप्त करने की एक तकनीक है। तकनीक के सफल कार्यान्वयन से भंडारण उपयोग में सुधार हो सकता है, जो बदले में भंडारण क्षमता की जरूरतों को पूरा करने के लिए आवश्यक भंडारण मीडिया की कुल मात्रा को कम करके [[पूंजीगत व्यय]] को कम कर सकता है। इसे भेजे जाने वाले बाइट्स की संख्या को कम करने के लिए नेटवर्क डेटा ट्रांसफर पर भी लागू किया जा सकता है।
[[ कम्प्यूटिंग |कम्प्यूटिंग]] में, डेटा डिडुप्लीकेशन दोहराए जाने वाले डेटा की डुप्लिकेट प्रतियों को समाप्त करने की तकनीक है। तकनीक के सफल कार्यान्वयन से भंडारण उपयोग में सुधार हो सकता है, जो भंडारण क्षमता की आवश्यकताओं को पूर्ण करने के लिए आवश्यक भंडारण मीडिया की कुल मात्रा को कम करके [[पूंजीगत व्यय]] को कम कर सकता है। इसे भेजे जाने वाले बाइट्स की संख्या को कम करने के लिए नेटवर्क डेटा ट्रांसफर पर भी प्रारम्भ किया जा सकता है।


डिडुप्लीकेशन प्रक्रिया के लिए डेटा 'हिस्सा' (जिसे 'बाइट पैटर्न' भी कहा जाता है) की तुलना की आवश्यकता होती है, जो डेटा के अद्वितीय, सन्निहित ब्लॉक होते हैं। विश्लेषण की प्रक्रिया के दौरान इन टुकड़ों की पहचान की जाती है और उन्हें संग्रहीत किया जाता है, और मौजूदा डेटा के भीतर अन्य हिस्सों की तुलना में। जब भी कोई मैच होता है, अनावश्यक चंक को एक छोटे संदर्भ से बदल दिया जाता है जो संग्रहित चंक को इंगित करता है। यह देखते हुए कि एक ही बाइट पैटर्न दर्जनों, सैकड़ों, या यहां तक ​​कि हजारों बार हो सकता है (मिलान आवृत्ति चंक आकार पर निर्भर है), संग्रहीत या स्थानांतरित किए जाने वाले डेटा की मात्रा को बहुत कम किया जा सकता है।<ref>{{Cite web|url=https://www.druva.com/blog/understanding-data-deduplication/|title=डेटा डुप्लीकेशन को समझना|date=2009-01-09|archive-url=https://web.archive.org/web/20190806233329/https://www.druva.com/blog/understanding-data-deduplication/|archive-date=2019-08-06|website=Druva|language=en-US|access-date=2019-08-06}}</ref><ref name="snia"/>
डिडुप्लीकेशन प्रक्रिया के लिए डेटा 'खंडों' (जिसे 'बाइट पैटर्न' के रूप में भी जाना जाता है) की तुलना की आवश्यकता होती है, जो डेटा के अद्वितीय, सन्निहित ब्लॉक होते हैं। इन खंडों को विश्लेषण की प्रक्रिया के समय पहचाना और संग्रहीत किया जाता है, और उपस्थित डेटा के भीतर अन्य खंडों की तुलना की जाती है। जब भी कोई मैच होता है, तो अनावश्यक खंड को एक छोटे संदर्भ से परिवर्तित कर दिया जाता है जो संग्रहीत खंड की ओर प्रदर्शित करता है। यह देखते हुए कि एक ही बाइट पैटर्न दर्जनों, सैकड़ों, या यहां तक ​​कि हजारों बार हो सकता है (मैच आवृत्ति चंक आकार पर निर्भर है), संग्रहीत या स्थानांतरित किए जाने वाले डेटा की मात्रा को अधिक कम किया जा सकता है।<ref>{{Cite web|url=https://www.druva.com/blog/understanding-data-deduplication/|title=डेटा डुप्लीकेशन को समझना|date=2009-01-09|archive-url=https://web.archive.org/web/20190806233329/https://www.druva.com/blog/understanding-data-deduplication/|archive-date=2019-08-06|website=Druva|language=en-US|access-date=2019-08-06}}</ref><ref name="snia"/>


एक संबंधित तकनीक है [[ एकल-आवृत्ति भंडारण ]] | सिंगल-इंस्टेंस (डेटा) स्टोरेज, जो सामग्री की कई प्रतियों को संपूर्ण-फ़ाइल स्तर पर एक साझा प्रतिलिपि के साथ बदल देता है। जबकि इसे डेटा कम्प्रेशन और डुप्लीकेशन के अन्य रूपों के साथ जोड़ना संभव है, यह डेटा डुप्लीकेशन के नए तरीकों से अलग है (जो खंड या उप-ब्लॉक स्तर पर काम कर सकता है)।
संबंधित तकनीक[[ एकल-आवृत्ति भंडारण | एकल-आवृत्ति भंडारण]] है, जो संपूर्ण-फ़ाइल स्तर पर सामग्री की कई प्रतियों को एक भगित प्रतिलिपि से परिवर्तित कर देती है। जबकि इसे डेटा कम्प्रेशन और डुप्लीकेशन के अन्य रूपों के साथ जोड़ना संभव है, यह डेटा डुप्लीकेशन के नई विधियों से भिन्न है (जो खंड या उप-ब्लॉक स्तर पर कार्य कर सकता है)।


डिडुप्लीकेशन डेटा कंप्रेशन एल्गोरिदम से अलग है, जैसे [[LZ77 और LZ78]]जबकि संपीड़न एल्गोरिदम व्यक्तिगत फ़ाइलों के अंदर अनावश्यक डेटा की पहचान करते हैं और इस अनावश्यक डेटा को अधिक कुशलता से एन्कोड करते हैं, डुप्लीकेशन का इरादा बड़ी मात्रा में डेटा का निरीक्षण करना और बड़े वर्गों की पहचान करना है - जैसे कि पूरी फाइलें या फाइलों के बड़े हिस्से - जो समान हैं, और उन्हें प्रतिस्थापित करते हैं। एक साझा प्रति के साथ।
डिडुप्लीकेशन [[LZ77 और LZ78]] जैसे डेटा कम्प्रेशन एल्गोरिदम से भिन्न है, जबकि कम्प्रेशन एल्गोरिदम भिन्न-भिन्न फ़ाइलों के अंदर अनावश्यक डेटा की पहचान करते हैं और इस अनावश्यक डेटा को अधिक कुशलता से एन्कोड करते हैं, डुप्लीकेशन का उद्देश्य डेटा की बड़ी मात्रा का निरीक्षण करना और बड़े अनुभागों की पहचान करना है- जैसे कि संपूर्ण फ़ाइलें या फ़ाइलों के बड़े अनुभाग - जो समान हैं, और उन्हें भागित प्रति के साथ प्रतिस्थापित करना है।


== कार्य सिद्धांत ==
== कार्य सिद्धांत ==
उदाहरण के लिए, एक विशिष्ट [[ईमेल]] सिस्टम में एक ही 1 एमबी ([[मेगाबाइट]]) फ़ाइल अटैचमेंट के 100 उदाहरण हो सकते हैं। हर बार जब ईमेल प्लेटफॉर्म का बैकअप लिया जाता है, तो अटैचमेंट के सभी 100 उदाहरण सहेजे जाते हैं, जिसके लिए 100 एमबी स्टोरेज स्पेस की आवश्यकता होती है। डेटा डिडुप्लीकेशन के साथ, अनुलग्नक का केवल एक उदाहरण वास्तव में संग्रहीत होता है; लगभग 100 से 1 के डिडुप्लीकेशन अनुपात के लिए बाद के उदाहरणों को सहेजी गई प्रतिलिपि के लिए वापस संदर्भित किया जाता है। डिडुप्लीकेशन को अक्सर अतिरिक्त स्टोरेज सेविंग के लिए डेटा कंप्रेशन के साथ जोड़ा जाता है: डिडुप्लीकेशन का उपयोग पहले दोहराए गए डेटा के बड़े हिस्से को खत्म करने के लिए किया जाता है, और फिर कंप्रेशन का कुशलता से उपयोग किया जाता है। प्रत्येक संग्रहीत चंक्स को एनकोड करें।<ref>[https://searchdatabackup.techtarget.com/tip/Compression-deduplication-and-encryption-Whats-the-difference Compression, deduplication and encryption: What's the difference?] {{Webarchive|url=https://web.archive.org/web/20181223211506/https://searchdatabackup.techtarget.com/tip/Compression-deduplication-and-encryption-Whats-the-difference |date=2018-12-23 }}, Stephen Bigelow and Paul Crocetti</ref>
उदाहरण के लिए, सामान्य [[ईमेल]] प्रणाली में समान 1 एमबी ([[मेगाबाइट]]) फ़ाइल अनुलग्नक के 100 उदाहरण हो सकते हैं। जब प्रत्येक ईमेल प्लेटफॉर्म का बैकअप लिया जाता है, तो अनुलग्नक के सभी 100 उदाहरण सहेजे जाते हैं, जिसके लिए 100 एमबी संग्रहण स्थान की आवश्यकता होती है। डेटा डिडुप्लीकेशन के साथ, अनुलग्नक का उदाहरण वास्तव में संग्रहीत किया जाता है; पश्चात के उदाहरणों को लगभग 100 से 1 के डिडुप्लीकेशन अनुपात के लिए सहेजी गई प्रतिलिपि में संदर्भित किया जाता है। अतिरिक्त भंडारण बचत के लिए डिडुप्लीकेशन को प्रायः डेटा कंप्रेशन के साथ जोड़ा जाता है: डिडुप्लीकेशन का उपयोग पहले दोहराए गए डेटा के बड़े खंड को समाप्त करने के लिए किया जाता है, और फिर कंप्रेशन का उपयोग कुशलता से किया जाता है संग्रहीत खंडों में से प्रत्येक को एनकोड करें।<ref>[https://searchdatabackup.techtarget.com/tip/Compression-deduplication-and-encryption-Whats-the-difference Compression, deduplication and encryption: What's the difference?] {{Webarchive|url=https://web.archive.org/web/20181223211506/https://searchdatabackup.techtarget.com/tip/Compression-deduplication-and-encryption-Whats-the-difference |date=2018-12-23 }}, Stephen Bigelow and Paul Crocetti</ref>
[[कंप्यूटर कोड]] में, डिडुप्लीकेशन किया जाता है, उदाहरण के लिए, वेरिएबल (कंप्यूटर विज्ञान) में जानकारी संग्रहीत करना ताकि उन्हें अलग-अलग लिखा न जाए, लेकिन केंद्रीय [[संदर्भ (कंप्यूटर विज्ञान)]] स्थान पर एक बार में बदला जा सके। उदाहरण हैं CSS क्लासेस और हेल्प: फ़ुटनोट्स # फ़ुटनोट्स: [[मीडियाविकि]] में एक से अधिक बार स्रोत का उपयोग करना।
 
[[कंप्यूटर कोड]] में, डिडुप्लीकेशन उदाहरण के लिए, सूचनाओं को चर में संग्रहीत करके किया जाता है जिससे उन्हें भिन्न-भिन्न लिखा न जाए, किंतु केंद्रीय [[संदर्भ (कंप्यूटर विज्ञान)|संदर्भित (कंप्यूटर विज्ञान)]] स्थान पर एक बार में परिवर्तित किया जा सके। उदाहरण सीएसएस कक्षाएं और [[मीडियाविकि]]में नामित संदर्भ हैं।


== लाभ ==
== लाभ ==
स्टोरेज-आधारित डेटा डिडुप्लीकेशन फाइलों के दिए गए सेट के लिए जरूरी स्टोरेज की मात्रा को कम करता है। यह उन अनुप्रयोगों में सबसे प्रभावी है जहां एक ही डिस्क पर बहुत समान या समान डेटा की कई प्रतियां संग्रहीत की जाती हैं। डेटा बैकअप के मामले में, जो नियमित रूप से डेटा हानि से बचाने के लिए किया जाता है, दिए गए बैकअप में अधिकांश डेटा पिछले बैकअप से अपरिवर्तित रहता है। सामान्य बैकअप प्रणालियाँ उन फ़ाइलों को छोड़ कर (या [[ कड़ी कड़ी ]]िंग) करके इसका फायदा उठाने की कोशिश करती हैं जो फ़ाइलों के बीच [[डेटा अंतर]] को परिवर्तित या संग्रहीत नहीं करती हैं। हालाँकि, कोई भी दृष्टिकोण सभी अतिरेक पर कब्जा नहीं करता है। हार्ड-लिंकिंग बड़ी फ़ाइलों के साथ मदद नहीं करती है जो केवल छोटे तरीकों से बदली गई हैं, जैसे कि ईमेल डेटाबेस; मतभेद केवल एक फ़ाइल के आसन्न संस्करणों में अतिरेक पाते हैं (एक खंड पर विचार करें जिसे हटा दिया गया था और बाद में फिर से जोड़ा गया था, या कई दस्तावेज़ों में शामिल एक लोगो छवि)।
स्टोरेज-आधारित डेटा डिडुप्लीकेशन फाइलों के दिए गए सेट के लिए जरूरी स्टोरेज की मात्रा को कम करता है। यह उन अनुप्रयोगों में सबसे प्रभावी है जहां एक ही डिस्क पर अधिक समान या समान डेटा की कई प्रतियां संग्रहीत की जाती हैं। डेटा बैकअप के मामले में, जो नियमित रूप से डेटा हानि से बचाने के लिए किया जाता है, दिए गए बैकअप में अधिकांश डेटा पिछले बैकअप से अपरिवर्तित रहता है। सामान्य बैकअप प्रणालियाँ उन फ़ाइलों को छोड़ कर (या [[ कड़ी कड़ी ]]िंग) करके इसका फायदा उठाने की कोशिश करती हैं जो फ़ाइलों के बीच [[डेटा अंतर]] को परिवर्तित या संग्रहीत नहीं करती हैं। हालाँकि, कोई भी दृष्टिकोण सभी अतिरेक पर कब्जा नहीं करता है। हार्ड-लिंकिंग बड़ी फ़ाइलों के साथ मदद नहीं करती है जो केवल छोटे तरीकों से बदली गई हैं, जैसे कि ईमेल डेटाबेस; मतभेद केवल एक फ़ाइल के आसन्न संस्करणों में अतिरेक पाते हैं (एक खंड पर विचार करें जिसे हटा दिया गया था और पश्चात में फिर से जोड़ा गया था, या कई दस्तावेज़ों में शामिल एक लोगो छवि)।


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


== वर्गीकरण ==
== वर्गीकरण ==


=== पोस्ट-प्रोसेस बनाम इन-लाइन डुप्लीकेशन ===
=== पोस्ट-प्रोसेस बनाम इन-लाइन डुप्लीकेशन ===
डिडुप्लीकेशन इन-लाइन हो सकता है, क्योंकि डेटा प्रवाहित हो रहा है, या इसके लिखे जाने के बाद पोस्ट-प्रोसेस हो सकता है।
डिडुप्लीकेशन इन-लाइन हो सकता है, क्योंकि डेटा प्रवाहित हो रहा है, या इसके लिखे जाने के पश्चात पोस्ट-प्रोसेस हो सकता है।


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


वैकल्पिक रूप से, डिडुप्लीकेशन हैश गणना इन-लाइन की जा सकती है: जैसे ही डेटा लक्ष्य डिवाइस में प्रवेश करता है, सिंक्रनाइज़ किया जाता है। यदि स्टोरेज सिस्टम एक ब्लॉक की पहचान करता है जिसे उसने पहले ही स्टोर कर लिया है, तो पूरे नए ब्लॉक के बजाय केवल मौजूदा ब्लॉक का संदर्भ संग्रहीत किया जाता है।
वैकल्पिक रूप से, डिडुप्लीकेशन हैश गणना इन-लाइन की जा सकती है: जैसे ही डेटा लक्ष्य डिवाइस में प्रवेश करता है, सिंक्रनाइज़ किया जाता है। यदि स्टोरेज प्रणाली एक ब्लॉक की पहचान करता है जिसे उसने पहले ही स्टोर कर लिया है, तो पूरे नए ब्लॉक के बजाय केवल उपस्थित ब्लॉक का संदर्भ संग्रहीत किया जाता है।


पोस्ट-प्रोसेस डिडुप्लीकेशन की तुलना में इन-लाइन डुप्लीकेशन का लाभ यह है कि इसके लिए कम स्टोरेज और नेटवर्क ट्रैफिक की आवश्यकता होती है, क्योंकि डुप्लीकेट डेटा को कभी भी स्टोर या ट्रांसफर नहीं किया जाता है। नकारात्मक पक्ष पर, हैश गणना कम्प्यूटेशनल रूप से महंगी हो सकती है, जिससे स्टोरेज थ्रूपुट कम हो जाता है। हालांकि, इन-लाइन डुप्लीकेशन वाले कुछ वेंडरों ने ऐसे उपकरणों का प्रदर्शन किया है जो उच्च दरों पर इन-लाइन डुप्लीकेशन करने में सक्षम हैं।
पोस्ट-प्रोसेस डिडुप्लीकेशन की तुलना में इन-लाइन डुप्लीकेशन का लाभ यह है कि इसके लिए कम स्टोरेज और नेटवर्क ट्रैफिक की आवश्यकता होती है, क्योंकि डुप्लीकेट डेटा को कभी भी स्टोर या ट्रांसफर नहीं किया जाता है। नकारात्मक पक्ष पर, हैश गणना कम्प्यूटेशनल रूप से महंगी हो सकती है, जिससे स्टोरेज थ्रूपुट कम हो जाता है। हालांकि, इन-लाइन डुप्लीकेशन वाले कुछ वेंडरों ने ऐसे उपकरणों का प्रदर्शन किया है जो उच्च दरों पर इन-लाइन डुप्लीकेशन करने में सक्षम हैं।


पोस्ट-प्रोसेस और इन-लाइन डुप्लीकेशन विधियों पर अक्सर भारी बहस होती है।<ref>{{cite web |url=http://www.backupcentral.com/content/view/134/47/ |title=In-line or post-process de-duplication? (updated 6-08) |publisher=Backup Central |access-date=2009-10-16 |url-status=dead |archive-url=https://web.archive.org/web/20091206035054/http://www.backupcentral.com/content/view/134/47 |archive-date=2009-12-06 }}</ref><ref>{{cite web |url=http://searchdatabackup.techtarget.com/tip/0,289483,sid187_gci1315295,00.html |title=इनलाइन बनाम पोस्ट-प्रोसेसिंग डिडुप्लिकेशन उपकरण|publisher=Searchdatabackup.techtarget.com |access-date=2009-10-16 |archive-date=2009-06-09 |archive-url=https://web.archive.org/web/20090609122811/http://searchdatabackup.techtarget.com/tip/0,289483,sid187_gci1315295,00.html |url-status=live }}</ref>
पोस्ट-प्रोसेस और इन-लाइन डुप्लीकेशन विधियों पर प्रायः भारी बहस होती है।<ref>{{cite web |url=http://www.backupcentral.com/content/view/134/47/ |title=In-line or post-process de-duplication? (updated 6-08) |publisher=Backup Central |access-date=2009-10-16 |url-status=dead |archive-url=https://web.archive.org/web/20091206035054/http://www.backupcentral.com/content/view/134/47 |archive-date=2009-12-06 }}</ref><ref>{{cite web |url=http://searchdatabackup.techtarget.com/tip/0,289483,sid187_gci1315295,00.html |title=इनलाइन बनाम पोस्ट-प्रोसेसिंग डिडुप्लिकेशन उपकरण|publisher=Searchdatabackup.techtarget.com |access-date=2009-10-16 |archive-date=2009-06-09 |archive-url=https://web.archive.org/web/20090609122811/http://searchdatabackup.techtarget.com/tip/0,289483,sid187_gci1315295,00.html |url-status=live }}</ref>




Line 40: Line 41:
डेटा डुप्लीकेशन विधियों को वर्गीकृत करने का एक अन्य तरीका यह है कि वे कहाँ होते हैं। जहां डेटा बनाया गया है, उसके करीब होने वाले डुप्लीकेशन को स्रोत डुप्लिकेशन कहा जाता है। जब यह उस जगह के पास होता है जहां डेटा संग्रहीत किया जाता है, तो इसे लक्ष्य डुप्लीकेशन कहा जाता है।
डेटा डुप्लीकेशन विधियों को वर्गीकृत करने का एक अन्य तरीका यह है कि वे कहाँ होते हैं। जहां डेटा बनाया गया है, उसके करीब होने वाले डुप्लीकेशन को स्रोत डुप्लिकेशन कहा जाता है। जब यह उस जगह के पास होता है जहां डेटा संग्रहीत किया जाता है, तो इसे लक्ष्य डुप्लीकेशन कहा जाता है।


स्रोत डिडुप्लीकेशन यह सुनिश्चित करता है कि डेटा स्रोत पर डेटा डुप्लीकेशन किया गया है। यह आम तौर पर एक फाइल सिस्टम के भीतर होता है। फ़ाइल सिस्टम समय-समय पर हैश बनाने वाली नई फ़ाइलों को स्कैन करेगा और उनकी तुलना मौजूदा फ़ाइलों के हैश से करेगा। जब एक ही हैश वाली फाइलें मिलती हैं तो फाइल कॉपी हटा दी जाती है और नई फाइल पुरानी फाइल को इंगित करती है। हालांकि, [[कठिन कड़ियाँ]] के विपरीत, डुप्लिकेट की गई फ़ाइलों को अलग-अलग इकाइयां माना जाता है और यदि डुप्लिकेट की गई फ़ाइलों में से एक को बाद में संशोधित किया जाता है, तो [[लिखने पर नकल]] नामक सिस्टम का उपयोग करके उस परिवर्तित फ़ाइल या ब्लॉक की एक प्रति बनाई जाती है। डुप्लीकेशन प्रक्रिया उपयोगकर्ताओं और बैकअप एप्लिकेशन के लिए पारदर्शी है। एक डिडुप्लिकेट फ़ाइल सिस्टम का बैकअप लेने से अक्सर दोहराव होता है जिसके परिणामस्वरूप बैकअप स्रोत डेटा से बड़ा होता है।<ref>{{cite web |url=http://www.microsoft.com/windowsserver2008/en/us/WSS08/SIS.aspx |title=Windows Server 2008: Windows Storage Server 2008 |publisher=Microsoft.com |access-date=2009-10-16 |url-status=dead |archive-url=https://web.archive.org/web/20091004073508/http://www.microsoft.com/windowsserver2008/en/us/WSS08/SIS.aspx |archive-date=2009-10-04 }}</ref><ref>{{cite web |url=http://www.netapp.com/us/products/platform-os/dedupe.html |title=उत्पाद - प्लेटफार्म ओएस|publisher=NetApp |access-date=2009-10-16 |archive-date=2010-02-06 |archive-url=https://web.archive.org/web/20100206071701/http://www.netapp.com/us/products/platform-os/dedupe.html |url-status=live }}</ref>
स्रोत डिडुप्लीकेशन यह सुनिश्चित करता है कि डेटा स्रोत पर डेटा डुप्लीकेशन किया गया है। यह आम तौर पर एक फाइल प्रणाली के भीतर होता है। फ़ाइल प्रणाली समय-समय पर हैश बनाने वाली नई फ़ाइलों को स्कैन करेगा और उनकी तुलना उपस्थित फ़ाइलों के हैश से करेगा। जब एक ही हैश वाली फाइलें मिलती हैं तो फाइल कॉपी हटा दी जाती है और नई फाइल पुरानी फाइल को इंगित करती है। हालांकि, [[कठिन कड़ियाँ]] के विपरीत, डुप्लिकेट की गई फ़ाइलों को भिन्न-भिन्न इकाइयां माना जाता है और यदि डुप्लिकेट की गई फ़ाइलों में से एक को पश्चात में संशोधित किया जाता है, तो [[लिखने पर नकल]] नामक प्रणाली का उपयोग करके उस परिवर्तित फ़ाइल या ब्लॉक की एक प्रति बनाई जाती है। डुप्लीकेशन प्रक्रिया उपयोगकर्ताओं और बैकअप एप्लिकेशन के लिए पारदर्शी है। एक डिडुप्लिकेट फ़ाइल प्रणाली का बैकअप लेने से प्रायः दोहराव होता है जिसके परिणामस्वरूप बैकअप स्रोत डेटा से बड़ा होता है।<ref>{{cite web |url=http://www.microsoft.com/windowsserver2008/en/us/WSS08/SIS.aspx |title=Windows Server 2008: Windows Storage Server 2008 |publisher=Microsoft.com |access-date=2009-10-16 |url-status=dead |archive-url=https://web.archive.org/web/20091004073508/http://www.microsoft.com/windowsserver2008/en/us/WSS08/SIS.aspx |archive-date=2009-10-04 }}</ref><ref>{{cite web |url=http://www.netapp.com/us/products/platform-os/dedupe.html |title=उत्पाद - प्लेटफार्म ओएस|publisher=NetApp |access-date=2009-10-16 |archive-date=2010-02-06 |archive-url=https://web.archive.org/web/20100206071701/http://www.netapp.com/us/products/platform-os/dedupe.html |url-status=live }}</ref>


{{anchor|reflink}}कॉपी करने के संचालन के लिए स्रोत डिडुप्लीकेशन को स्पष्ट रूप से घोषित किया जा सकता है, क्योंकि यह जानने के लिए किसी गणना की आवश्यकता नहीं है कि कॉपी किए गए डेटा को डुप्लीकेशन की आवश्यकता है। यह फाइल सिस्टम पर लिंकिंग के एक नए रूप की ओर जाता है जिसे रिफलिंक (लिनक्स) या क्लोनफाइल (मैकओएस) कहा जाता है, जहां एक या एक से अधिक [[इनोड]]्स (फाइल सूचना प्रविष्टियां) उनके कुछ या सभी डेटा को साझा करने के लिए बनाई जाती हैं। इसे समान रूप से हार्ड लिंक के नाम पर रखा गया है, जो इनोड स्तर पर काम करता है, और सांकेतिक लिंक जो फ़ाइल नाम स्तर पर काम करता है।<ref>{{cite web |title=The reflink(2) system call v5. |url=https://lwn.net/Articles/335380/ |website=lwn.net |access-date=2019-10-04 |archive-date=2015-10-02 |archive-url=https://web.archive.org/web/20151002000848/http://lwn.net/Articles/335380/ |url-status=live }}</ref> अलग-अलग प्रविष्टियों में कॉपी-ऑन-राइट व्यवहार होता है जो गैर-अलियासिंग होता है, यानी एक कॉपी को बाद में बदलने से दूसरी कॉपी प्रभावित नहीं होंगी।<ref>{{cite web |title=ioctl_ficlonerange(2) |url=http://man7.org/linux/man-pages/man2/ioctl_ficlonerange.2.html |website=Linux Manual Page |access-date=2019-10-04 |archive-date=2019-10-07 |archive-url=https://web.archive.org/web/20191007043757/http://man7.org/linux/man-pages/man2/ioctl_ficlonerange.2.html |url-status=live }}</ref> Microsoft का [[ReFS]] भी इस ऑपरेशन का समर्थन करता है।<ref>{{cite web|title=ReFS समर्थन पर विंडोज़ पर क्लोनफाइल जोड़ें|website=GitHub|author=Kazuki MATSUDA|url=https://github.com/git-lfs/git-lfs/pull/3790|access-date=2020-02-23|archive-date=2021-01-13|archive-url=https://web.archive.org/web/20210113201013/https://github.com/git-lfs/git-lfs/pull/3790|url-status=live}}</ref>
{{anchor|reflink}}कॉपी करने के संचालन के लिए स्रोत डिडुप्लीकेशन को स्पष्ट रूप से घोषित किया जा सकता है, क्योंकि यह जानने के लिए किसी गणना की आवश्यकता नहीं है कि कॉपी किए गए डेटा को डुप्लीकेशन की आवश्यकता है। यह फाइल प्रणाली पर लिंकिंग के एक नए रूप की ओर जाता है जिसे रिफलिंक (लिनक्स) या क्लोनफाइल (मैकओएस) कहा जाता है, जहां एक या एक से अधिक [[इनोड]]्स (फाइल सूचना प्रविष्टियां) उनके कुछ या सभी डेटा को साझा करने के लिए बनाई जाती हैं। इसे समान रूप से हार्ड लिंक के नाम पर रखा गया है, जो इनोड स्तर पर कार्य करता है, और सांकेतिक लिंक जो फ़ाइल नाम स्तर पर कार्य करता है।<ref>{{cite web |title=The reflink(2) system call v5. |url=https://lwn.net/Articles/335380/ |website=lwn.net |access-date=2019-10-04 |archive-date=2015-10-02 |archive-url=https://web.archive.org/web/20151002000848/http://lwn.net/Articles/335380/ |url-status=live }}</ref> भिन्न-भिन्न प्रविष्टियों में कॉपी-ऑन-राइट व्यवहार होता है जो गैर-अलियासिंग होता है, यानी एक कॉपी को पश्चात में बदलने से दूसरी कॉपी प्रभावित नहीं होंगी।<ref>{{cite web |title=ioctl_ficlonerange(2) |url=http://man7.org/linux/man-pages/man2/ioctl_ficlonerange.2.html |website=Linux Manual Page |access-date=2019-10-04 |archive-date=2019-10-07 |archive-url=https://web.archive.org/web/20191007043757/http://man7.org/linux/man-pages/man2/ioctl_ficlonerange.2.html |url-status=live }}</ref> Microsoft का [[ReFS]] भी इस ऑपरेशन का समर्थन करता है।<ref>{{cite web|title=ReFS समर्थन पर विंडोज़ पर क्लोनफाइल जोड़ें|website=GitHub|author=Kazuki MATSUDA|url=https://github.com/git-lfs/git-lfs/pull/3790|access-date=2020-02-23|archive-date=2021-01-13|archive-url=https://web.archive.org/web/20210113201013/https://github.com/git-lfs/git-lfs/pull/3790|url-status=live}}</ref>
जब उस स्थान पर डेटा उत्पन्न नहीं हुआ था तब लक्ष्य डुप्लीकेशन डुप्लिकेट को हटाने की प्रक्रिया है। इसका उदाहरण एक SAN/NAS से जुड़ा एक सर्वर होगा, SAN/NAS सर्वर के लिए एक लक्ष्य होगा (लक्ष्य डिडुप्लीकेशन)। सर्वर को किसी भी डुप्लीकेशन की जानकारी नहीं है, सर्वर डेटा जनरेशन का बिंदु भी है। दूसरा उदाहरण बैकअप होगा। आम तौर पर यह एक बैकअप स्टोर होगा जैसे डेटा रिपॉजिटरी या [[वर्चुअल टेप लाइब्रेरी]]।
जब उस स्थान पर डेटा उत्पन्न नहीं हुआ था तब लक्ष्य डुप्लीकेशन डुप्लिकेट को हटाने की प्रक्रिया है। इसका उदाहरण एक SAN/NAS से जुड़ा एक सर्वर होगा, SAN/NAS सर्वर के लिए एक लक्ष्य होगा (लक्ष्य डिडुप्लीकेशन)। सर्वर को किसी भी डुप्लीकेशन की जानकारी नहीं है, सर्वर डेटा जनरेशन का बिंदु भी है। दूसरा उदाहरण बैकअप होगा। आम तौर पर यह एक बैकअप स्टोर होगा जैसे डेटा रिपॉजिटरी या [[वर्चुअल टेप लाइब्रेरी]]।


=== डिडुप्लीकेशन के तरीके ===
=== डिडुप्लीकेशन के तरीके ===
डेटा डुप्लीकेशन कार्यान्वयन के सबसे सामान्य रूपों में से एक डुप्लिकेट का पता लगाने के लिए डेटा के हिस्सों की तुलना करके काम करता है। ऐसा होने के लिए, डेटा के प्रत्येक हिस्से को एक पहचान सौंपी जाती है, जिसकी गणना सॉफ्टवेयर द्वारा की जाती है, आमतौर पर क्रिप्टोग्राफ़िक हैश फ़ंक्शंस का उपयोग करते हुए। कई कार्यान्वयनों में, यह धारणा बनाई जाती है कि यदि पहचान समान है, तो डेटा समान है, भले ही कबूतरखाने के सिद्धांत के कारण यह सभी मामलों में सही नहीं हो सकता है; अन्य कार्यान्वयन यह नहीं मानते हैं कि समान पहचानकर्ता वाले डेटा के दो ब्लॉक समान हैं, लेकिन वास्तव में सत्यापित करते हैं कि समान पहचान वाला डेटा समान है।<ref>An example of an implementation that checks for identity rather than assuming it is described in [http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=1&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=1&f=G&l=50&co1=AND&d=PG01&s1=shnelvar&OS=shnelvar&RS=shnelvar "US Patent application # 20090307251"] {{Webarchive|url=https://web.archive.org/web/20170115031922/http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=1&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=1&f=G&l=50&co1=AND&d=PG01&s1=shnelvar&OS=shnelvar&RS=shnelvar |date=2017-01-15 }}.</ref> यदि सॉफ्टवेयर या तो मानता है कि एक दी गई पहचान पहले से ही डिडुप्लीकेशन नेमस्पेस में मौजूद है या वास्तव में कार्यान्वयन के आधार पर डेटा के दो ब्लॉकों की पहचान की पुष्टि करता है, तो यह उस डुप्लिकेट चंक को एक लिंक से बदल देगा।
डेटा डुप्लीकेशन कार्यान्वयन के सबसे सामान्य रूपों में से एक डुप्लिकेट का पता लगाने के लिए डेटा के हिस्सों की तुलना करके कार्य करता है। ऐसा होने के लिए, डेटा के प्रत्येक हिस्से को एक पहचान सौंपी जाती है, जिसकी गणना सॉफ्टवेयर द्वारा की जाती है, आमतौर पर क्रिप्टोग्राफ़िक हैश फ़ंक्शंस का उपयोग करते हुए। कई कार्यान्वयनों में, यह धारणा बनाई जाती है कि यदि पहचान समान है, तो डेटा समान है, भले ही कबूतरखाने के सिद्धांत के कारण यह सभी मामलों में सही नहीं हो सकता है; अन्य कार्यान्वयन यह नहीं मानते हैं कि समान पहचानकर्ता वाले डेटा के दो ब्लॉक समान हैं, किंतु वास्तव में सत्यापित करते हैं कि समान पहचान वाला डेटा समान है।<ref>An example of an implementation that checks for identity rather than assuming it is described in [http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=1&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=1&f=G&l=50&co1=AND&d=PG01&s1=shnelvar&OS=shnelvar&RS=shnelvar "US Patent application # 20090307251"] {{Webarchive|url=https://web.archive.org/web/20170115031922/http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=1&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=1&f=G&l=50&co1=AND&d=PG01&s1=shnelvar&OS=shnelvar&RS=shnelvar |date=2017-01-15 }}.</ref> यदि सॉफ्टवेयर या तो मानता है कि एक दी गई पहचान पहले से ही डिडुप्लीकेशन नेमस्पेस में मौजूद है या वास्तव में कार्यान्वयन के आधार पर डेटा के दो ब्लॉकों की पहचान की पुष्टि करता है, तो यह उस डुप्लिकेट चंक को एक लिंक से बदल देगा।


एक बार जब डेटा को डुप्लीकेट कर दिया जाता है, फ़ाइल के पीछे पढ़ने पर, जहां भी कोई लिंक मिलता है, सिस्टम बस उस लिंक को संदर्भित डेटा चंक से बदल देता है। डुप्लीकेशन प्रक्रिया का उद्देश्य अंतिम उपयोगकर्ताओं और एप्लिकेशन के लिए पारदर्शी होना है।
एक बार जब डेटा को डुप्लीकेट कर दिया जाता है, फ़ाइल के पीछे पढ़ने पर, जहां भी कोई लिंक मिलता है, प्रणाली बस उस लिंक को संदर्भित डेटा चंक से बदल देता है। डुप्लीकेशन प्रक्रिया का उद्देश्य अंतिम उपयोगकर्ताओं और एप्लिकेशन के लिए पारदर्शी होना है।


वाणिज्यिक डिडुप्लीकेशन कार्यान्वयन उनके चैंकिंग तरीकों और आर्किटेक्चर से भिन्न होते हैं।
वाणिज्यिक डिडुप्लीकेशन कार्यान्वयन उनके चैंकिंग तरीकों और आर्किटेक्चर से भिन्न होते हैं।
* चंकिंग। कुछ प्रणालियों में, चंक्स को भौतिक परत बाधाओं द्वारा परिभाषित किया जाता है (उदाहरण के लिए कहीं भी फ़ाइल लेआउट लिखें में 4KB ब्लॉक आकार)। कुछ प्रणालियों में केवल पूर्ण फाइलों की तुलना की जाती है, जिसे सिंगल-इंस्टेंस स्टोरेज या SIS कहा जाता है। चंकिंग के लिए सबसे बुद्धिमान (लेकिन सीपीयू इंटेंसिव) विधि को आमतौर पर स्लाइडिंग-ब्लॉक माना जाता है, जिसे [[ सामग्री-परिभाषित चंकिंग ]] भी कहा जाता है। स्लाइडिंग ब्लॉक में, फ़ाइल स्ट्रीम के साथ एक विंडो पारित की जाती है ताकि अधिक स्वाभाविक रूप से होने वाली आंतरिक फ़ाइल सीमाओं की तलाश की जा सके।
* चंकिंग। कुछ प्रणालियों में, चंक्स को भौतिक परत बाधाओं द्वारा परिभाषित किया जाता है (उदाहरण के लिए कहीं भी फ़ाइल लेआउट लिखें में 4KB ब्लॉक आकार)। कुछ प्रणालियों में केवल पूर्ण फाइलों की तुलना की जाती है, जिसे सिंगल-इंस्टेंस स्टोरेज या SIS कहा जाता है। चंकिंग के लिए सबसे बुद्धिमान (किंतु सीपीयू इंटेंसिव) विधि को आमतौर पर स्लाइडिंग-ब्लॉक माना जाता है, जिसे [[ सामग्री-परिभाषित चंकिंग ]] भी कहा जाता है। स्लाइडिंग ब्लॉक में, फ़ाइल स्ट्रीम के साथ एक विंडो पारित की जाती है जिससे अधिक स्वाभाविक रूप से होने वाली आंतरिक फ़ाइल सीमाओं की तलाश की जा सके।
* क्लाइंट बैकअप डिडुप्लीकेशन। यह वह प्रक्रिया है जहां स्रोत (क्लाइंट) मशीनों पर डिडुप्लीकेशन हैश गणना शुरू में बनाई जाती है। लक्ष्य डिवाइस में पहले से मौजूद फाइलों के समान हैश वाली फाइलें नहीं भेजी जाती हैं, लक्ष्य डिवाइस केवल डुप्लिकेट किए गए डेटा को संदर्भित करने के लिए उपयुक्त आंतरिक लिंक बनाता है। इसका लाभ यह है कि यह डेटा को अनावश्यक रूप से पूरे नेटवर्क पर भेजे जाने से बचाता है जिससे ट्रैफिक लोड कम होता है।
* क्लाइंट बैकअप डिडुप्लीकेशन। यह वह प्रक्रिया है जहां स्रोत (क्लाइंट) मशीनों पर डिडुप्लीकेशन हैश गणना शुरू में बनाई जाती है। लक्ष्य डिवाइस में पहले से मौजूद फाइलों के समान हैश वाली फाइलें नहीं भेजी जाती हैं, लक्ष्य डिवाइस केवल डुप्लिकेट किए गए डेटा को संदर्भित करने के लिए उपयुक्त आंतरिक लिंक बनाता है। इसका लाभ यह है कि यह डेटा को अनावश्यक रूप से पूरे नेटवर्क पर भेजे जाने से बचाता है जिससे ट्रैफिक लोड कम होता है।
* प्राथमिक भंडारण और माध्यमिक भंडारण। परिभाषा के अनुसार, प्राथमिक भंडारण प्रणालियों को न्यूनतम संभावित लागत के बजाय इष्टतम प्रदर्शन के लिए डिज़ाइन किया गया है। इन प्रणालियों के लिए डिज़ाइन मानदंड अन्य विचारों की कीमत पर प्रदर्शन को बढ़ाना है। इसके अलावा, प्राथमिक स्टोरेज सिस्टम किसी भी ऑपरेशन के प्रति बहुत कम सहिष्णु हैं जो प्रदर्शन को नकारात्मक रूप से प्रभावित कर सकते हैं। साथ ही परिभाषा के अनुसार, द्वितीयक भंडारण प्रणालियों में मुख्य रूप से डुप्लीकेट, या डेटा की द्वितीयक प्रतियां होती हैं। डेटा की इन प्रतियों का उपयोग आम तौर पर वास्तविक उत्पादन संचालन के लिए नहीं किया जाता है और इसके परिणामस्वरूप बढ़ी हुई दक्षता के बदले में कुछ प्रदर्शन गिरावट के प्रति अधिक सहनशील होते हैं।
* प्राथमिक भंडारण और माध्यमिक भंडारण। परिभाषा के अनुसार, प्राथमिक भंडारण प्रणालियों को न्यूनतम संभावित लागत के बजाय इष्टतम प्रदर्शन के लिए डिज़ाइन किया गया है। इन प्रणालियों के लिए डिज़ाइन मानदंड अन्य विचारों की कीमत पर प्रदर्शन को बढ़ाना है। इसके अलावा, प्राथमिक स्टोरेज प्रणाली किसी भी ऑपरेशन के प्रति अधिक कम सहिष्णु हैं जो प्रदर्शन को नकारात्मक रूप से प्रभावित कर सकते हैं। साथ ही परिभाषा के अनुसार, द्वितीयक भंडारण प्रणालियों में मुख्य रूप से डुप्लीकेट, या डेटा की द्वितीयक प्रतियां होती हैं। डेटा की इन प्रतियों का उपयोग आम तौर पर वास्तविक उत्पादन संचालन के लिए नहीं किया जाता है और इसके परिणामस्वरूप बढ़ी हुई दक्षता के बदले में कुछ प्रदर्शन गिरावट के प्रति अधिक सहनशील होते हैं।


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


कुछ मामलों में प्राथमिक भंडारण के साथ डेटा डिडुप्लिकेशन सफलतापूर्वक तैनात किया गया है जहां सिस्टम डिज़ाइन को महत्वपूर्ण ओवरहेड या प्रभाव प्रदर्शन की आवश्यकता नहीं होती है।
कुछ मामलों में प्राथमिक भंडारण के साथ डेटा डिडुप्लिकेशन सफलतापूर्वक तैनात किया गया है जहां प्रणाली डिज़ाइन को महत्वपूर्ण ओवरहेड या प्रभाव प्रदर्शन की आवश्यकता नहीं होती है।


== एकल उदाहरण भंडारण ==
== एकल उदाहरण भंडारण ==
सिंगल-इंस्टेंस स्टोरेज (SIS) सामग्री ऑब्जेक्ट की कई प्रतियाँ लेने और उन्हें एक साझा प्रति द्वारा प्रतिस्थापित करने की प्रणाली की क्षमता है। यह [[आंकड़े]] डुप्लीकेशन को खत्म करने और दक्षता बढ़ाने का एक साधन है। SIS को [[फाइल सिस्टम]], [[ ईमेल सर्वर ]] सॉफ्टवेयर, डेटा [[बैकअप]] और अन्य स्टोरेज से संबंधित कंप्यूटर सॉफ्टवेयर में अक्सर लागू किया जाता है। सिंगल-इंस्टेंस स्टोरेज डेटा डिडुप्लीकेशन का एक सरल रूप है। जबकि डेटा डिडुप्लीकेशन एक खंड या उप-ब्लॉक स्तर पर काम कर सकता है, एकल उदाहरण भंडारण वस्तु स्तर पर काम करता है, वस्तुओं की अनावश्यक प्रतियों को समाप्त करता है जैसे कि संपूर्ण फाइलें या ई-मेल संदेश।<ref>[https://searchitchannel.techtarget.com/tip/Explaining-deduplication-rates-and-single-instance-storage-to-clients Explaining deduplication rates and single-instance storage to clients] {{Webarchive|url=https://web.archive.org/web/20181223211511/https://searchitchannel.techtarget.com/tip/Explaining-deduplication-rates-and-single-instance-storage-to-clients |date=2018-12-23 }}. George Crump, Storage Switzerland</ref>
सिंगल-इंस्टेंस स्टोरेज (SIS) सामग्री ऑब्जेक्ट की कई प्रतियाँ लेने और उन्हें एक साझा प्रति द्वारा प्रतिस्थापित करने की प्रणाली की क्षमता है। यह [[आंकड़े]] डुप्लीकेशन को खत्म करने और दक्षता बढ़ाने का एक साधन है। SIS को [[फाइल सिस्टम|फाइल प्रणाली]], [[ ईमेल सर्वर ]] सॉफ्टवेयर, डेटा [[बैकअप]] और अन्य स्टोरेज से संबंधित कंप्यूटर सॉफ्टवेयर में प्रायः प्रारम्भ किया जाता है। सिंगल-इंस्टेंस स्टोरेज डेटा डिडुप्लीकेशन का एक सरल रूप है। जबकि डेटा डिडुप्लीकेशन एक खंड या उप-ब्लॉक स्तर पर कार्य कर सकता है, एकल उदाहरण भंडारण वस्तु स्तर पर कार्य करता है, वस्तुओं की अनावश्यक प्रतियों को समाप्त करता है जैसे कि संपूर्ण फाइलें या ई-मेल संदेश।<ref>[https://searchitchannel.techtarget.com/tip/Explaining-deduplication-rates-and-single-instance-storage-to-clients Explaining deduplication rates and single-instance storage to clients] {{Webarchive|url=https://web.archive.org/web/20181223211511/https://searchitchannel.techtarget.com/tip/Explaining-deduplication-rates-and-single-instance-storage-to-clients |date=2018-12-23 }}. George Crump, Storage Switzerland</ref>
जटिलता में वृद्धि और (कुछ मामलों में) भंडारण स्थान आवश्यकताओं में मामूली वृद्धि के बदले प्रदर्शन में सुधार के लिए एकल-आवृत्ति भंडारण का उपयोग अन्य डेटा दोहराव या डेटा संपीड़न विधियों के साथ (या स्तरित) किया जा सकता है।
जटिलता में वृद्धि और (कुछ मामलों में) भंडारण स्थान आवश्यकताओं में मामूली वृद्धि के बदले प्रदर्शन में सुधार के लिए एकल-आवृत्ति भंडारण का उपयोग अन्य डेटा दोहराव या डेटा संपीड़न विधियों के साथ (या स्तरित) किया जा सकता है।


== कमियां और चिंताएं ==
== कमियां और चिंताएं ==
डेटा के डुप्लीकेट सेगमेंट की पहचान करने के लिए [[क्रिप्टोग्राफ़िक हैश फ़ंक्शन]] के उपयोग पर डेटा को डिडुप्लिकेट करने का एक तरीका निर्भर करता है। यदि सूचना के दो अलग-अलग टुकड़े समान हैश मान उत्पन्न करते हैं, तो इसे [[हैश टक्कर]] के रूप में जाना जाता है। टकराव की संभावना मुख्य रूप से हैश लंबाई पर निर्भर करती है ([[जन्मदिन का हमला]] देखें)। इस प्रकार, चिंता उत्पन्न होती है कि हैश टक्कर होने पर डेटा भ्रष्टाचार हो सकता है, और सत्यापन के अतिरिक्त साधनों का उपयोग यह सत्यापित करने के लिए नहीं किया जाता है कि डेटा में कोई अंतर है या नहीं। इन-लाइन और पोस्ट-प्रोसेस आर्किटेक्चर दोनों गारंटीकृत डेटा अखंडता के लिए मूल डेटा के बिट-टू-बिट सत्यापन की पेशकश कर सकते हैं। उपयोग किए गए हैश फ़ंक्शंस में [[SHA-1]], [[SHA-256]] और अन्य जैसे मानक शामिल हैं।
डेटा के डुप्लीकेट सेगमेंट की पहचान करने के लिए [[क्रिप्टोग्राफ़िक हैश फ़ंक्शन]] के उपयोग पर डेटा को डिडुप्लिकेट करने का एक तरीका निर्भर करता है। यदि सूचना के दो भिन्न-भिन्न टुकड़े समान हैश मान उत्पन्न करते हैं, तो इसे [[हैश टक्कर]] के रूप में जाना जाता है। टकराव की संभावना मुख्य रूप से हैश लंबाई पर निर्भर करती है ([[जन्मदिन का हमला]] देखें)। इस प्रकार, चिंता उत्पन्न होती है कि हैश टक्कर होने पर डेटा भ्रष्टाचार हो सकता है, और सत्यापन के अतिरिक्त साधनों का उपयोग यह सत्यापित करने के लिए नहीं किया जाता है कि डेटा में कोई अंतर है या नहीं। इन-लाइन और पोस्ट-प्रोसेस आर्किटेक्चर दोनों गारंटीकृत डेटा अखंडता के लिए मूल डेटा के बिट-टू-बिट सत्यापन की पेशकश कर सकते हैं। उपयोग किए गए हैश फ़ंक्शंस में [[SHA-1]], [[SHA-256]] और अन्य जैसे मानक शामिल हैं।


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


एक और चिंता संपीड़न और एन्क्रिप्शन की बातचीत है। एन्क्रिप्शन का लक्ष्य डेटा में किसी भी स्पष्ट पैटर्न को खत्म करना है। इस प्रकार एन्क्रिप्टेड डेटा को डुप्लीकेट नहीं किया जा सकता है, भले ही अंतर्निहित डेटा अनावश्यक हो।
एक और चिंता संपीड़न और एन्क्रिप्शन की बातचीत है। एन्क्रिप्शन का लक्ष्य डेटा में किसी भी स्पष्ट पैटर्न को खत्म करना है। इस प्रकार एन्क्रिप्टेड डेटा को डुप्लीकेट नहीं किया जा सकता है, भले ही अंतर्निहित डेटा अनावश्यक हो।
Line 74: Line 75:


== कार्यान्वयन ==
== कार्यान्वयन ==
कुछ फ़ाइल सिस्टम जैसे कि [[ZFS]] में डिडुप्लीकेशन लागू किया गया है<ref>{{Cite web|url=https://blogs.oracle.com/bonwick/zfs-deduplication-v2|title=ZFS डिडुप्लीकेशन|last=Author|first=Guest|website=blogs.oracle.com|access-date=25 November 2019|archive-date=24 December 2019|archive-url=https://web.archive.org/web/20191224020451/https://blogs.oracle.com/bonwick/zfs-deduplication-v2|url-status=live}}</ref> या कहीं भी फ़ाइल लेआउट लिखें और विभिन्न डिस्क सरणी मॉडल में। यह Windows सर्वर पर [[NTFS]] और ReFS दोनों पर उपलब्ध सेवा है।
कुछ फ़ाइल प्रणाली जैसे कि [[ZFS]] में डिडुप्लीकेशन प्रारम्भ किया गया है<ref>{{Cite web|url=https://blogs.oracle.com/bonwick/zfs-deduplication-v2|title=ZFS डिडुप्लीकेशन|last=Author|first=Guest|website=blogs.oracle.com|access-date=25 November 2019|archive-date=24 December 2019|archive-url=https://web.archive.org/web/20191224020451/https://blogs.oracle.com/bonwick/zfs-deduplication-v2|url-status=live}}</ref> या कहीं भी फ़ाइल लेआउट लिखें और विभिन्न डिस्क सरणी मॉडल में। यह Windows सर्वर पर [[NTFS]] और ReFS दोनों पर उपलब्ध सेवा है।


== यह भी देखें ==
== यह भी देखें ==

Revision as of 23:59, 23 June 2023

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

डिडुप्लीकेशन प्रक्रिया के लिए डेटा 'खंडों' (जिसे 'बाइट पैटर्न' के रूप में भी जाना जाता है) की तुलना की आवश्यकता होती है, जो डेटा के अद्वितीय, सन्निहित ब्लॉक होते हैं। इन खंडों को विश्लेषण की प्रक्रिया के समय पहचाना और संग्रहीत किया जाता है, और उपस्थित डेटा के भीतर अन्य खंडों की तुलना की जाती है। जब भी कोई मैच होता है, तो अनावश्यक खंड को एक छोटे संदर्भ से परिवर्तित कर दिया जाता है जो संग्रहीत खंड की ओर प्रदर्शित करता है। यह देखते हुए कि एक ही बाइट पैटर्न दर्जनों, सैकड़ों, या यहां तक ​​कि हजारों बार हो सकता है (मैच आवृत्ति चंक आकार पर निर्भर है), संग्रहीत या स्थानांतरित किए जाने वाले डेटा की मात्रा को अधिक कम किया जा सकता है।[1][2]

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

डिडुप्लीकेशन LZ77 और LZ78 जैसे डेटा कम्प्रेशन एल्गोरिदम से भिन्न है, जबकि कम्प्रेशन एल्गोरिदम भिन्न-भिन्न फ़ाइलों के अंदर अनावश्यक डेटा की पहचान करते हैं और इस अनावश्यक डेटा को अधिक कुशलता से एन्कोड करते हैं, डुप्लीकेशन का उद्देश्य डेटा की बड़ी मात्रा का निरीक्षण करना और बड़े अनुभागों की पहचान करना है- जैसे कि संपूर्ण फ़ाइलें या फ़ाइलों के बड़े अनुभाग - जो समान हैं, और उन्हें भागित प्रति के साथ प्रतिस्थापित करना है।

कार्य सिद्धांत

उदाहरण के लिए, सामान्य ईमेल प्रणाली में समान 1 एमबी (मेगाबाइट) फ़ाइल अनुलग्नक के 100 उदाहरण हो सकते हैं। जब प्रत्येक ईमेल प्लेटफॉर्म का बैकअप लिया जाता है, तो अनुलग्नक के सभी 100 उदाहरण सहेजे जाते हैं, जिसके लिए 100 एमबी संग्रहण स्थान की आवश्यकता होती है। डेटा डिडुप्लीकेशन के साथ, अनुलग्नक का उदाहरण वास्तव में संग्रहीत किया जाता है; पश्चात के उदाहरणों को लगभग 100 से 1 के डिडुप्लीकेशन अनुपात के लिए सहेजी गई प्रतिलिपि में संदर्भित किया जाता है। अतिरिक्त भंडारण बचत के लिए डिडुप्लीकेशन को प्रायः डेटा कंप्रेशन के साथ जोड़ा जाता है: डिडुप्लीकेशन का उपयोग पहले दोहराए गए डेटा के बड़े खंड को समाप्त करने के लिए किया जाता है, और फिर कंप्रेशन का उपयोग कुशलता से किया जाता है संग्रहीत खंडों में से प्रत्येक को एनकोड करें।[3]

कंप्यूटर कोड में, डिडुप्लीकेशन उदाहरण के लिए, सूचनाओं को चर में संग्रहीत करके किया जाता है जिससे उन्हें भिन्न-भिन्न लिखा न जाए, किंतु केंद्रीय संदर्भित (कंप्यूटर विज्ञान) स्थान पर एक बार में परिवर्तित किया जा सके। उदाहरण सीएसएस कक्षाएं और मीडियाविकिमें नामित संदर्भ हैं।

लाभ

स्टोरेज-आधारित डेटा डिडुप्लीकेशन फाइलों के दिए गए सेट के लिए जरूरी स्टोरेज की मात्रा को कम करता है। यह उन अनुप्रयोगों में सबसे प्रभावी है जहां एक ही डिस्क पर अधिक समान या समान डेटा की कई प्रतियां संग्रहीत की जाती हैं। डेटा बैकअप के मामले में, जो नियमित रूप से डेटा हानि से बचाने के लिए किया जाता है, दिए गए बैकअप में अधिकांश डेटा पिछले बैकअप से अपरिवर्तित रहता है। सामान्य बैकअप प्रणालियाँ उन फ़ाइलों को छोड़ कर (या कड़ी कड़ी िंग) करके इसका फायदा उठाने की कोशिश करती हैं जो फ़ाइलों के बीच डेटा अंतर को परिवर्तित या संग्रहीत नहीं करती हैं। हालाँकि, कोई भी दृष्टिकोण सभी अतिरेक पर कब्जा नहीं करता है। हार्ड-लिंकिंग बड़ी फ़ाइलों के साथ मदद नहीं करती है जो केवल छोटे तरीकों से बदली गई हैं, जैसे कि ईमेल डेटाबेस; मतभेद केवल एक फ़ाइल के आसन्न संस्करणों में अतिरेक पाते हैं (एक खंड पर विचार करें जिसे हटा दिया गया था और पश्चात में फिर से जोड़ा गया था, या कई दस्तावेज़ों में शामिल एक लोगो छवि)।

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

वर्गीकरण

पोस्ट-प्रोसेस बनाम इन-लाइन डुप्लीकेशन

डिडुप्लीकेशन इन-लाइन हो सकता है, क्योंकि डेटा प्रवाहित हो रहा है, या इसके लिखे जाने के पश्चात पोस्ट-प्रोसेस हो सकता है।

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

वैकल्पिक रूप से, डिडुप्लीकेशन हैश गणना इन-लाइन की जा सकती है: जैसे ही डेटा लक्ष्य डिवाइस में प्रवेश करता है, सिंक्रनाइज़ किया जाता है। यदि स्टोरेज प्रणाली एक ब्लॉक की पहचान करता है जिसे उसने पहले ही स्टोर कर लिया है, तो पूरे नए ब्लॉक के बजाय केवल उपस्थित ब्लॉक का संदर्भ संग्रहीत किया जाता है।

पोस्ट-प्रोसेस डिडुप्लीकेशन की तुलना में इन-लाइन डुप्लीकेशन का लाभ यह है कि इसके लिए कम स्टोरेज और नेटवर्क ट्रैफिक की आवश्यकता होती है, क्योंकि डुप्लीकेट डेटा को कभी भी स्टोर या ट्रांसफर नहीं किया जाता है। नकारात्मक पक्ष पर, हैश गणना कम्प्यूटेशनल रूप से महंगी हो सकती है, जिससे स्टोरेज थ्रूपुट कम हो जाता है। हालांकि, इन-लाइन डुप्लीकेशन वाले कुछ वेंडरों ने ऐसे उपकरणों का प्रदर्शन किया है जो उच्च दरों पर इन-लाइन डुप्लीकेशन करने में सक्षम हैं।

पोस्ट-प्रोसेस और इन-लाइन डुप्लीकेशन विधियों पर प्रायः भारी बहस होती है।[4][5]


डेटा प्रारूप

SNIA डिक्शनरी दो तरीकों की पहचान करती है:[2]

  • सामग्री-अज्ञेय डेटा डुप्लीकेशन - एक डेटा डुप्लिकेशन विधि जिसमें विशिष्ट एप्लिकेशन डेटा प्रारूपों के बारे में जागरूकता की आवश्यकता नहीं होती है।
  • सामग्री-जागरूक डेटा डुप्लीकेशन - एक डेटा डुप्लिकेशन विधि जो विशिष्ट एप्लिकेशन डेटा प्रारूपों के ज्ञान का लाभ उठाती है।

स्रोत बनाम लक्ष्य डुप्लीकेशन

डेटा डुप्लीकेशन विधियों को वर्गीकृत करने का एक अन्य तरीका यह है कि वे कहाँ होते हैं। जहां डेटा बनाया गया है, उसके करीब होने वाले डुप्लीकेशन को स्रोत डुप्लिकेशन कहा जाता है। जब यह उस जगह के पास होता है जहां डेटा संग्रहीत किया जाता है, तो इसे लक्ष्य डुप्लीकेशन कहा जाता है।

स्रोत डिडुप्लीकेशन यह सुनिश्चित करता है कि डेटा स्रोत पर डेटा डुप्लीकेशन किया गया है। यह आम तौर पर एक फाइल प्रणाली के भीतर होता है। फ़ाइल प्रणाली समय-समय पर हैश बनाने वाली नई फ़ाइलों को स्कैन करेगा और उनकी तुलना उपस्थित फ़ाइलों के हैश से करेगा। जब एक ही हैश वाली फाइलें मिलती हैं तो फाइल कॉपी हटा दी जाती है और नई फाइल पुरानी फाइल को इंगित करती है। हालांकि, कठिन कड़ियाँ के विपरीत, डुप्लिकेट की गई फ़ाइलों को भिन्न-भिन्न इकाइयां माना जाता है और यदि डुप्लिकेट की गई फ़ाइलों में से एक को पश्चात में संशोधित किया जाता है, तो लिखने पर नकल नामक प्रणाली का उपयोग करके उस परिवर्तित फ़ाइल या ब्लॉक की एक प्रति बनाई जाती है। डुप्लीकेशन प्रक्रिया उपयोगकर्ताओं और बैकअप एप्लिकेशन के लिए पारदर्शी है। एक डिडुप्लिकेट फ़ाइल प्रणाली का बैकअप लेने से प्रायः दोहराव होता है जिसके परिणामस्वरूप बैकअप स्रोत डेटा से बड़ा होता है।[6][7]

कॉपी करने के संचालन के लिए स्रोत डिडुप्लीकेशन को स्पष्ट रूप से घोषित किया जा सकता है, क्योंकि यह जानने के लिए किसी गणना की आवश्यकता नहीं है कि कॉपी किए गए डेटा को डुप्लीकेशन की आवश्यकता है। यह फाइल प्रणाली पर लिंकिंग के एक नए रूप की ओर जाता है जिसे रिफलिंक (लिनक्स) या क्लोनफाइल (मैकओएस) कहा जाता है, जहां एक या एक से अधिक इनोड्स (फाइल सूचना प्रविष्टियां) उनके कुछ या सभी डेटा को साझा करने के लिए बनाई जाती हैं। इसे समान रूप से हार्ड लिंक के नाम पर रखा गया है, जो इनोड स्तर पर कार्य करता है, और सांकेतिक लिंक जो फ़ाइल नाम स्तर पर कार्य करता है।[8] भिन्न-भिन्न प्रविष्टियों में कॉपी-ऑन-राइट व्यवहार होता है जो गैर-अलियासिंग होता है, यानी एक कॉपी को पश्चात में बदलने से दूसरी कॉपी प्रभावित नहीं होंगी।[9] Microsoft का ReFS भी इस ऑपरेशन का समर्थन करता है।[10] जब उस स्थान पर डेटा उत्पन्न नहीं हुआ था तब लक्ष्य डुप्लीकेशन डुप्लिकेट को हटाने की प्रक्रिया है। इसका उदाहरण एक SAN/NAS से जुड़ा एक सर्वर होगा, SAN/NAS सर्वर के लिए एक लक्ष्य होगा (लक्ष्य डिडुप्लीकेशन)। सर्वर को किसी भी डुप्लीकेशन की जानकारी नहीं है, सर्वर डेटा जनरेशन का बिंदु भी है। दूसरा उदाहरण बैकअप होगा। आम तौर पर यह एक बैकअप स्टोर होगा जैसे डेटा रिपॉजिटरी या वर्चुअल टेप लाइब्रेरी

डिडुप्लीकेशन के तरीके

डेटा डुप्लीकेशन कार्यान्वयन के सबसे सामान्य रूपों में से एक डुप्लिकेट का पता लगाने के लिए डेटा के हिस्सों की तुलना करके कार्य करता है। ऐसा होने के लिए, डेटा के प्रत्येक हिस्से को एक पहचान सौंपी जाती है, जिसकी गणना सॉफ्टवेयर द्वारा की जाती है, आमतौर पर क्रिप्टोग्राफ़िक हैश फ़ंक्शंस का उपयोग करते हुए। कई कार्यान्वयनों में, यह धारणा बनाई जाती है कि यदि पहचान समान है, तो डेटा समान है, भले ही कबूतरखाने के सिद्धांत के कारण यह सभी मामलों में सही नहीं हो सकता है; अन्य कार्यान्वयन यह नहीं मानते हैं कि समान पहचानकर्ता वाले डेटा के दो ब्लॉक समान हैं, किंतु वास्तव में सत्यापित करते हैं कि समान पहचान वाला डेटा समान है।[11] यदि सॉफ्टवेयर या तो मानता है कि एक दी गई पहचान पहले से ही डिडुप्लीकेशन नेमस्पेस में मौजूद है या वास्तव में कार्यान्वयन के आधार पर डेटा के दो ब्लॉकों की पहचान की पुष्टि करता है, तो यह उस डुप्लिकेट चंक को एक लिंक से बदल देगा।

एक बार जब डेटा को डुप्लीकेट कर दिया जाता है, फ़ाइल के पीछे पढ़ने पर, जहां भी कोई लिंक मिलता है, प्रणाली बस उस लिंक को संदर्भित डेटा चंक से बदल देता है। डुप्लीकेशन प्रक्रिया का उद्देश्य अंतिम उपयोगकर्ताओं और एप्लिकेशन के लिए पारदर्शी होना है।

वाणिज्यिक डिडुप्लीकेशन कार्यान्वयन उनके चैंकिंग तरीकों और आर्किटेक्चर से भिन्न होते हैं।

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

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

कुछ मामलों में प्राथमिक भंडारण के साथ डेटा डिडुप्लिकेशन सफलतापूर्वक तैनात किया गया है जहां प्रणाली डिज़ाइन को महत्वपूर्ण ओवरहेड या प्रभाव प्रदर्शन की आवश्यकता नहीं होती है।

एकल उदाहरण भंडारण

सिंगल-इंस्टेंस स्टोरेज (SIS) सामग्री ऑब्जेक्ट की कई प्रतियाँ लेने और उन्हें एक साझा प्रति द्वारा प्रतिस्थापित करने की प्रणाली की क्षमता है। यह आंकड़े डुप्लीकेशन को खत्म करने और दक्षता बढ़ाने का एक साधन है। SIS को फाइल प्रणाली, ईमेल सर्वर सॉफ्टवेयर, डेटा बैकअप और अन्य स्टोरेज से संबंधित कंप्यूटर सॉफ्टवेयर में प्रायः प्रारम्भ किया जाता है। सिंगल-इंस्टेंस स्टोरेज डेटा डिडुप्लीकेशन का एक सरल रूप है। जबकि डेटा डिडुप्लीकेशन एक खंड या उप-ब्लॉक स्तर पर कार्य कर सकता है, एकल उदाहरण भंडारण वस्तु स्तर पर कार्य करता है, वस्तुओं की अनावश्यक प्रतियों को समाप्त करता है जैसे कि संपूर्ण फाइलें या ई-मेल संदेश।[12] जटिलता में वृद्धि और (कुछ मामलों में) भंडारण स्थान आवश्यकताओं में मामूली वृद्धि के बदले प्रदर्शन में सुधार के लिए एकल-आवृत्ति भंडारण का उपयोग अन्य डेटा दोहराव या डेटा संपीड़न विधियों के साथ (या स्तरित) किया जा सकता है।

कमियां और चिंताएं

डेटा के डुप्लीकेट सेगमेंट की पहचान करने के लिए क्रिप्टोग्राफ़िक हैश फ़ंक्शन के उपयोग पर डेटा को डिडुप्लिकेट करने का एक तरीका निर्भर करता है। यदि सूचना के दो भिन्न-भिन्न टुकड़े समान हैश मान उत्पन्न करते हैं, तो इसे हैश टक्कर के रूप में जाना जाता है। टकराव की संभावना मुख्य रूप से हैश लंबाई पर निर्भर करती है (जन्मदिन का हमला देखें)। इस प्रकार, चिंता उत्पन्न होती है कि हैश टक्कर होने पर डेटा भ्रष्टाचार हो सकता है, और सत्यापन के अतिरिक्त साधनों का उपयोग यह सत्यापित करने के लिए नहीं किया जाता है कि डेटा में कोई अंतर है या नहीं। इन-लाइन और पोस्ट-प्रोसेस आर्किटेक्चर दोनों गारंटीकृत डेटा अखंडता के लिए मूल डेटा के बिट-टू-बिट सत्यापन की पेशकश कर सकते हैं। उपयोग किए गए हैश फ़ंक्शंस में SHA-1, SHA-256 और अन्य जैसे मानक शामिल हैं।

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

एक और चिंता संपीड़न और एन्क्रिप्शन की बातचीत है। एन्क्रिप्शन का लक्ष्य डेटा में किसी भी स्पष्ट पैटर्न को खत्म करना है। इस प्रकार एन्क्रिप्टेड डेटा को डुप्लीकेट नहीं किया जा सकता है, भले ही अंतर्निहित डेटा अनावश्यक हो।

हालांकि डेटा डिडुप्लीकेशन की कमी नहीं है, डेटा का उल्लंघन तब हुआ है जब अपर्याप्त सुरक्षा और एक्सेस सत्यापन प्रक्रियाओं का उपयोग डुप्लीकेट डेटा के बड़े रिपॉजिटरी के साथ किया जाता है। कुछ प्रणालियों में, जैसा कि सामान्य रूप से क्लाउड स्टोरेज के साथ होता है,[citation needed] एक हमलावर वांछित डेटा के हैश मान को जानकर या अनुमान लगाकर दूसरों के स्वामित्व वाले डेटा को पुनः प्राप्त कर सकता है।[13]


कार्यान्वयन

कुछ फ़ाइल प्रणाली जैसे कि ZFS में डिडुप्लीकेशन प्रारम्भ किया गया है[14] या कहीं भी फ़ाइल लेआउट लिखें और विभिन्न डिस्क सरणी मॉडल में। यह Windows सर्वर पर NTFS और ReFS दोनों पर उपलब्ध सेवा है।

यह भी देखें

संदर्भ

  1. "डेटा डुप्लीकेशन को समझना". Druva (in English). 2009-01-09. Archived from the original on 2019-08-06. Retrieved 2019-08-06.
  2. 2.0 2.1 "SNIA Dictionary » Dictionary D". Archived from the original on 2018-12-24. Retrieved 2018-12-23.
  3. Compression, deduplication and encryption: What's the difference? Archived 2018-12-23 at the Wayback Machine, Stephen Bigelow and Paul Crocetti
  4. "In-line or post-process de-duplication? (updated 6-08)". Backup Central. Archived from the original on 2009-12-06. Retrieved 2009-10-16.
  5. "इनलाइन बनाम पोस्ट-प्रोसेसिंग डिडुप्लिकेशन उपकरण". Searchdatabackup.techtarget.com. Archived from the original on 2009-06-09. Retrieved 2009-10-16.
  6. "Windows Server 2008: Windows Storage Server 2008". Microsoft.com. Archived from the original on 2009-10-04. Retrieved 2009-10-16.
  7. "उत्पाद - प्लेटफार्म ओएस". NetApp. Archived from the original on 2010-02-06. Retrieved 2009-10-16.
  8. "The reflink(2) system call v5". lwn.net. Archived from the original on 2015-10-02. Retrieved 2019-10-04.
  9. "ioctl_ficlonerange(2)". Linux Manual Page. Archived from the original on 2019-10-07. Retrieved 2019-10-04.
  10. Kazuki MATSUDA. "ReFS समर्थन पर विंडोज़ पर क्लोनफाइल जोड़ें". GitHub. Archived from the original on 2021-01-13. Retrieved 2020-02-23.
  11. An example of an implementation that checks for identity rather than assuming it is described in "US Patent application # 20090307251" Archived 2017-01-15 at the Wayback Machine.
  12. Explaining deduplication rates and single-instance storage to clients Archived 2018-12-23 at the Wayback Machine. George Crump, Storage Switzerland
  13. CHRISTIAN CACHIN; MATTHIAS SCHUNTER (December 2011). "एक बादल जिस पर आप भरोसा कर सकते हैं". IEEE Spectrum. IEEE. Archived from the original on 2012-01-02. Retrieved 2011-12-21.
  14. Author, Guest. "ZFS डिडुप्लीकेशन". blogs.oracle.com. Archived from the original on 24 December 2019. Retrieved 25 November 2019. {{cite web}}: |last= has generic name (help)


बाहरी संबंध