नियमित रिलेशनल डेटाबेस में पांडा डेटाफ्रेम के लाभ


13

डाटा साइंस में, कई लोग डेटास्टेट के रूप में पांडा डेटाफ्रेम का उपयोग करते दिखते हैं । पांडा की विशेषताएं क्या हैं जो इसे MySQL जैसे नियमित संबंधपरक डेटाबेस की तुलना में एक बेहतर डेटास्टोर बनाती हैं, जो प्रोग्रामिंग के कई अन्य क्षेत्रों में डेटा को स्टोर करने के लिए उपयोग किया जाता है?

जबकि पांडा डेटा एक्सप्लोरेशन के लिए कुछ उपयोगी कार्य प्रदान करते हैं, आप SQL का उपयोग नहीं कर सकते हैं और आप क्वेरी ऑप्टिमाइज़ेशन या एक्सेस प्रतिबंध जैसी सुविधाओं को खो देते हैं।


5
पंडों का दस्तास्तंभ नहीं है। अपना कंप्यूटर बंद करें और आपका डेटाफ़्रेम वहां नहीं होगा। पंडों को स्मृति में गूंथने के लिए है। जिसका मतलब है कि अगर यह मेमोरी में फिट नहीं होता है तो यह काम नहीं करेगा। लेकिन इसका एक बड़ा भाई है जिसे स्पार्क कहा जाता है, इसलिए यह कोई बड़ी बात नहीं है। बड़ा भाई वास्तव में SQL और क्वेरी ऑप्टिमाइज़ेशन का समर्थन करता है। Pandas.pydata.org/pandas-docs/stable/comparison_with_sql.html
Emre

जवाबों:


8

मुझे लगता है कि आपके प्रश्न के आधार में समस्या है। जिस तरह से RDBMS है पंडों को "डेटस्टोर" नहीं है। पंडों डेटा में हेरफेर के लिए एक पायथन पुस्तकालय है जो स्मृति में फिट होगा। नुकसान:

  • पंडों के पास डेटा नहीं है। यहां तक ​​कि TO_SQL नामक एक (धीमा) फ़ंक्शन है जो आपके पांडा डेटा फ़्रेम को RDBMS तालिका में बनाए रखेगा।
  • पंडों केवल स्मृति में फिट होने वाले परिणामों को संभालेंगे, जो भरना आसान है। आप या तो उसके आस-पास काम करने के लिए dask का उपयोग कर सकते हैं, या आप RAM से अधिक डेटा पर काम करने के लिए RDBMS में डेटा पर काम कर सकते हैं (जो सभी प्रकार की ट्रिक स्पेस का उपयोग करता है)।

2

पांडा से ( मुख्य पृष्ठ )

पायथन डेटा विश्लेषण लाइब्रेरी¶

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

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

उस अंतिम पंडों के पास विभिन्न तरीके उपलब्ध हैं जो कुछ रिलेशनल बीजगणित कार्यों की अनुमति देते हैं जिनकी तुलना SQL से की जा सकती है।

इसके अलावा, पंडों को NumPy तक आसान पहुंच प्रदान करता है , जो कि

पायथन के साथ वैज्ञानिक कंप्यूटिंग के लिए मौलिक पैकेज है। इसमें अन्य चीजें शामिल हैं:

  • एक शक्तिशाली एन-आयामी सरणी वस्तु
  • परिष्कृत (प्रसारण) कार्य
  • C / C ++ और फोरट्रान कोड को एकीकृत करने के लिए उपकरण
  • उपयोगी रैखिक बीजगणित, फूरियर रूपांतरण और यादृच्छिक संख्या क्षमताओं

2

स्वीकृत उत्तर के अतिरिक्त:

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

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


2

पंडों एक इन-मेमोरी डेटा स्टोरेज टूल है। यह आपको बहुत तेज़ी से बड़ी मात्रा में डेटा पर बहुत तेज़ी से गणना करने की अनुमति देता है।

SQL (आमतौर पर) लगातार डेटा संग्रहीत करता है और एक डेटाबेस है। इन-मेमोरी SQL db को चलाना भी संभव है जो कि SQLite जैसे पांडा का उपयोग करने से तेज हो सकता है।


0

SQL आपको कई अलग-अलग रिलेशनशिप को जारी रखने और करने की अनुमति देता है और यह हमेशा कई अलग-अलग उपयोगों के लिए आसानी से उपलब्ध होता है। अनिवार्य रूप से सत्य या जाने का एक स्रोत। यकीन के लिए सिर पर है। हालांकि, कुछ विश्लेषण बहुत जटिल हो सकते हैं और सेट आधारित संचालन की महत्वपूर्ण मात्रा की आवश्यकता होती है जो कि एक छोटे डेटा सेट को बहुत जल्दी में बदल सकते हैं। मेरे पास ऐसी डेटा प्रक्रियाएँ हैं जिनमें 2000 से अधिक प्रश्न हैं जो 5 मिनट से कम समय में टेराबाइट्स की प्रक्रिया करते हैं और अंत में एक पूर्वानुमान मॉडल के लिए अरबों रिकॉर्ड बना सकते हैं और अजगर और सुन्न ने 10x समय में रिलेशनल डेटा स्टोर के रूप में डेटासेट का एक अंश स्कोर किया और इसे प्रेजेंटेशन लेयर तक सर्व करें।

एक अतिरिक्त बिंदु, यदि क्लाउड में ऐसा करना सुनिश्चित करता है कि आपके पास एक गतिशील उदाहरण है जो इसकी मेमोरी को स्केल कर सकता है। एसक्यूएल के साथ यह सभी के बारे में डिस्क है और इसे समय पर फैशन में लाने के लिए पर्याप्त गणना है।

मैं कई तरीके देखता हूं कि वे तालमेल में काम कर सकते हैं। कई डेटा विज्ञान नौकरियां हैं जो पंडों को करने के लिए डिज़ाइन की गई थीं। कुछ डेटा साइंस जॉब्स आरडीबी को करने के लिए डिज़ाइन किए गए थे। संतुलन में दोनों का उपयोग करें।

यह सही काम करने के लिए सही उपकरण के बारे में है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.