लॉग-स्ट्रक्चर फाइल सिस्टम

From alpha
Jump to navigation Jump to search

लॉग-स्ट्रक्चर फाइल सिस्टम ऐसी सिस्टम है जिसमें डेटा एवं मेटाडेटा क्रमिक रूप से सर्कुलर बफर में लिखे जाते हैं, जिसे लॉग कहा जाता है। डिजाइन सर्वप्रथम 1988 में जॉन के ओस्टरहाउट एवं फ्रेड डौग्लिस द्वारा प्रस्तावित किया गया था एवं सर्वप्रथम 1992 में ओस्टरहाउट एवं मेंडल रोसेनब्लम द्वारा यूनिक्स-जैसी स्प्राइट (ऑपरेटिंग सिस्टम) वितरित ऑपरेटिंग सिस्टम के लिए प्रारम्भ किया गया था।[1]


रैशनल

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

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

इसके कई महत्वपूर्ण दुष्प्रभाव हैं:

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

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

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

हानि

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

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

यह भी देखें

  • लॉग-स्ट्रक्चर फाइल सिस्टम की सूची
  • फाइल सिस्टम की समानता

संदर्भ

  1. John K. Ousterhout, Mendel Rosenblum. (1991), The Design and Implementation of a Log-Structured File System (PDF), University of California, Berkeley
  2. Magic Pocket Hardware Engineering Teams. "पहले पेटाबाइट स्केल एसएमआर ड्राइव परिनियोजन के साथ मैजिक पॉकेट इनोवेशन का विस्तार". dropbox.tech.
  3. Reid, Colin; Bernstein, Phil (1 January 2010). "सेमीकंडक्टर स्टोरेज के लिए एपेंड-ओनली इंटरफेस को लागू करना" (PDF). IEEE Data Eng. Bull. 33: 14-20.
  4. Swaminathan Sundararaman, Jingpei Yang (2014), Don't stack your Log on my Log (PDF), SanDisk Corporation


अग्रिम पठन