मैं वर्तमान में डेटा विश्लेषण के लिए पंडों और स्पार्क का उपयोग कर रहा हूं। मैंने पाया कि Dask समानांतर नुम्पी सरणी और पंडास डेटाफ़्रेम प्रदान करता है।
पंडों ने पायथन में डेटा विश्लेषण करने के लिए आसान और सहज ज्ञान युक्त है। लेकिन मुझे सीमित सिस्टम मेमोरी के कारण पंडों में कई बड़े डेटाफ़्रेम को संभालने में कठिनाई होती है।
सरल उत्तर:
Apache Spark एक सर्व-समावेशी ढांचा है जो वितरित कंप्यूटिंग, SQL क्वेरीज़, मशीन लर्निंग, और बहुत कुछ है जो JVM पर चलता है और आमतौर पर Hadoop जैसे अन्य बिग डेटा फ्रेमवर्क के साथ सह-परिनियोजित होता है। ... आमतौर पर स्पार्क की तुलना में डैस्क छोटा और हल्का होता है।
मुझे http://dask.pydata.org/en/latest/spark.html से नीचे विवरण के बारे में पता है
- मास्क हल्के वजन का होता है
- Dask का उपयोग आमतौर पर एक मशीन पर किया जाता है, लेकिन एक वितरित क्लस्टर पर भी अच्छी तरह से चलता है।
- समानांतर एरे, डेटाफ्रेम, मशीन लर्निंग, और कस्टम एल्गोरिदम प्रदान करने के लिए मास्क
- पीस्कॉन उपयोगकर्ताओं के लिए डैस्क का एक फायदा है क्योंकि यह स्वयं एक पायथन लाइब्रेरी है, इसलिए जब चीजें गलत हो जाती हैं तो क्रमबद्धता और डिबगिंग आसानी से हो जाती है।
- Dask उपयोगकर्ताओं को अधिक जटिल समानांतर एल्गोरिदम व्यक्त करने की अनुमति देने के लिए उच्च-स्तरीय समझ देता है।
- डस्क हल्का वजन है और मौजूदा कोड और हार्डवेयर में एकीकृत करना आसान है।
- यदि आप एक ऐसा प्रोजेक्ट चाहते हैं जो सब कुछ करता है और आप पहले से ही बिग डेटा हार्डवेयर पर हैं तो स्पार्क एक सुरक्षित शर्त है
- स्पार्क का उपयोग आमतौर पर छोटे से मध्यम आकार के क्लस्टर पर किया जाता है, लेकिन यह एकल मशीन पर भी अच्छा चलता है।
मैं नीचे दिए गए लिंक https://www.continuum.io/blog/developer-blog/high-performance-hadoop-anaconda-and-dask-your-cluster से नीचे के बारे में अधिक बातें समझता हूं
- यदि आप पंडों, NumPy, या पायथन के साथ अन्य संगणनाओं का उपयोग करते समय एक ही मशीन पर मेमोरी मुद्दों, भंडारण सीमाओं, या सीपीयू सीमाओं में चल रहे हैं, तो Dask आपको एकल मशीन पर सभी कोर पर स्केल करने में मदद कर सकता है, या स्केल आउट कर सकता है। अपने क्लस्टर में सभी कोर और मेमोरी पर।
- अपने लैपटॉप पर सभी कोर का उपयोग करने और बड़े-से-मेमोरी डेटा को संसाधित करने के लिए एक मशीन पर Dask अच्छी तरह से काम करती है
- सैकड़ों नोड्स के साथ गुच्छों पर लचीला और अलौकिक रूप से तराजू।
- डैस्क मूल रूप से अलग-अलग स्वरूपों और भंडारण प्रणालियों के डेटा के साथ पायथन से काम करता है, जिसमें हडोप डिस्ट्रीब्यूटेड फाइल सिस्टम (एचडीएफएस) और अमेज़ॅन एस 3 शामिल हैं। एनाकोंडा और डस्क आपके मौजूदा उद्यम हडॉप वितरण के साथ काम कर सकते हैं, जिसमें क्लोडेरा सीडीएच और हॉर्टनवर्क्स एचडीपी शामिल हैं।
http://dask.pydata.org/en/latest/dataframe-overview.html
सीमाओं
Dask.DataFrame पूरे पंडों के इंटरफ़ेस को लागू नहीं करता है। यह उम्मीद करने वाले उपयोगकर्ता निराश होंगे। आमतौर पर, dask.dataframe की निम्नलिखित सीमाएँ हैं:
- एक असुरक्षित कॉलम से एक नया सूचकांक सेट करना महंगा है
- कई ऑपरेशन जैसे कि ग्रुपबी-अप्लाई और अनसोल्ड कॉलम में शामिल होने के लिए इंडेक्स सेट करने की आवश्यकता होती है, जो ऊपर बताए गए अनुसार महंगा है
- पंडों एपीआई बहुत बड़ी है। Dask.dataframe कई पांडा सुविधाओं या NDFrames जैसी अधिक विदेशी डेटा संरचनाओं में से किसी को लागू करने का प्रयास नहीं करता है
Dask डेवलपर्स के लिए धन्यवाद। यह बहुत ही आशाजनक तकनीक की तरह लगता है।
कुल मिलाकर मैं समझ सकता हूं कि चिंगारी स्पार्क की तुलना में उपयोग करने के लिए सरल है। अधिक सीपीयू के समानता के साथ गणना करने के लिए अधिक शक्ति वाले पंडों के समान डस्क लचीला होता है।
मैं उपरोक्त सभी तथ्यों को डीस्क के बारे में समझता हूं।
तो, लगभग कितने डेटा (टेराबाइट में) को Dask के साथ संसाधित किया जा सकता है?