डेटाबेस शार्डिंग



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



शार्डिंग का क्या मतलब होता है ?


शार्डिंग का मतलब होता है किसी बड़ी चीज़ को छोटे - छोटे टुकड़ों में बाँट देना ताकि उसे आसानी से व्यवस्थित करके उसके उपयोग की गति को बढ़ाया जा सके। शार्डिंग का उपयोग दरअसल डेटाबेस की तकनीक में उपयोग किया जाता है जब किसी डेटाबेस का आकार (SIZE) इतना बड़ा हो जाता है कि उसे उपयोग में लाते समय विलंब या देरी का सामना करना पड़े या डेटाबेस में संरक्षित जानकारी को निकालने में काफी मेहनत करनी पड़े।

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

कितना अच्छा होगा अगर कॉलेज अपने इस डेटाबेस को काफी सारे छोटे -छोटे डेटाबेस में विभाजित करके रख ले । मान लीजिए कि  कॉलेज ने आने और जाने वाले विद्यार्थियों का डेटाबेस हर साल के हिसाब से बना रखा है। अब वह हर साल के लिए अगल फाइल या रजिस्टर लगा हुआ है। अब कोई भी चाहे तो पिछले 3 - 4 साल का रिकार्ड एक साथ ही चेक कर सकता है या काफी सारे लोग एक साथ अपना रिकार्ड देख सकते हैं। अगर किसी को 2010, किसी को 2008, किसी को 2000 या किसी को 1992 के साल का रिकार्ड चेक करना है तो ये अपने अपने रिकार्ड एक साथ चेक कर सकते हैं।

इसे ही डेटाबेस की तकनीक में शार्डिंग कहा जाता है ताकि डेटाबेस को अधिक तेज, उपयोगी और व्यवस्थित बनाया जा सके।



ब्लॉकचेन में शार्डिंग की क्या जरूरत ?


जैसा कि हमें अपनी एक लेख में बताया है कि ब्लॉकचेन क्या होती है। ब्लॉकचेन भी डेटाबेस की एक उत्तम तकनीक है। यह एक डिजिटल डेटाबेस है और यह विकेंद्रीकृत (DECENTRALIZED) है। मगर विकेंद्रीकृत होने के बावजूद भी यह डेटाबेस सभी नोड पर उपलब्ध होता है। एक नोड पूरा का पूरा डेटाबेस पाने पास रखती है अगर 1000 नोड उस ब्लॉकचेन नेटवर्क पर हैं तो वह डेटाबेस 1000 नोड पर पूरा लोड होता है। 

इससे होता यह है कि लेन -देंन का सारा रिकार्ड एक ही डेटाबेस में रखा जा रहा है अगर हम कोई लेन - देन के रिकार्ड की पुष्टि करना चाहें तो उसे ढूँढने में काफी समय लगेगा। जिससे डेटाबेस काफी धीमा भी हो जाएगा।

इसे देखते हुए इथीरियम के डेवलपरों  (DEVLOPERS) ने अपने डेटाबेस की शार्डिंग की टेस्टिंग चालू की। वह एक ऐसे डेटाबेस को निर्मित कर रहें है जिसे अलग - अलग कंप्युटर नोड पर टुकड़ों में स्टोर किया जा सके ताकि डेटाबेस में जिस जानकारी को ढूँढना हो उसी टुकड़े या शार्ड को छेड़ा जाए। इससे डेटाबेस भी सुचारु रूप से चलता रहेगा क्योंकि अब हम पूरा डेटाबेस नहीं खंगाल रहें हैं।




शार्डिंग की चुनौतियाँ



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


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



शार्डिंग का निष्कर्ष


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