2016-04-28 5 views
7

से कम जेडीबीसी लिखने की गति मुझे स्पार्क से डेटाफ्रेम से 1 लाख पंक्तियों को MySQL पर लिखने की आवश्यकता है लेकिन सम्मिलन बहुत धीमा है। मैं इसे कैसे सुधार सकता हूँ?स्पार्क से MySQL

नीचे

कोड:

df = sqlContext.createDataFrame(rdd, schema) 
df.write.jdbc(url='xx', table='xx', mode='overwrite') 
+0

1.6.0 के बाद स्पार्क [बैच आवेषण का समर्थन करता है] (https://issues.apache.org/jira/browse/SPARK-10040), इसलिए यदि आप पुराने संस्करण - अपग्रेड का उपयोग करते हैं। यदि आप किसी कारण से अपग्रेड नहीं कर सकते हैं, तो अपने डेटाफ्रेम से आरडीडी प्राप्त करें और हाथ से बैच सम्मिलित करें। –

+0

मैं स्पार्क 1.6.1 का उपयोग कर रहा हूं लेकिन लिखने की गति लगभग 100 रिकॉर्ड/एस है। डेटाफ्रेम पुन: विभाजन यहां सहायक हो सकता है? –

+0

डिफ़ॉल्ट बैच आकार 1000 है। हो सकता है कि इसे बढ़ाना चीजों को गति देगा? मैं अब कोशिश कर रहा हूँ! (आप इसे 'बैचसाइज' प्रॉपर्टी के माध्यम से सेट कर सकते हैं।) –

उत्तर