फ़्लैट-फ़ाइल डेटाबेस: Difference between revisions

From Vigyanwiki
No edit summary
 
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{short description|Database stored as an ordinary unstructured file}}
{{short description|Database stored as an ordinary unstructured file}}
{{distinguish|Flat file system|Flat file (hand tool)}}[[Image:Flat File Model.svg|thumb|280px|फ़्लैट फ़ाइल मॉडल का उदाहरण<ref name="USDT01">[http://knowledge.fhwa.dot.gov/tam/aashto.nsf/All+Documents/4825476B2B5C687285256B1F00544258/$FILE/DIGloss.pdf Data Integration Glossary] {{webarchive |url=https://web.archive.org/web/20090320001015/http://knowledge.fhwa.dot.gov/tam/aashto.nsf/All+Documents/4825476B2B5C687285256B1F00544258/$FILE/DIGloss.pdf |date=March 20, 2009 }}, U.S. Department of Transportation, August 2001.</ref>]]फ़्लैट-फ़ाइल [[डेटाबेस]] फ़ाइल में संग्रहीत  डेटाबेस है जिसे फ़्लैट फ़ाइल कहा जाता है। रिकॉर्ड समान प्रारूप का पालन करते हैं, और रिकॉर्ड के बीच संबंधों को अनुक्रमित करने या पहचानने के लिए कोई संरचना नहीं होती है। फ़ाइल सरल हैफ़्लैट फ़ाइल सादा [[पाठ फ़ाइल]] (उदाहरण के लिए अल्पविराम से अलग किए गए मान, टेक्स्ट फ़ाइल या टैब से अलग किए गए मान) या [[बाइनरी फ़ाइल]] हो सकती है। डेटाबेस में डेटा से संबंधों का अनुमान लगाया जा सकता है, लेकिन डेटाबेस प्रारूप स्वयं उन रिश्तों को स्पष्ट नहीं करता है।
{{distinguish|फ्लैट फ़ाइल सिस्टम|फ़्लैट फ़ाइल (हैंड टूल)}}[[Image:Flat File Model.svg|thumb|280px|फ़्लैट फ़ाइल मॉडल का उदाहरण<ref name="USDT01">[http://knowledge.fhwa.dot.gov/tam/aashto.nsf/All+Documents/4825476B2B5C687285256B1F00544258/$FILE/DIGloss.pdf Data Integration Glossary] {{webarchive |url=https://web.archive.org/web/20090320001015/http://knowledge.fhwa.dot.gov/tam/aashto.nsf/All+Documents/4825476B2B5C687285256B1F00544258/$FILE/DIGloss.pdf |date=March 20, 2009 }}, U.S. Department of Transportation, August 2001.</ref>]]'''फ़्लैट-फ़ाइल [[डेटाबेस]]''' फ़ाइल में स्टोर्ड डेटाबेस है जिसे फ़्लैट फ़ाइल कहा जाता है। रिकॉर्ड यूनिफार्म फॉर्मेट का पालन करते हैं, और रिकॉर्ड के मध्य संबंधों को इंडेक्सिंग करने या पहचानने के लिए कोई संरचना नहीं होती है। फ़ाइल सरल है, फ़्लैट फ़ाइल प्लेन [[पाठ फ़ाइल|टेक्स्ट फ़ाइल]] (जैसे सीएसवी, टीएक्सटी या टीएसवी) या [[बाइनरी फ़ाइल]] हो सकती है। डेटाबेस में डेटा से संबंधों का अनुमान लगाया जा सकता है, किंतु डेटाबेस फॉर्मेट स्वयं उन रिलेशनशिप को स्पष्ट नहीं करता है।


इस शब्द का तात्पर्य आम तौर पर  छोटा डेटाबेस है, लेकिन बहुत बड़े डेटाबेस भी सपाट हो सकते हैं।
इस शब्द का तात्पर्य सामान्यतः छोटा डेटाबेस है, किंतु अधिक बड़े डेटाबेस भी फ्लैट हो सकते हैं।


==अवलोकन==
==अवलोकन==


सादे पाठ फ़ाइलों में आमतौर पर प्रति पंक्ति  [[रिकॉर्ड (कंप्यूटर विज्ञान)]] होता है।<ref>{{Citation
प्लेन टेक्स्ट फ़ाइलों में सामान्यतः प्रति लाइन [[रिकॉर्ड (कंप्यूटर विज्ञान)]] होता है।<ref>{{Citation
  | last = Fowler
  | last = Fowler
  | first = Glenn
  | first = Glenn
Line 13: Line 13:
  | periodical = WTEC'94: Proceedings of the USENIX Winter 1994 Technical Conference on USENIX Winter 1994 Technical Conference
  | periodical = WTEC'94: Proceedings of the USENIX Winter 1994 Technical Conference on USENIX Winter 1994 Technical Conference
  | url = http://static.usenix.org/publications/library/proceedings/sf94/full_papers/fowler.a
  | url = http://static.usenix.org/publications/library/proceedings/sf94/full_papers/fowler.a
}}</ref> डेटा को चित्रित करने के लिए अलग-अलग परंपराएँ हैं। अल्पविराम से अलग किए गए मान और [[सीमांकक]] से अलग किए गए मान फ़ाइलों में, फ़ील्ड (कंप्यूटर विज्ञान) को अल्पविराम से अलग किए गए मान या टैब से अलग किए गए मान वर्णों जैसे सीमांकक द्वारा अलग किया जा सकता है। अन्य मामलों में, प्रत्येक फ़ील्ड की निश्चित लंबाई हो सकती है; संक्षिप्त मानों को स्पेस वर्णों के साथ जोड़ा जा सकता है। सीमांकक टकराव से बचने के लिए अतिरिक्त स्वरूपण की आवश्यकता हो सकती है।
}}</ref> डेटा को चित्रित करने के लिए भिन्न-भिन्न परंपराएँ हैं। कॉमा से भिन्न किए गए मान और [[सीमांकक|डिलिमिटर]] से भिन्न किए गए मान फ़ाइलों में, फ़ील्ड (कंप्यूटर विज्ञान) को कॉमा से भिन्न किए गए मान या टैब से भिन्न किए गए मान करैक्टर जैसे डिलिमिटर द्वारा भिन्न किया जा सकता है। अन्य स्थितियों में, प्रत्येक फ़ील्ड की निश्चित लंबाई हो सकती है; संक्षिप्त मानों को स्पेस करैक्टर के साथ जोड़ा जा सकता है। डिलिमिटर कोलिजन से बचने के लिए अतिरिक्त फोर्मटिंग की आवश्यकता हो सकती है।


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


फ़्लैट फ़ाइलों के उदाहरणों में शामिल हैं <code>[[/etc/passwd]]</code> और <code>[[/etc/group]]</code> यूनिक्स जैसे ऑपरेटिंग सिस्टम पर। फ़्लैट फ़ाइल का अन्य उदाहरण नाम, पता और फ़ोन नंबर फ़ील्ड वाली नाम-और-पता सूची है।
फ़्लैट फ़ाइलों के उदाहरणों में यूनिक्स जैसे ऑपरेटिंग सिस्टम पर <code>[[/etc/passwd]]</code> और <code>[[/etc/group]]</code> सम्मिलित हैं। फ़्लैट फ़ाइल का अन्य उदाहरण नेम, एड्रेस और फ़ोन नंबर फ़ील्ड वाली नेम-और-एड्रेस लिस्ट है।


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


==इतिहास==
==इतिहास==


संयुक्त राज्य अमेरिका की जनगणना ब्यूरो के लिए [[हरमन होलेरिथ]] का काम पहली बार 1890 की संयुक्त राज्य अमेरिका की जनगणना में किया गया था, जिसमें पेपर कार्ड में छेद के माध्यम से सारणीबद्ध डेटा शामिल था,<ref>{{Cite journal|last=Blodgett|first=John H.|last2=Schultz|first2=Claire K.|date=1969|title=Herman hollerith: data processing pioneer|url=https://onlinelibrary.wiley.com/doi/abs/10.1002/asi.4630200307|journal=American Documentation|language=en|volume=20|issue=3|pages=221–226|doi=10.1002/asi.4630200307|issn=1936-6108}}</ref> इसे कभी-कभी पहला कम्प्यूटरीकृत फ़्लैट-फ़ाइल डेटाबेस माना जाता है, क्योंकि इसमें अन्य कार्डों को अनुक्रमित करने वाला कोई कार्ड शामिल नहीं होता है, या अन्यथा व्यक्तिगत कार्डों को -दूसरे से संबंधित नहीं किया जाता है, उनकी समूह सदस्यता को छोड़कर।
संयुक्त राज्य अमेरिका की जनगणना ब्यूरो के लिए [[हरमन होलेरिथ]] का कार्य सर्वप्रथम 1890 की संयुक्त राज्य अमेरिका की जनगणना में किया गया था, जिसमें पेपर कार्ड में होल के माध्यम से टेबल डेटा सम्मिलित था,<ref>{{Cite journal|last=Blodgett|first=John H.|last2=Schultz|first2=Claire K.|date=1969|title=Herman hollerith: data processing pioneer|url=https://onlinelibrary.wiley.com/doi/abs/10.1002/asi.4630200307|journal=American Documentation|language=en|volume=20|issue=3|pages=221–226|doi=10.1002/asi.4630200307|issn=1936-6108}}</ref> इसे कभी-कभी प्रथम कम्प्यूटरीकृत फ़्लैट-फ़ाइल डेटाबेस माना जाता है, क्योंकि इसमें अन्य कार्डों का इंडेक्सिंग कार्ड सम्मिलित नहीं होता है, या अन्यथा व्यक्तिगत कार्डों को एक-दूसरे से संबंधित नहीं किया जाता है।


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


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


===आधुनिक कार्यान्वयन===
===मॉडर्न इम्प्लीमेंटेशन्स ===


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


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


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


कॉलम में शामिल हैं: नाम ( व्यक्ति का नाम, दूसरा कॉलम); टीम (व्यक्ति द्वारा समर्थित एथलेटिक टीम का नाम, तीसरा कॉलम); और संख्यात्मक अद्वितीय आईडी, (अभिलेखों को विशिष्ट रूप से पहचानने के लिए उपयोग किया जाता है, पहला कॉलम)।
कॉलम में सम्मिलित हैं: नेम (व्यक्ति का नाम, दूसरा कॉलम); टीम (व्यक्ति द्वारा समर्थित एथलेटिक टीम का नाम, तीसरा कॉलम); और संख्यात्मक अद्वितीय आईडी, (अभिलेखों को स्पेसिफिक रूप से पहचानने के लिए उपयोग किया जाता है, पहला कॉलम)।


यहां वर्णित डेटा का उदाहरण पाठ्य प्रस्तुतिकरण दिया गया है:
यहां वर्णित डेटा का उदाहरण टेक्सटुअल प्रस्तुतिकरण दिया गया है:


  आईडी नाम टीम
  id    name    team
  1 एमी ब्लूज़
  1     Amy    Blues
  2 बॉब रेड्स
  2     Bob    Reds
  3 चक ब्लूज़
  3     Chuck  Blues
  4 रिचर्ड ब्लूज़
  4     Richard Blues
  5 एथेल रेड्स
  5     Ethel  Reds
  6 फ्रेड ब्लूज़
  6     Fred    Blues
  7 गिल्ली ब्लूज़
  7     Gilly  Blues
  8 हैंक रेड्स
  8     Hank    Reds
  9 हैंक ब्लूज़
  9     Hank    Blues


इस प्रकार का डेटा प्रतिनिधित्व फ़्लैट-फ़ाइल डेटाबेस के लिए काफी मानक है, हालाँकि कुछ अतिरिक्त विचार हैं जो पाठ से आसानी से स्पष्ट नहीं होते हैं:
इस प्रकार का डेटा प्रतिनिधित्व फ़्लैट-फ़ाइल डेटाबेस के लिए अधिक मानक है, चूँकि कुछ अतिरिक्त विचार हैं जो टेक्स्ट सरलता से स्पष्ट नहीं होते हैं:
* '[[डेटा प्रकार]]:' डेटाबेस तालिका में प्रत्येक कॉलम, जैसा कि ऊपर दिया गया है, आमतौर पर  विशिष्ट डेटा प्रकार तक ही सीमित होता है। ऐसे प्रतिबंध आम तौर पर सम्मेलन द्वारा स्थापित किए जाते हैं, लेकिन औपचारिक रूप से तब तक संकेत नहीं दिए जाते जब तक कि डेटा को [[ संबंध का डेटाबेस ]] सिस्टम में स्थानांतरित नहीं किया जाता है।
* ''''[[डेटा प्रकार|डेटा टाइप]]:''' डेटाबेस टेबल में प्रत्येक कॉलम, जैसा कि ऊपर दिया गया है, सामान्यतः स्पेसिफिक डेटा टाइप तक ही सीमित होता है। ऐसे प्रतिबंध सामान्यतः कन्वेंशन द्वारा स्थापित किए जाते हैं, किंतु फॉर्मल रूप से तब तक संकेत नहीं दिए जाते जब तक कि डेटा को [[ संबंध का डेटाबेस |रिलेशन डेटाबेस]] सिस्टम में स्थानांतरित नहीं किया जाता है।
* 'पृथक कॉलम:' उपरोक्त उदाहरण में, अलग-अलग कॉलम को [[व्हाइटस्पेस (कंप्यूटर विज्ञान)]] वर्णों का उपयोग करके अलग किया गया है। इसे इंडेंटेशन या निश्चित-चौड़ाई डेटा फ़ॉर्मेटिंग भी कहा जाता है। अन्य आम परंपरा  या अधिक सीमांकक वर्णों का उपयोग करके स्तंभों को अलग करना है, जैसे अल्पविराम से अलग किए गए_मान|टैब या अल्पविराम।
* '''<nowiki/>'सेपरेटेड कॉलम:'''' उपरोक्त उदाहरण में, भिन्न-भिन्न कॉलम को [[व्हाइटस्पेस (कंप्यूटर विज्ञान)]] करैक्टर का उपयोग करके भिन्न किया गया है। इसे इंडेंटेशन या फिक्स्ड-विड्थ डेटा फ़ॉर्मेटिंग भी कहा जाता है। अन्य सामान्य कन्वेंशन या अधिक डिलिमिटर करैक्टर का उपयोग करके कॉलम को भिन्न करना है, जैसे टैब या कॉमा का उपयोग करके कॉलम को भिन्न करना है।
* '[[संबंधपरक बीजगणित]]:' उपरोक्त तालिका में प्रत्येक पंक्ति या रिकॉर्ड संबंधपरक बीजगणित के तहत टुपल की मानक परिभाषा को पूरा करता है (उपरोक्त उदाहरण 3-टुपल्स की श्रृंखला को दर्शाता है)। इसके अतिरिक्त, पहली पंक्ति Tuple#Names को निर्दिष्ट करती है जो प्रत्येक पंक्ति के मानों से जुड़े होते हैं।
* '''<nowiki/>'[[संबंधपरक बीजगणित|रिलेशनल बीजगणित'<nowiki/>]]''': उपरोक्त टेबल में प्रत्येक रो या रिकॉर्ड रिलेशनल बीजगणित के अंतर्गत टुपल की मानक परिभाषा को पूर्ण करता है (उपरोक्त उदाहरण 3-टुपल्स की श्रृंखला को दर्शाता है)। इसके अतिरिक्त, प्रथम रो उन फ़ील्ड नामों को स्पेसिफाई करती है जो प्रत्येक रो के मानों से जुड़े होते हैं।
* '[[डेटाबेस प्रबंधन प्रणाली]]:' चूंकि टेक्स्ट फ़ाइल के साथ संभव औपचारिक संचालन आमतौर पर वांछित से अधिक सीमित होते हैं, उपरोक्त उदाहरण में टेक्स्ट आमतौर पर डेटाबेस प्रबंधन प्रणाली में स्थानांतरित होने से पहले डेटा की मध्यस्थ स्थिति का प्रतिनिधित्व करेगा।
* '''<nowiki/>'[[डेटाबेस प्रबंधन प्रणाली|डेटाबेस मैनेजमेंट सिस्टम'<nowiki/>]]''': चूंकि टेक्स्ट फ़ाइल के साथ संभव फॉर्मल ऑपरेशन सामान्यतः वांछित से अधिक सीमित होते हैं, उपरोक्त उदाहरण में टेक्स्ट सामान्यतः डेटाबेस मैनेजमेंट सिस्टम में स्थानांतरित होने से पूर्व डेटा की मध्यस्थ स्थिति को रिप्रेजेंट करता है।


== यह भी देखें ==
== यह भी देखें ==
* passwd|/etc/passwd, आमतौर पर उपयोग की जाने वाली फ़्लैट फ़ाइल, जिसका उपयोग यूनिक्स में उपयोगकर्ताओं का विवरण देने के लिए किया जाता है
* /etc/passwd, सामान्यतः उपयोग की जाने वाली फ़्लैट फ़ाइल, जिसका उपयोग यूनिक्स में यूजर का विवरण देने के लिए किया जाता है।
* अल्पविराम से अलग किए गए मान (मानक अल्पविराम से अलग किए गए मान)
* सीएसवी (मानक कॉमा से भिन्न किए गए मान)
* [[बर्कले डीबी]] (विशिष्ट फ्लैट-फ़ाइल डेटाबेस)
* [[बर्कले डीबी]] (स्पेसिफिक फ्लैट-फ़ाइल डेटाबेस)
* [[Awk]] (शास्त्रीय फ़्लैट-फ़ाइल प्रोसेसर)
* [[Awk|एडब्लूके]] (क्लासिकल फ़्लैट-फ़ाइल प्रोसेसर)
* [[Recfiles]] (सादा पाठ डेटाबेस फ़ाइल स्वरूप)
* [[Recfiles|रेस्फील्स]] (प्लेन टेक्स्ट डेटाबेस फ़ाइल फॉर्मेट)


==संदर्भ==
==संदर्भ==
{{Commons category|Flat file models}}
{{reflist}}
{{reflist}}


Line 80: Line 79:
[[Category: Machine Translated Page]]
[[Category: Machine Translated Page]]
[[Category:Created On 25/07/2023]]
[[Category:Created On 25/07/2023]]
[[Category:Vigyan Ready]]

Latest revision as of 22:13, 2 February 2024

फ़्लैट फ़ाइल मॉडल का उदाहरण[1]

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

इस शब्द का तात्पर्य सामान्यतः छोटा डेटाबेस है, किंतु अधिक बड़े डेटाबेस भी फ्लैट हो सकते हैं।

अवलोकन

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

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

फ़्लैट फ़ाइलों के उदाहरणों में यूनिक्स जैसे ऑपरेटिंग सिस्टम पर /etc/passwd और /etc/group सम्मिलित हैं। फ़्लैट फ़ाइल का अन्य उदाहरण नेम, एड्रेस और फ़ोन नंबर फ़ील्ड वाली नेम-और-एड्रेस लिस्ट है।

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

इतिहास

संयुक्त राज्य अमेरिका की जनगणना ब्यूरो के लिए हरमन होलेरिथ का कार्य सर्वप्रथम 1890 की संयुक्त राज्य अमेरिका की जनगणना में किया गया था, जिसमें पेपर कार्ड में होल के माध्यम से टेबल डेटा सम्मिलित था,[3] इसे कभी-कभी प्रथम कम्प्यूटरीकृत फ़्लैट-फ़ाइल डेटाबेस माना जाता है, क्योंकि इसमें अन्य कार्डों का इंडेक्सिंग कार्ड सम्मिलित नहीं होता है, या अन्यथा व्यक्तिगत कार्डों को एक-दूसरे से संबंधित नहीं किया जाता है।

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

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

मॉडर्न इम्प्लीमेंटेशन्स

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

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

उदाहरण डेटाबेस

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

कॉलम में सम्मिलित हैं: नेम (व्यक्ति का नाम, दूसरा कॉलम); टीम (व्यक्ति द्वारा समर्थित एथलेटिक टीम का नाम, तीसरा कॉलम); और संख्यात्मक अद्वितीय आईडी, (अभिलेखों को स्पेसिफिक रूप से पहचानने के लिए उपयोग किया जाता है, पहला कॉलम)।

यहां वर्णित डेटा का उदाहरण टेक्सटुअल प्रस्तुतिकरण दिया गया है:

id    name    team
1     Amy     Blues
2     Bob     Reds
3     Chuck   Blues
4     Richard Blues
5     Ethel   Reds
6     Fred    Blues
7     Gilly   Blues
8     Hank    Reds
9     Hank    Blues

इस प्रकार का डेटा प्रतिनिधित्व फ़्लैट-फ़ाइल डेटाबेस के लिए अधिक मानक है, चूँकि कुछ अतिरिक्त विचार हैं जो टेक्स्ट सरलता से स्पष्ट नहीं होते हैं:

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

यह भी देखें

  • /etc/passwd, सामान्यतः उपयोग की जाने वाली फ़्लैट फ़ाइल, जिसका उपयोग यूनिक्स में यूजर का विवरण देने के लिए किया जाता है।
  • सीएसवी (मानक कॉमा से भिन्न किए गए मान)
  • बर्कले डीबी (स्पेसिफिक फ्लैट-फ़ाइल डेटाबेस)
  • एडब्लूके (क्लासिकल फ़्लैट-फ़ाइल प्रोसेसर)
  • रेस्फील्स (प्लेन टेक्स्ट डेटाबेस फ़ाइल फॉर्मेट)

संदर्भ

  1. Data Integration Glossary Archived March 20, 2009, at the Wayback Machine, U.S. Department of Transportation, August 2001.
  2. Fowler, Glenn (1994), "cql: Flat-file database query language", WTEC'94: Proceedings of the USENIX Winter 1994 Technical Conference on USENIX Winter 1994 Technical Conference
  3. Blodgett, John H.; Schultz, Claire K. (1969). "Herman hollerith: data processing pioneer". American Documentation (in English). 20 (3): 221–226. doi:10.1002/asi.4630200307. ISSN 1936-6108.