बिग डेटा क्या है?
डेटा यानी वे तथ्य जिन्हें हम दर्ज कर सकते हैं: संख्याएँ, शब्द, चित्र, आवाज़। ज़्यादातर डेटा एक कंप्यूटर में आसानी से आ जाता है।
बिग डेटा अलग है। यह इतना बड़ा, इतना तेज़ या इतना मिला-जुला होता है कि एक साधारण कंप्यूटर और स्प्रेडशीट जैसे साधारण सॉफ़्टवेयर से इसे रखना और समझना मुश्किल होता है।
इसे तीन V से पहचानते हैं:
- मात्रा (Volume): कितना डेटा। टेराबाइट (TB) और पेटाबाइट (PB) में। 1 PB = 1000 TB।
- वेग (Velocity): नया डेटा कितनी तेज़ी से आता है और उसे कितनी जल्दी संभालना है, अक्सर तुरंत (real time)।
- विविधता (Variety): डेटा के कई प्रकार। कुछ संरचित (structured) होता है (पंक्ति-स्तंभ), बहुत-सा असंरचित (unstructured) (फ़ोटो, वीडियो, चैट)।
कुछ किताबें और V जोड़ती हैं: विश्वसनीयता (Veracity) और मूल्य (Value)।
डेटा साइंस यानी डेटा इकट्ठा करना, साफ़ करना, जाँचना और उससे सवालों के जवाब निकालना। बिग डेटा डेटा साइंटिस्ट का मुख्य कच्चा माल है।
एक कंप्यूटर काफ़ी क्यों नहीं: बिग डेटा की प्रोसेसिंग
रिलेशनल डेटाबेस तय ढाँचे वाली तालिकाओं में डेटा रखता है। बिग डेटा अक्सर असंरचित होता है और बदलता रहता है, इसलिए तय तालिकाओं में ठीक से नहीं बैठता।
एक मशीन की मेमोरी और गति भी सीमित है। इसलिए वितरित प्रोसेसिंग (distributed processing) करते हैं: डेटा और काम कई कंप्यूटरों (क्लस्टर) में बँटता है जो एक साथ (parallel) चलते हैं।
MapReduce तीन चाल में
- Split (बाँटो): डेटा के टुकड़े, हर मशीन को एक।
- Map: हर मशीन अपने टुकड़े पर काम करके छोटे नतीजे बनाती है (जैसे शब्द → गिनती)।
- Reduce (जोड़ो): एक ही key वाले नतीजे इकट्ठे करके अंतिम जवाब बनता है।
उदाहरण: अरबों वेब पेजों में हर शब्द कितनी बार आया, यह गिनना हो तो हर मशीन अपने पेज गिनती है; फिर 'क्रिकेट' की सारी गिनतियाँ जोड़ दी जाती हैं।
फ़ंक्शनल प्रोग्रामिंग क्यों काम आती है
जिन फ़ंक्शन का कोई साइड इफ़ेक्ट नहीं होता और जो अपरिवर्तनीय (immutable) डेटा लेते हैं, वे एक ही इनपुट पर हमेशा एक ही आउटपुट देते हैं। इसलिए उन्हें कई मशीनों पर किसी भी क्रम में एक साथ चलाना सुरक्षित है। map, filter, reduce जैसे हायर-ऑर्डर फ़ंक्शन इसी तरीके के हैं।
बिग डेटा का मॉडल: तथ्य और ग्राफ
फैक्ट-आधारित मॉडल (Fact-based model)
किसी रिकॉर्ड को बदलने के बजाय हर जानकारी को समय के साथ एक तथ्य की तरह जोड़ते हैं, जो कभी मिटाया नहीं जाता। जैसे 'आशा पुणे में रहती है (2024-03-01)', बाद में 'आशा दिल्ली में रहती है (2026-07-15)'। कुछ भी ऊपर से नहीं लिखा जाता, इसलिए पूरा इतिहास बचा रहता है।
ग्राफ स्कीमा (Graph schema)
ग्राफ में डेटा नोड (लोग, जगह, सामान) और एज (उनके बीच संबंध, जैसे 'फ़ॉलो करता है', 'खरीदा') के रूप में रहता है। नोड और एज पर गुण (properties) भी हो सकते हैं, जैसे उम्र या तारीख। सोशल नेटवर्क, नक्शे और सुझाव (recommendations) के लिए ग्राफ सबसे अच्छे हैं।
उपयोग, AI और खतरे
- विज्ञान: मौसम और जलवायु मॉडल, दूरबीन, जीन अनुक्रमण।
- स्वास्थ्य: अस्पतालों के रिकॉर्ड से बीमारी का फैलाव जल्दी पकड़ना।
- शहर: सेंसर डेटा से ट्रैफ़िक लाइट और बसों की योजना।
- व्यापार: ऑनलाइन दुकान लाखों लोगों की खरीद से सुझाव देती है।
- AI: मशीन लर्निंग मॉडल बहुत सारे उदाहरणों से पैटर्न सीखते हैं। अच्छा डेटा = बेहतर मॉडल; पक्षपाती डेटा = पक्षपाती मॉडल।
खतरे: निजता (privacy) का नुकसान, डेटा लीक, पक्षपाती डेटा से अन्यायपूर्ण फ़ैसले, 'साथ-साथ बढ़ना' (correlation) को 'कारण' मान लेना, और डेटा सेंटर की बिजली खपत। डेटा सुरक्षा कानून कहते हैं कि केवल ज़रूरी डेटा लो और उसे सुरक्षित रखो।
खुद करके देखो: MapReduce टीम बनो
चाहिए: अख़बार का एक पन्ना और 3-4 दोस्त या घर के लोग।
- पहले अनुमान लगाओ: 'है' शब्द एक व्यक्ति जल्दी गिनेगा या चार लोग?
- एक व्यक्ति पूरे पन्ने पर 'है' गिने। समय नोट करो।
- अब पन्ने को 4 पट्टियों में काटो (Split)। हर व्यक्ति अपनी पट्टी पर गिने (Map)।
- चारों संख्याएँ जोड़ो (Reduce)। फिर समय नोट करो।
- तुलना करो। टीम ठीक 4 गुना तेज़ क्यों नहीं हुई? (काटने, बाँटने और जोड़ने में भी समय लगता है।)
3D के आखिरी चरण में स्लाइडर से यही बात देखो।
मुख्य सूत्र और परिभाषाएँ
- बिग डेटा के 3 V: मात्रा (Volume), वेग (Velocity), विविधता (Variety); अतिरिक्त: विश्वसनीयता (Veracity), मूल्य (Value)
- इकाइयाँ: 1 KB = 1000 B, 1 MB = 1000 KB, 1 GB = 1000 MB, 1 TB = 1000 GB, 1 PB = 1000 TB
- आदर्श समानांतर समय ≈ एक मशीन का समय ÷ मशीनों की संख्या (असल में थोड़ा ज़्यादा)
- MapReduce: Split → Map (key, value) → key से समूह → Reduce (जोड़ना)
- संरचित डेटा: तय पंक्ति-स्तंभ; असंरचित डेटा: चित्र, वीडियो, खुला टेक्स्ट
- ग्राफ: नोड (चीज़ें) + एज (संबंध) + गुण (विवरण)
हल किए गए उदाहरण
1. एक वीडियो ऐप पर हर मिनट 500 घंटे का नया वीडियो, साथ में कमेंट और लाइक आते हैं। इसमें बिग डेटा के कौन-से V हैं?
मात्रा: वीडियो फ़ाइलें बहुत बड़ी हैं और हर मिनट 500 घंटे बहुत ज़्यादा है। वेग: यह हर मिनट बिना रुके आता है। विविधता: वीडियो, टेक्स्ट कमेंट और लाइक की संख्या, तीन अलग प्रकार। यानी तीनों V।
2. एक कंप्यूटर को किसी डेटा पर 60 घंटे लगते हैं। काम 12 मशीनों में बराबर बाँटा गया। अतिरिक्त समय छोड़ दें तो कितना समय लगेगा?
आदर्श समय = 60 ÷ 12 = 5 घंटे। असल में थोड़ा ज़्यादा लगेगा, क्योंकि डेटा बाँटने, नेटवर्क पर भेजने और नतीजे जोड़ने में भी समय लगता है।
3. MapReduce से तीन टोकरियों के फल गिनो: टोकरी 1 = सेब, आम, सेब; टोकरी 2 = आम, आम; टोकरी 3 = सेब, केला।
Map (हर टोकरी अलग): T1 → (सेब,2), (आम,1); T2 → (आम,2); T3 → (सेब,1), (केला,1)। key से समूह: सेब → [2,1], आम → [1,2], केला → [1]। Reduce (जोड़ो): सेब = 3, आम = 3, केला = 1।
4. शब्दों में एक छोटा ग्राफ बनाओ: रवि मीना को फ़ॉलो करता है, मीना रवि को फ़ॉलो करती है, मीना ने पोस्ट 'बारिश का दिन' लाइक की।
नोड: रवि (व्यक्ति), मीना (व्यक्ति), 'बारिश का दिन' (पोस्ट)। एज: रवि → मीना 'फ़ॉलो'; मीना → रवि 'फ़ॉलो'; मीना → 'बारिश का दिन' 'लाइक'। 'लाइक' एज पर तारीख एक गुण हो सकती है।
आम गलतियाँ
- बिग डेटा को सिर्फ़ 'बहुत सारा डेटा' समझना। तेज़ी (वेग) और प्रकारों का मेल (विविधता) भी डेटा को 'बिग' बनाते हैं।
- यह मानना कि मशीनें दोगुनी करो तो काम ठीक आधे समय में होगा। बाँटने, भेजने और जोड़ने में अतिरिक्त समय लगता है।
- यह सोचना कि फैक्ट-आधारित मॉडल पुराने मान मिटा देता है। वह समय के साथ नया तथ्य जोड़ता है और पुराना रखता है।
- बिग डेटा में दिखे पैटर्न को कारण का सबूत मान लेना। साथ-साथ बढ़ना (correlation) कारण (causation) नहीं है।