आईएसएएम

From Vigyanwiki
Revision as of 12:32, 20 July 2023 by alpha>AKASHVERMA

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

आईएसएएम शब्द का प्रयोग कई संबंधित अवधारणाओं के लिए किया जाता है:

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

संगठन

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

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

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

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

आईएसएएम को आईबीएम में वर्चुअल स्टोरेज एक्सेस विधि नामक एक पद्धति से बदल दिया गया था। फिर भी बाद में, आईबीएम ने आईबीएम एसक्यूअल/डीएस और आईबीएम डीबी2 विकसित किया गया था, जिसे आईबीएम अपने प्राथमिक डेटाबेस प्रबंधन प्रणाली के रूप में प्रचारित करता है। वीएसएएम डीबी2 में प्रयुक्त भौतिक पहुंच विधि होती है।

ओपेन वीएमएस

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

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

डिज़ाइन संबंधी विचार

आईबीएम इंजीनियरों ने न्यूनतम मात्रा में स्मृति का उपयोग करने के लिए आईएसएएम प्रणाली को डिज़ाइन किया था। एक आईएसएएम फाइल में डेटा रिकॉर्ड का संग्रह और सूचकांक के दो या तीन स्तर होते है। ट्रैक सूची में प्रत्येक ट्रैक (डिस्क ड्राइव) के लिए सिलेंडर-हेड-सेक्टर#सिलेंडर पर उच्चतम कुंजी होती है। सिलेंडर सूची एक सिलेंडर पर उच्चतम कुंजी और संबंधित ट्रैक सूची के सिलेंडर-हेड-सेक्टर को संग्रहीत करता है। एक वैकल्पिक मास्टर सूची, जो सामान्यतः केवल बड़ी फाइलों के लिए उपयोग किया जाता है, में सिलेंडर सूची ट्रैक पर उच्चतम कुंजी और उस सिलेंडर सूची का डिस्क पता होता है। एक बार फाइल लोड होने के बाद डेटा रिकॉर्ड स्थानांतरित नहीं होते है; सम्मिलित रिकॉर्ड को एक अलग अतिप्रवाह क्षेत्र में रखा जाता है। कुंजी द्वारा रिकॉर्ड का पता लगाने के लिए डिस्क पर सूची को एक जटिल Self-modifying_code#Channel प्रोग्राम|self-modifying Channel_I/O#Channel प्रोग्राम द्वारा खोजा जाता है।[7] इससे चैनल, नियंत्रण इकाई और डिस्क का व्यस्त समय बढ़ गया। बाद के प्रणाली में भौतिक और आभासी मेमोरी आकार में वृद्धि के साथ इसे अक्षम के रूप में देखा गया, और वीएसएएम को मेमोरी उपयोग और डिस्क गतिविधि के बीच ट्रेडऑफ़ को बदलने के लिए विकसित किया गया था।

आईएसएएम के स्व-संशोधित चैनल प्रोग्राम के उपयोग ने बाद में OS/360 के CP-67 समर्थन के लिए कठिनाइयों का कारण बना दिया, क्योंकि I/O ऑपरेशन प्रारंभ होने पर CP-67 ने पूरे चैनल प्रोग्राम को निश्चित मेमोरी में कॉपी कर लिया और वर्चुअल एड्रैस को वास्तविक एड्रैस में अनुवादित किया।[8]

आईएसएएम-शैली कार्यान्वयन

यह भी देखें

संदर्भ

  1. Chin, Y.H. (1975). "वीएसएएम के मुक्त-स्थान व्यवहार का विश्लेषण". VLDB '75: Proceedings of the 1st International Conference on Very Large Data Bases: 514–515. doi:10.1145/1282480.1282529. ISBN 9781450318181. S2CID 11082747.
  2. Bogue, Robert L. (2004-02-13). "ISAM और रिलेशनल डेटाबेस के बीच अंतर का अन्वेषण करें". Retrieved 17 October 2014.
  3. Larson, Per-Åke (1981). "अतिप्रवाह श्रृखंला के साथ सूचकांक-अनुक्रमिक फ़ाइलों का विश्लेषण". ACM Transactions on Database Systems. 6 (4): 671–680. doi:10.1145/319628.319665. S2CID 16261748.
  4. Ramakrishnan Raghu, Gehrke Johannes - Database Management Systems, McGraw-Hill Higher Education (2000), 2nd edition (en) page 252
  5. 5.0 5.1 5.2 "सी के लिए फेयरकॉम आईएसएएम एपीआई - डेवलपर्स गाइड".{{cite web}}: CS1 maint: url-status (link)
  6. "सी-आईएसएएम प्रोग्रामर मैनुअल" (PDF).{{cite web}}: CS1 maint: url-status (link)
  7. IBM Corporation (1973). DOS/VS LIOCS Volume 3: DAM and ISAM Logic. pp. 63–72. Retrieved Dec 30, 2018.
  8. IBM Corporation (1972). IBM Virtual Machine Facility /370: Planning Guide (PDF). p. 45. Retrieved Jan 8, 2018.
  9. Graf, Peter. "pblIsamफ़ाइल कार्यान्वयन". mission-base.com. Retrieved Sep 8, 2017.