Unit-3 Big data one shot | aktu | btech | easy explanation #oneshot #bigdata #aktuexam #unit3 #btech
55:38

Unit-3 Big data one shot | aktu | btech | easy explanation #oneshot #bigdata #aktuexam #unit3 #btech

Coreconcepts:engineering

8 chapters7 takeaways18 key terms5 questions

Overview

यह वीडियो बिग डेटा के यूनिट 3 को कवर करता है, जिसमें मुख्य रूप से HDFS (Hadoop Distributed File System) और Hadoop एनवायरमेंट पर ध्यान केंद्रित किया गया है। इसमें HDFS की संरचना, डिज़ाइन, लाभ, चुनौतियाँ, फ़ाइल और ब्लॉक साइज़, डेटा रेप्लिकेशन, और फ़ाइलों को पढ़ने, लिखने और स्टोर करने की प्रक्रिया को समझाया गया है। इसके अतिरिक्त, वीडियो Hadoop के विभिन्न इंटरफ़ेस (Java, कमांड लाइन, File System), डेटा इंजेक्शन (Flume, Sqoop), Hadoop आर्काइव्स, इनपुट/आउटपुट (Compression, Serialization, Avro), क्लस्टर स्पेसिफिकेशन, सेटअप, सुरक्षा, निगरानी, रखरखाव और बेंचमार्किंग पर भी विस्तार से चर्चा करता है।

How was this?

Save this permanently with flashcards, quizzes, and AI chat

Chapters

  • HDFS (Hadoop Distributed File System) बड़े डेटा सेट को स्टोर करने के लिए एक डिस्ट्रीब्यूटेड, स्केलेबल और पोर्टेबल फाइल सिस्टम है, जो जावा में लिखा गया है।
  • इसके दो मुख्य कॉम्पोनेंट्स हैं: एक मास्टर नोड (NameNode) और कई स्लेव नोड्स (DataNodes)।
  • NameNode मेटाडेटा को मैनेज करता है और पूरे सिस्टम का प्रबंधन करता है, जबकि DataNodes वास्तविक डेटा को स्टोर और प्रोसेस करते हैं।
  • HDFS मास्टर-स्लेव आर्किटेक्चर पर काम करता है, जहाँ फ़ाइलों को छोटे ब्लॉक्स (आमतौर पर 128MB) में विभाजित किया जाता है और विभिन्न DataNodes पर स्टोर किया जाता है।
HDFS की संरचना और डिज़ाइन को समझना यह जानने के लिए महत्वपूर्ण है कि बड़े डेटा को कैसे कुशलतापूर्वक और विश्वसनीय रूप से स्टोर और प्रबंधित किया जाता है।
एक बड़ी फ़ाइल को 128MB के छोटे ब्लॉक्स में विभाजित करना और प्रत्येक ब्लॉक को अलग-अलग DataNodes पर स्टोर करना।
  • HDFS के लाभों में बड़ी मात्रा में डेटा स्टोर करने की क्षमता, एक सरल मॉडल, स्केलेबिलिटी, और सूचना तक तेज़ पहुँच शामिल है।
  • डेटा को केवल एक बार लिखा जा सकता है लेकिन कई बार पढ़ा जा सकता है, और इसमें डेटा रिकवरी तकनीकें तेज़ी से लागू होती हैं।
  • चुनौतियों में सिंगल NameNode का फेलियर (जो पूरे सिस्टम को अनुपलब्ध बना सकता है), छोटे फ़ाइलों को स्टोर करने में NameNode पर लोड बढ़ना, और फ़ाइलों को आसानी से संशोधित या अपडेट न कर पाना शामिल है।
  • रेप्लिकेशन (आमतौर पर तीन कॉपी) के कारण अधिक स्टोरेज स्पेस की आवश्यकता होती है और सुरक्षा सुविधाएँ सीमित हो सकती हैं।
HDFS के लाभों और चुनौतियों को जानने से यह समझने में मदद मिलती है कि यह किन परिदृश्यों के लिए उपयुक्त है और इसकी सीमाओं को कैसे दूर किया जा सकता है।
यदि ट्रेडिशनल HDFS में एकमात्र NameNode फेल हो जाती है, तो पूरा फाइल सिस्टम अनुपलब्ध हो जाता है।
  • HDFS में, बड़ी फ़ाइलों को स्टोरेज से पहले छोटे ब्लॉक्स में विभाजित किया जाता है, जिनका डिफ़ॉल्ट आकार 128MB होता है।
  • ब्लॉक एब्स्ट्रैक्शन का अर्थ है एक बड़ी फ़ाइल को ब्लॉक्स में तोड़ना और उन ब्लॉक्स को विभिन्न मशीनों पर स्टोर करना, जिससे फ़ाइल को एक सिंगल यूनिट के रूप में स्टोर करने की आवश्यकता समाप्त हो जाती है।
  • डेटा रेप्लिकेशन में प्रत्येक डेटा ब्लॉक की कई कॉपीज़ (डिफ़ॉल्ट रूप से तीन) बनाई जाती हैं ताकि फॉल्ट टॉलरेंस और डेटा विश्वसनीयता सुनिश्चित की जा सके।
  • रेप्लिकेशन फैक्टर यह निर्धारित करता है कि किसी ब्लॉक की कितनी कॉपीज़ बनाई जाएंगी।
फ़ाइल साइज़, ब्लॉक एब्स्ट्रैक्शन और रेप्लिकेशन की अवधारणाएँ यह सुनिश्चित करती हैं कि डेटा को कुशलतापूर्वक स्टोर किया जाए और सिस्टम फेल होने पर भी डेटा सुरक्षित रहे।
एक 300MB की फ़ाइल को 128MB के तीन ब्लॉक्स (B1, B2, B3) में विभाजित करना, जहाँ B1 और B2 पूरी तरह से 128MB के होंगे और B3 में शेष 44MB डेटा होगा।
  • फ़ाइल पढ़ने की प्रक्रिया में, क्लाइंट फ़ाइल खोलता है, NameNode से ब्लॉक लोकेशन प्राप्त करता है, DataNodes से डेटा स्ट्रीम करता है, और ब्लॉक के अंत में कनेक्शन बंद कर देता है।
  • फ़ाइल लिखने की प्रक्रिया में, क्लाइंट एक नई फ़ाइल बनाने का अनुरोध करता है, NameNode मेटाडेटा बनाता है, क्लाइंट डेटा पैकेट DataNodes को एक पाइपलाइन के माध्यम से भेजता है, और सभी ब्लॉक लिखे जाने के बाद फ़ाइल बंद हो जाती है।
  • फ़ाइलों को HDFS में अपलोड करने पर, वे ब्लॉक्स में विभाजित हो जाती हैं, क्लस्टर पर स्टोर हो जाती हैं, और सुरक्षा के लिए रेप्लिकेट की जाती हैं; NameNode मेटाडेटा स्टोर करता है।
फ़ाइलों को पढ़ने, लिखने और स्टोर करने की प्रक्रिया को समझना Hadoop के संचालन के मूल सिद्धांतों को स्पष्ट करता है।
जब कोई क्लाइंट HDFS में एक फ़ाइल लिखता है, तो डेटा पैकेट एक DataNode से दूसरे DataNode तक एक पाइपलाइन के माध्यम से भेजे जाते हैं।
  • Java इंटरफ़ेस डेवलपर्स को Java का उपयोग करके HDFS के साथ प्रोग्रामेटिक रूप से इंटरैक्ट करने की अनुमति देता है, जिसमें FileSystem, Path, FSDataInputStream, और FSDataOutputStream जैसी क्लासेस शामिल हैं।
  • कमांड लाइन इंटरफ़ेस (CLI) उपयोगकर्ताओं को टर्मिनल कमांड का उपयोग करके HDFS को एक्सेस करने की सुविधा देता है, जो Linux कमांड्स के समान होती हैं (जैसे ls, put, get, rm)।
  • Hadoop File System (HFS) इंटरफ़ेस एक सामान्य एब्स्ट्रैक्शन लेयर प्रदान करता है जो प्रोग्राम्स को HDFS, लोकल फाइल सिस्टम और अन्य स्टोरेज सिस्टम के साथ काम करने की अनुमति देता है, जिससे पोर्टेबिलिटी और लचीलापन बढ़ता है।
विभिन्न इंटरफ़ेस Hadoop के साथ इंटरैक्ट करने के विभिन्न तरीके प्रदान करते हैं, जिससे डेवलपर्स और उपयोगकर्ताओं को अपनी आवश्यकताओं के अनुसार सबसे उपयुक्त विधि चुनने में मदद मिलती है।
Linux कमांड्स के समान `hdfs dfs -ls /` कमांड का उपयोग करके HDFS में फाइलों की सूची देखना।
  • डेटा फ्लो MapReduce के संदर्भ में होता है, जिसमें इनपुट रीडर डेटा को पढ़ता है, मैप फ़ंक्शन उसे प्रोसेस करता है, पार्टीशन फ़ंक्शन उसे विभाजित करता है, शफलिंग और सॉर्टिंग डेटा को व्यवस्थित करती है, और रिड्यूस फ़ंक्शन अंतिम परिणाम उत्पन्न करता है।
  • डेटा इंजेक्शन विभिन्न स्रोतों से Hadoop में डेटा लाने की प्रक्रिया है।
  • Flume का उपयोग कंटीन्यूअस स्ट्रीमिंग डेटा (जैसे लॉग्स, इवेंट्स) को कलेक्ट करने के लिए किया जाता है, जिसमें सोर्स, चैनल और सिंक शामिल होते हैं।
  • Sqoop का उपयोग डेटाबेस (जैसे MySQL, Oracle) और Hadoop के बीच डेटा ट्रांसफर करने के लिए किया जाता है, जो स्ट्रक्चर्ड डेटा के लिए उपयुक्त है।
डेटा फ्लो और इंजेक्शन की प्रक्रियाओं को समझना यह जानने के लिए महत्वपूर्ण है कि डेटा Hadoop इकोसिस्टम में कैसे प्रवेश करता है और संसाधित होता है।
वेबसाइट लॉग्स को लगातार कलेक्ट करने के लिए Flume का उपयोग करना, या MySQL डेटाबेस से स्टूडेंट रिकॉर्ड्स को HDFS में ट्रांसफर करने के लिए Sqoop का उपयोग करना।
  • Hadoop आर्काइव्स (HAR) कई छोटी फ़ाइलों को एक कॉम्पैक्ट HDFS ब्लॉक में पैक करने की सुविधा है, जो NameNode पर लोड कम करता है और मेमोरी की बर्बादी से बचाता है।
  • HAR फ़ाइलें केवल रीड-ओनली होती हैं और उन्हें संशोधित नहीं किया जा सकता है।
  • Hadoop इनपुट/आउटपुट में डेटा के साइज़ को कम करने के लिए कंप्रेशन (इनपुट और आउटपुट दोनों) शामिल है।
  • सीरियलाइजेशन डेटा को बाइट स्ट्रीम में परिवर्तित करता है ताकि इसे HDFS में स्टोर या नेटवर्क पर ट्रांसफर किया जा सके, जबकि Avro डेटा और उसके स्कीमा (स्ट्रक्चर) दोनों को कुशलतापूर्वक स्टोर करने का एक तरीका है।
आर्काइव्स छोटी फ़ाइलों को कुशलतापूर्वक प्रबंधित करने में मदद करते हैं, जबकि कंप्रेशन, सीरियलाइजेशन और Avro डेटा स्टोरेज और ट्रांसफर को अधिक कुशल बनाते हैं।
कई छोटी लॉग फ़ाइलों को एक एकल `.har` फ़ाइल में संयोजित करना ताकि उन्हें HDFS में अधिक कुशलता से प्रबंधित किया जा सके।
  • क्लस्टर स्पेसिफिकेशन Hadoop क्लस्टर में मशीनों (Nodes) के कॉन्फ़िगरेशन का विवरण है, जिसमें मास्टर नोड, वर्कर नोड्स और नेटवर्क कॉन्फ़िगरेशन शामिल हैं।
  • Hadoop क्लस्टर सेटअप में आवश्यक सॉफ्टवेयर इंस्टॉल करना, नोड्स के बीच नेटवर्क कनेक्शन स्थापित करना, SSH कम्युनिकेशन सक्षम करना, कॉन्फ़िगरेशन फ़ाइलों को एडिट करना, और सेवाओं को शुरू करना शामिल है।
  • Hadoop सुरक्षा अनधिकृत पहुँच से डेटा और संसाधनों की सुरक्षा करती है, जिसमें ऑथेंटिकेशन, ऑथराइजेशन, डेटा एन्क्रिप्शन और HDFS अनुमतियाँ शामिल हैं।
  • निगरानी (Monitoring) क्लस्टर के स्वास्थ्य और प्रदर्शन की लगातार जाँच करती है, जबकि रखरखाव (Maintenance) सिस्टम को बेहतर बनाने और ठीक करने के लिए कार्रवाई करता है।
एक अच्छी तरह से परिभाषित क्लस्टर, सुरक्षित सेटअप, निरंतर निगरानी और नियमित रखरखाव Hadoop क्लस्टर की विश्वसनीयता, प्रदर्शन और सुरक्षा सुनिश्चित करने के लिए आवश्यक हैं।
क्लस्टर में सभी नोड्स के बीच पासवर्ड-रहित SSH लॉगिन स्थापित करना ताकि नोड्स के बीच सुरक्षित संचार सुनिश्चित हो सके।

Key takeaways

  1. 1HDFS बड़े डेटा को स्टोर करने के लिए एक मास्टर-स्लेव आर्किटेक्चर का उपयोग करता है, जहाँ NameNode मेटाडेटा को मैनेज करता है और DataNodes डेटा को स्टोर करते हैं।
  2. 2फ़ाइलों को बड़े ब्लॉक्स में विभाजित किया जाता है और डेटा की विश्वसनीयता के लिए रेप्लिकेट किया जाता है, जो फॉल्ट टॉलरेंस प्रदान करता है।
  3. 3HDFS में फ़ाइलों को पढ़ना, लिखना और स्टोर करना एक संरचित प्रक्रिया का पालन करता है जिसमें NameNode और DataNodes के बीच इंटरैक्शन शामिल होता है।
  4. 4Java इंटरफ़ेस, कमांड लाइन इंटरफ़ेस और Hadoop File System इंटरफ़ेस Hadoop के साथ इंटरैक्ट करने के विभिन्न तरीके प्रदान करते हैं।
  5. 5Flume स्ट्रीमिंग डेटा के लिए और Sqoop डेटाबेस से डेटा ट्रांसफर के लिए डेटा इंजेक्शन के महत्वपूर्ण उपकरण हैं।
  6. 6Hadoop आर्काइव्स छोटी फ़ाइलों को कुशलतापूर्वक प्रबंधित करने में मदद करते हैं, जबकि कंप्रेशन, सीरियलाइजेशन और Avro डेटा प्रोसेसिंग को अनुकूलित करते हैं।
  7. 7एक सुरक्षित, अच्छी तरह से कॉन्फ़िगर किया गया और लगातार मॉनिटर किया जाने वाला Hadoop क्लस्टर बड़े डेटा को प्रभावी ढंग से प्रबंधित करने के लिए महत्वपूर्ण है।

Key terms

HDFS (Hadoop Distributed File System)NameNodeDataNodeMaster-Slave ArchitectureBlockReplication FactorBlock AbstractionData IngestionFlumeSqoopHadoop Archives (HAR)SerializationAvroClusterAuthenticationAuthorizationMonitoringMaintenance

Test your understanding

  1. 1HDFS में NameNode और DataNode की क्या भूमिकाएँ हैं और वे एक साथ कैसे काम करते हैं?
  2. 2HDFS में डेटा रेप्लिकेशन क्यों महत्वपूर्ण है और यह फॉल्ट टॉलरेंस कैसे सुनिश्चित करता है?
  3. 3Hadoop में फ़ाइल पढ़ने और लिखने की प्रक्रिया के मुख्य चरणों का वर्णन करें।
  4. 4Flume और Sqoop का उपयोग करके डेटा इंजेक्शन के बीच मुख्य अंतर क्या हैं?
  5. 5Hadoop क्लस्टर की सुरक्षा सुनिश्चित करने के लिए कौन से तंत्र (जैसे ऑथेंटिकेशन, ऑथराइजेशन) उपयोग किए जाते हैं?

Turn any lecture into study material

Paste a YouTube URL, PDF, or article. Get flashcards, quizzes, summaries, and AI chat — in seconds.

No credit card required