2016-09-14 5 views
44

क्या किसी के पास स्पार्कर बनाम स्पार्कलीर के फायदे/नुकसान के संबंध में एक सिंहावलोकन है? Google कोई संतोषजनक परिणाम नहीं देता है और दोनों काफी समान दिखते हैं। दोनों को आजमाकर, स्पार्कआर बहुत अधिक बोझिल दिखाई देता है, जबकि स्पार्कलीर बहुत सीधे आगे है (दोनों स्थापित करने के लिए, लेकिन उपयोग करने के लिए भी, खासकर डिपर इनपुट के साथ)। क्या स्पार्कलीर केवल समानांतर या "सामान्य" आर-कोड में dplyr फ़ंक्शंस चलाने के लिए उपयोग किया जा सकता है?स्पार्कआर बनाम स्पार्कलीर

बेस्ट

उत्तर

4

सिंहावलोकन और गहराई से जानकारी के लिए, आप documentation का उल्लेख कर सकते। प्रलेखन से उद्धरण, "स्पार्कलीर पैकेज एक पूर्ण dplyr बैकएंड प्रदान करता है"। यह दर्शाता है कि स्पार्कलीर मूल अपाचे स्पार्क के प्रतिस्थापन लेकिन इसके लिए एक विस्तार है।

एक निरंतर कंप्यूटर पर इसकी स्थापना (मैं एक विंडोज उपयोगकर्ता हूं) के बारे में बात करना जारी रखता हूं, आपको या तो नए RStudio पूर्वावलोकन संस्करण को डाउनलोड और स्थापित करने की आवश्यकता होगी या अन्यथा RStudio shell,

में निम्न श्रृंखलाओं को निष्पादित करने की आवश्यकता होगी

> devtools::install_github("rstudio/sparklyr")

readr स्थापित करने और संकुल को पचाने अगर तुम उन्हें स्थापित नहीं है।

install.packages("readr") 
install.packages("digest") 
library(sparklyr) 
spark_install(version = "1.6.2")` 

पैकेज स्थापित होने के बाद और आप कनेक्टिंग का उपयोग कर स्पार्क के स्थानीय उदाहरण से कनेक्ट करने का प्रयास करते हैं;

sc <- spark_connect(master = "local") 

आपको एक त्रुटि

Created default hadoop bin directory under: C:\spark-1.6.2\tmp\hadoop Error:

जैसे विंडोज पर स्पार्क को चलाने के लिए देख सकते हैं आप Hadoop winutils.exe की एक प्रति की जरूरत है:

  1. डाउनलोड Hadoop winutils.exe from
  2. सी के लिए winutils.exe कॉपी करें: \ स्पार्क-1.6.2 \ tmp \ hadoop \ bin

वैकल्पिक रूप से, यदि आप RStudio का उपयोग कर रहे हैं तो आप RStudio Preview Release इंस्टॉल कर सकते हैं जिसमें Hadoop winutils.exe की एक एम्बेडेड प्रति शामिल है।

त्रुटि समाधान आपको दिया गया है। Github खाते पर जाएं, winutils.exe फ़ाइल डाउनलोड करें और इसे स्थान पर सहेजें, C:\spark-1.6.2\tmp\hadoop\bin और फिर स्पार्क संदर्भ बनाने का प्रयास करें। पिछले साल मैंने अपने blog पर इंस्टॉलेशन का विवरण देने और विंडोज वातावरण पर स्पार्कआर के साथ काम करने पर एक व्यापक पोस्ट प्रकाशित किया था।

यह कहकर, मैं सामान्य RStudio पर स्पार्क के स्थानीय उदाहरण को स्थापित करने के इस दर्दनाक रास्ते से नहीं जाने की सलाह दूंगा, बल्कि RStudio Preview संस्करण को आजमाएं। यह आपको स्पार्ककोनटेक्स्ट बनाने की परेशानी को बहुत बचाएगा। आगे बढ़ते हुए, स्पार्कलीर का उपयोग R-bloggers पर कैसे किया जा सकता है, इस पर एक विस्तृत पोस्ट है।

मुझे उम्मीद है कि इससे मदद मिलती है।

चीयर्स।

4

मैं sparklyr के लिए आप पर प्रकाश डाला दे सकते हैं:

  • का समर्थन करता है dplyr, Spark ML और H2O
  • CRAN पर वितरित।
  • स्थापित करने में आसान है।
  • Extensible

वर्तमान 0.4 संस्करण में, यह अभी तक मनमाना समानांतर कोड निष्पादन का समर्थन नहीं करता है। हालांकि, इस सीमा को दूर करने के लिए एक्सटेंशन को स्कैला में आसानी से लिखा जा सकता है, sparkhello देखें।

+0

स्पार्कलीर का आपका लिंक गलत है। होना चाहिए: http://spark.rstudio.com/ – stepthom

+0

'0.6' अब मनमाना समानांतर कोड निष्पादन का समर्थन करता है। –

4

... जेवियर से ऊपर को जोड़ने ...

मैं) अब तक, sparklyr कर समर्थन नहीं करता (मिल जाए, उपयोग की जिससे यह केवल जब तुम क्या मे बदलें द्वारा अनुमति दी है क्या करना चाहते हैं कर सकते हैं कि, संक्षेप में, आदि। हुड के तहत, स्पार्कलीर स्पार्क एसक्यूएल में बदल रहा है, लेकिन यूडीएफ की तरह कुछ()?()?

इसके अलावा, मैं अब तक पा सकता हूं, स्पार्कलीर अनजान() सहित tidyr का समर्थन नहीं करता है।

+0

'tidyr' अंतराल को बंद करने में सहायता करने के लिए एक एक्सटेंशन है: https://mitre.github.io/sparklyr.nested/ –

31

SparkR का सबसे बड़ा लाभ यह स्पार्क मनमाना उपयोगकर्ता परिभाषित कार्यों आर में लिखा पर चलाने की क्षमता है:

https://spark.apache.org/docs/2.0.1/sparkr.html#applying-user-defined-function

sparklyr के बाद से एसक्यूएल को आर तब्दील हो, आप केवल कार्यों की बहुत छोटी सेट का उपयोग कर सकते mutate बयानों में:

http://spark.rstudio.com/dplyr.html#sql_translation

कमी कुछ हद तक एक्सटेंशन (http://spark.rstudio.com/extensions.html#wrapper_functions) द्वारा कम किया जाता है यही कारण है कि।

इसके अलावा, स्पार्कलीर एक विजेता है (मेरी राय में)। परिचित dplyr फ़ंक्शंस का उपयोग करने के स्पष्ट लाभ के अलावा, स्पार्कलीर के पास एमएलआईबीआईबी (http://spark.rstudio.com/mllib.html) और ऊपर वर्णित एक्सटेंशन के लिए अधिक व्यापक API है।

+5

' 2017-06-05' के बाद से, 'स्पार्कलीर (0.6.0)' का निरर्थक संस्करण नए जोड़े गए 'spark_apply()' फ़ंक्शन के माध्यम से 'पैमाने पर वितरित आर कोड' चला सकते हैं। स्रोत: https://github.com/rstudio/sparklyr/blob/d88424d62ccef95d9b95a502532df7ddebab985b/NEWS.md –

4

एक रैपर होने के नाते, sparklyr पर कुछ सीमाएं हैं। उदाहरण के लिए, स्पार्क डेटाफ्रेम बनाने के लिए copy_to() का उपयोग करके दिनांकों के रूप में स्वरूपित कॉलम को सुरक्षित नहीं किया जाता है। SparkR के साथ, as.Dataframe() तारीखों को संरक्षित करता है।

1

मैंने हाल ही में स्पार्कआर बनाम स्पार्कलीर के फायदे/नुकसान का एक सिंहावलोकन लिखा है, जो ब्याज का हो सकता है: https://eddjberry.netlify.com/post/2017-12-05-sparkr-vs-sparklyr/

पोस्ट के शीर्ष पर table है जो मानदंडों की एक श्रृंखला के लिए मतभेदों का एक अवलोकन प्रदान करता है।

मुझे निष्कर्ष निकाला गया है कि sparklyrSparkR के लिए बेहतर है।सबसे उल्लेखनीय लाभ हैं: जल्दी से एमएल मॉडल के मूल्यांकन के लिए dpylr

  • बेहतर समारोह नामकरण सम्मेलनों के साथ संगतता के माध्यम से

    1. बेहतर डेटा हेरफेर
    2. बेहतर उपकरण
    3. आसान
    4. एक स्पार्क DataFrame पर मनमाने ढंग से कोड को चलाने के लिए
  • 1

    जैसा कि मुझे बहुत सारे उत्तर नहीं दिख रहे हैं जो sparkR के पक्ष में हैं, मैं सिर्फ यह कहना चाहता हूं कि नौसिखिया के रूप में मैंने उन्हें दोनों सीखना शुरू किया और मैं देखता हूं कि स्पार्कआर एपीआई मानक scala-spark के साथ उपयोग किए जाने वाले से अधिक निकटता से संबंधित है। जैसा कि मैंने उनका अध्ययन किया है, मेरा मतलब है कि मैं rstudio और स्कैला का उपयोग करना चाहता हूं, मुझे स्पार्क और स्पार्कलीर के बीच चयन करना होगा। स्काला-स्पार्क एपीआई के साथ स्पार्कआर सीखना, स्पार्कलीर सीखने से कम प्रयास करना प्रतीत होता है जो कि मेरे परिप्रेक्ष्य में कम से कम अलग है। हालांकि स्पार्कलीर अधिक शक्तिशाली दिखाई देता है। तो मेरे लिए यह एक प्रश्न है कि आप समुदाय से अधिक समर्थन के साथ अधिक शक्तिशाली और सामान्य रूप से उपयोग की जाने वाली लाइब्रेरी का उपयोग करना चाहते हैं या आप समझौता करते हैं और स्कैला-स्पार्क के रूप में अधिक समान एपीआई का उपयोग करते हैं जो कम से कम मेरे परिप्रेक्ष्य को चुनने पर है।

    संबंधित मुद्दे