You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@spark.apache.org by Steve Lewis <lo...@gmail.com> on 2014/09/24 02:13:13 UTC

Does anyone have experience with using Hadoop InputFormats?

 When I experimented with using an InputFormat I had used in Hadoop for a
long time in Hadoop I found
1) it must extend org.apache.hadoop.mapred.FileInputFormat (the deprecated
class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
2) initialize needs to be called in the constructor
3) The type - mine was extends FileInputFormat<Text, Text> must not be a
Hadoop Writable - those are not serializable but extends
FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this
is allowed in Hadoop

Are these statements correct and if so it seems like most Hadoop
InputFormate - certainly the custom ones I create require serious
modifications to work - does anyone have samples of use of Hadoop
InputFormat

Since I am working with problems where a directory with multiple files are
processed and some files are many gigabytes in size with multiline complex
records an input format is a requirement.

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Akhil Das <ak...@sigmoidanalytics.com>.
Hi

org.apache.hadoop.io.Text class is not Serializable. So the best thing you
can try is to get the Text.java file locally and serialize (implements
Serializable) it and use it. I have solved one of the similar problem this
way.

Thanks
Best Regards

On Wed, Sep 24, 2014 at 11:28 PM, Steve Lewis <lo...@gmail.com> wrote:

> Hmmm - I have only tested in local mode but I got an
> java.io.NotSerializableException: org.apache.hadoop.io.Text
>  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
>  at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
>  at
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
> Here are two classes - one will work one will not
> the mgf file is what they read
>
> showPairRDD simply print  the text read
> guaranteeSparkMaster calls sparkConf.setMaster("local"); if there is no
> master defined
>
> Perhaps I need to convert Text somewhere else but I certainly don't see
> where
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@spark.apache.org
> For additional commands, e-mail: user-help@spark.apache.org
>

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Steve Lewis <lo...@gmail.com>.
Hmmm - I have only tested in local mode but I got an
java.io.NotSerializableException: org.apache.hadoop.io.Text
 at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
 at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
 at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
Here are two classes - one will work one will not
the mgf file is what they read

showPairRDD simply print  the text read
guaranteeSparkMaster calls sparkConf.setMaster("local"); if there is no
master defined

Perhaps I need to convert Text somewhere else but I certainly don't see
where

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Russ Weeks <rw...@newbrightidea.com>.
No, they do not implement Serializable. There are a couple of places where
I've had to do a Text->String conversion but generally it hasn't been a
problem.
-Russ

On Wed, Sep 24, 2014 at 10:27 AM, Steve Lewis <lo...@gmail.com> wrote:

> Do your custom Writable classes implement Serializable - I think that is
> the only real issue - my code uses vanilla Text
>
>

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Steve Lewis <lo...@gmail.com>.
Do your custom Writable classes implement Serializable - I think that is
the only real issue - my code uses vanilla Text

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Russ Weeks <rw...@newbrightidea.com>.
I use newAPIHadoopRDD with AccumuloInputFormat. It produces a PairRDD using
Accumulo's Key and Value classes, both of which extend Writable. Works like
a charm. I use the same InputFormat for all my MR jobs.

-Russ

On Wed, Sep 24, 2014 at 9:33 AM, Steve Lewis <lo...@gmail.com> wrote:

> I tried newAPIHadoopFile and it works except that my original InputFormat
>  extends InputFormat<Text,Text> and has a RecordReader<Text,Text>
> This throws a not Serializable exception on Text - changing the type to
> InputFormat<StringBuffer, StringBuffer> works with minor code changes.
> I do not, however, believe that Hadoop count use an InputFormat with types
> not derived from Writable -
> What were you using and was it able to work with Hadoop?
>
> On Tue, Sep 23, 2014 at 5:52 PM, Liquan Pei <li...@gmail.com> wrote:
>
>> Hi Steve,
>>
>> Hi Steve,
>>
>> Did you try the newAPIHadoopFile? That worked for us.
>>
>> Thanks,
>> Liquan
>>
>> On Tue, Sep 23, 2014 at 5:43 PM, Steve Lewis <lo...@gmail.com>
>> wrote:
>>
>>> Well I had one and tried that - my message tells what I found found
>>> 1) Spark only accepts org.apache.hadoop.mapred.InputFormat<K,V>
>>>  not org.apache.hadoop.mapreduce.InputFormat<K,V>
>>> 2) Hadoop expects K and V to be Writables - I always use Text - Text is
>>> not Serializable and will not work with Spark - StringBuffer will work with
>>> Spark but not (as far as I know) with Hadoop
>>> - Telling me what the documentation SAYS is all well and good but I just
>>> tried it and want hear from people with real examples working
>>>
>>> On Tue, Sep 23, 2014 at 5:29 PM, Liquan Pei <li...@gmail.com> wrote:
>>>
>>>> Hi Steve,
>>>>
>>>> Here is my understanding, as long as you implement InputFormat, you
>>>> should be able to use hadoopFile API in SparkContext to create an RDD.
>>>> Suppose you have a customized InputFormat which we call
>>>> CustomizedInputFormat<K, V> where K is the key type and V is the value
>>>> type. You can create an RDD with CustomizedInputFormat in the following way:
>>>>
>>>> Let sc denote the SparkContext variable and path denote the path to
>>>> file of CustomizedInputFormat, we use
>>>>
>>>> val rdd;RDD[(K,V)] = sc.hadoopFile[K,V,CustomizedInputFormat](path,
>>>> ClassOf[CustomizedInputFormat], ClassOf[K], ClassOf[V])
>>>>
>>>> to create an RDD of (K,V) with CustomizedInputFormat.
>>>>
>>>> Hope this helps,
>>>> Liquan
>>>>
>>>> On Tue, Sep 23, 2014 at 5:13 PM, Steve Lewis <lo...@gmail.com>
>>>> wrote:
>>>>
>>>>>  When I experimented with using an InputFormat I had used in Hadoop
>>>>> for a long time in Hadoop I found
>>>>> 1) it must extend org.apache.hadoop.mapred.FileInputFormat (the
>>>>> deprecated class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
>>>>> 2) initialize needs to be called in the constructor
>>>>> 3) The type - mine was extends FileInputFormat<Text, Text> must not be
>>>>> a Hadoop Writable - those are not serializable but extends
>>>>> FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this
>>>>> is allowed in Hadoop
>>>>>
>>>>> Are these statements correct and if so it seems like most Hadoop
>>>>> InputFormate - certainly the custom ones I create require serious
>>>>> modifications to work - does anyone have samples of use of Hadoop
>>>>> InputFormat
>>>>>
>>>>> Since I am working with problems where a directory with multiple files
>>>>> are processed and some files are many gigabytes in size with multiline
>>>>> complex records an input format is a requirement.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Liquan Pei
>>>> Department of Physics
>>>> University of Massachusetts Amherst
>>>>
>>>
>>>
>>>
>>> --
>>> Steven M. Lewis PhD
>>> 4221 105th Ave NE
>>> Kirkland, WA 98033
>>> 206-384-1340 (cell)
>>> Skype lordjoe_com
>>>
>>>
>>
>>
>> --
>> Liquan Pei
>> Department of Physics
>> University of Massachusetts Amherst
>>
>
>
>
> --
> Steven M. Lewis PhD
> 4221 105th Ave NE
> Kirkland, WA 98033
> 206-384-1340 (cell)
> Skype lordjoe_com
>
>

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Steve Lewis <lo...@gmail.com>.
I tried newAPIHadoopFile and it works except that my original InputFormat
 extends InputFormat<Text,Text> and has a RecordReader<Text,Text>
This throws a not Serializable exception on Text - changing the type to
InputFormat<StringBuffer, StringBuffer> works with minor code changes.
I do not, however, believe that Hadoop count use an InputFormat with types
not derived from Writable -
What were you using and was it able to work with Hadoop?

On Tue, Sep 23, 2014 at 5:52 PM, Liquan Pei <li...@gmail.com> wrote:

> Hi Steve,
>
> Hi Steve,
>
> Did you try the newAPIHadoopFile? That worked for us.
>
> Thanks,
> Liquan
>
> On Tue, Sep 23, 2014 at 5:43 PM, Steve Lewis <lo...@gmail.com>
> wrote:
>
>> Well I had one and tried that - my message tells what I found found
>> 1) Spark only accepts org.apache.hadoop.mapred.InputFormat<K,V>
>>  not org.apache.hadoop.mapreduce.InputFormat<K,V>
>> 2) Hadoop expects K and V to be Writables - I always use Text - Text is
>> not Serializable and will not work with Spark - StringBuffer will work with
>> Spark but not (as far as I know) with Hadoop
>> - Telling me what the documentation SAYS is all well and good but I just
>> tried it and want hear from people with real examples working
>>
>> On Tue, Sep 23, 2014 at 5:29 PM, Liquan Pei <li...@gmail.com> wrote:
>>
>>> Hi Steve,
>>>
>>> Here is my understanding, as long as you implement InputFormat, you
>>> should be able to use hadoopFile API in SparkContext to create an RDD.
>>> Suppose you have a customized InputFormat which we call
>>> CustomizedInputFormat<K, V> where K is the key type and V is the value
>>> type. You can create an RDD with CustomizedInputFormat in the following way:
>>>
>>> Let sc denote the SparkContext variable and path denote the path to file
>>> of CustomizedInputFormat, we use
>>>
>>> val rdd;RDD[(K,V)] = sc.hadoopFile[K,V,CustomizedInputFormat](path,
>>> ClassOf[CustomizedInputFormat], ClassOf[K], ClassOf[V])
>>>
>>> to create an RDD of (K,V) with CustomizedInputFormat.
>>>
>>> Hope this helps,
>>> Liquan
>>>
>>> On Tue, Sep 23, 2014 at 5:13 PM, Steve Lewis <lo...@gmail.com>
>>> wrote:
>>>
>>>>  When I experimented with using an InputFormat I had used in Hadoop for
>>>> a long time in Hadoop I found
>>>> 1) it must extend org.apache.hadoop.mapred.FileInputFormat (the
>>>> deprecated class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
>>>> 2) initialize needs to be called in the constructor
>>>> 3) The type - mine was extends FileInputFormat<Text, Text> must not be
>>>> a Hadoop Writable - those are not serializable but extends
>>>> FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this
>>>> is allowed in Hadoop
>>>>
>>>> Are these statements correct and if so it seems like most Hadoop
>>>> InputFormate - certainly the custom ones I create require serious
>>>> modifications to work - does anyone have samples of use of Hadoop
>>>> InputFormat
>>>>
>>>> Since I am working with problems where a directory with multiple files
>>>> are processed and some files are many gigabytes in size with multiline
>>>> complex records an input format is a requirement.
>>>>
>>>
>>>
>>>
>>> --
>>> Liquan Pei
>>> Department of Physics
>>> University of Massachusetts Amherst
>>>
>>
>>
>>
>> --
>> Steven M. Lewis PhD
>> 4221 105th Ave NE
>> Kirkland, WA 98033
>> 206-384-1340 (cell)
>> Skype lordjoe_com
>>
>>
>
>
> --
> Liquan Pei
> Department of Physics
> University of Massachusetts Amherst
>



-- 
Steven M. Lewis PhD
4221 105th Ave NE
Kirkland, WA 98033
206-384-1340 (cell)
Skype lordjoe_com

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Liquan Pei <li...@gmail.com>.
Hi Steve,

Hi Steve,

Did you try the newAPIHadoopFile? That worked for us.

Thanks,
Liquan

On Tue, Sep 23, 2014 at 5:43 PM, Steve Lewis <lo...@gmail.com> wrote:

> Well I had one and tried that - my message tells what I found found
> 1) Spark only accepts org.apache.hadoop.mapred.InputFormat<K,V>
>  not org.apache.hadoop.mapreduce.InputFormat<K,V>
> 2) Hadoop expects K and V to be Writables - I always use Text - Text is
> not Serializable and will not work with Spark - StringBuffer will work with
> Spark but not (as far as I know) with Hadoop
> - Telling me what the documentation SAYS is all well and good but I just
> tried it and want hear from people with real examples working
>
> On Tue, Sep 23, 2014 at 5:29 PM, Liquan Pei <li...@gmail.com> wrote:
>
>> Hi Steve,
>>
>> Here is my understanding, as long as you implement InputFormat, you
>> should be able to use hadoopFile API in SparkContext to create an RDD.
>> Suppose you have a customized InputFormat which we call
>> CustomizedInputFormat<K, V> where K is the key type and V is the value
>> type. You can create an RDD with CustomizedInputFormat in the following way:
>>
>> Let sc denote the SparkContext variable and path denote the path to file
>> of CustomizedInputFormat, we use
>>
>> val rdd;RDD[(K,V)] = sc.hadoopFile[K,V,CustomizedInputFormat](path,
>> ClassOf[CustomizedInputFormat], ClassOf[K], ClassOf[V])
>>
>> to create an RDD of (K,V) with CustomizedInputFormat.
>>
>> Hope this helps,
>> Liquan
>>
>> On Tue, Sep 23, 2014 at 5:13 PM, Steve Lewis <lo...@gmail.com>
>> wrote:
>>
>>>  When I experimented with using an InputFormat I had used in Hadoop for
>>> a long time in Hadoop I found
>>> 1) it must extend org.apache.hadoop.mapred.FileInputFormat (the
>>> deprecated class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
>>> 2) initialize needs to be called in the constructor
>>> 3) The type - mine was extends FileInputFormat<Text, Text> must not be a
>>> Hadoop Writable - those are not serializable but extends
>>> FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this
>>> is allowed in Hadoop
>>>
>>> Are these statements correct and if so it seems like most Hadoop
>>> InputFormate - certainly the custom ones I create require serious
>>> modifications to work - does anyone have samples of use of Hadoop
>>> InputFormat
>>>
>>> Since I am working with problems where a directory with multiple files
>>> are processed and some files are many gigabytes in size with multiline
>>> complex records an input format is a requirement.
>>>
>>
>>
>>
>> --
>> Liquan Pei
>> Department of Physics
>> University of Massachusetts Amherst
>>
>
>
>
> --
> Steven M. Lewis PhD
> 4221 105th Ave NE
> Kirkland, WA 98033
> 206-384-1340 (cell)
> Skype lordjoe_com
>
>


-- 
Liquan Pei
Department of Physics
University of Massachusetts Amherst

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Andrew Ash <an...@andrewash.com>.
Hi Steve,

Hadoop has both old-style and new-style APIs -- Java package has "mapred"
vs "mapreduce".  Spark supports both of these via the sc.hadoopFile() and
sc.newAPIHadoopFile().  Maybe you need to switch to the newAPI versions of
those methods?

On Tue, Sep 23, 2014 at 5:43 PM, Steve Lewis <lo...@gmail.com> wrote:

> Well I had one and tried that - my message tells what I found found
> 1) Spark only accepts org.apache.hadoop.mapred.InputFormat<K,V>
>  not org.apache.hadoop.mapreduce.InputFormat<K,V>
> 2) Hadoop expects K and V to be Writables - I always use Text - Text is
> not Serializable and will not work with Spark - StringBuffer will work with
> Spark but not (as far as I know) with Hadoop
> - Telling me what the documentation SAYS is all well and good but I just
> tried it and want hear from people with real examples working
>
> On Tue, Sep 23, 2014 at 5:29 PM, Liquan Pei <li...@gmail.com> wrote:
>
>> Hi Steve,
>>
>> Here is my understanding, as long as you implement InputFormat, you
>> should be able to use hadoopFile API in SparkContext to create an RDD.
>> Suppose you have a customized InputFormat which we call
>> CustomizedInputFormat<K, V> where K is the key type and V is the value
>> type. You can create an RDD with CustomizedInputFormat in the following way:
>>
>> Let sc denote the SparkContext variable and path denote the path to file
>> of CustomizedInputFormat, we use
>>
>> val rdd;RDD[(K,V)] = sc.hadoopFile[K,V,CustomizedInputFormat](path,
>> ClassOf[CustomizedInputFormat], ClassOf[K], ClassOf[V])
>>
>> to create an RDD of (K,V) with CustomizedInputFormat.
>>
>> Hope this helps,
>> Liquan
>>
>> On Tue, Sep 23, 2014 at 5:13 PM, Steve Lewis <lo...@gmail.com>
>> wrote:
>>
>>>  When I experimented with using an InputFormat I had used in Hadoop for
>>> a long time in Hadoop I found
>>> 1) it must extend org.apache.hadoop.mapred.FileInputFormat (the
>>> deprecated class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
>>> 2) initialize needs to be called in the constructor
>>> 3) The type - mine was extends FileInputFormat<Text, Text> must not be a
>>> Hadoop Writable - those are not serializable but extends
>>> FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this
>>> is allowed in Hadoop
>>>
>>> Are these statements correct and if so it seems like most Hadoop
>>> InputFormate - certainly the custom ones I create require serious
>>> modifications to work - does anyone have samples of use of Hadoop
>>> InputFormat
>>>
>>> Since I am working with problems where a directory with multiple files
>>> are processed and some files are many gigabytes in size with multiline
>>> complex records an input format is a requirement.
>>>
>>
>>
>>
>> --
>> Liquan Pei
>> Department of Physics
>> University of Massachusetts Amherst
>>
>
>
>
> --
> Steven M. Lewis PhD
> 4221 105th Ave NE
> Kirkland, WA 98033
> 206-384-1340 (cell)
> Skype lordjoe_com
>
>

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Steve Lewis <lo...@gmail.com>.
Well I had one and tried that - my message tells what I found found
1) Spark only accepts org.apache.hadoop.mapred.InputFormat<K,V>
 not org.apache.hadoop.mapreduce.InputFormat<K,V>
2) Hadoop expects K and V to be Writables - I always use Text - Text is not
Serializable and will not work with Spark - StringBuffer will work with
Spark but not (as far as I know) with Hadoop
- Telling me what the documentation SAYS is all well and good but I just
tried it and want hear from people with real examples working

On Tue, Sep 23, 2014 at 5:29 PM, Liquan Pei <li...@gmail.com> wrote:

> Hi Steve,
>
> Here is my understanding, as long as you implement InputFormat, you should
> be able to use hadoopFile API in SparkContext to create an RDD. Suppose you
> have a customized InputFormat which we call CustomizedInputFormat<K, V>
> where K is the key type and V is the value type. You can create an RDD with
> CustomizedInputFormat in the following way:
>
> Let sc denote the SparkContext variable and path denote the path to file
> of CustomizedInputFormat, we use
>
> val rdd;RDD[(K,V)] = sc.hadoopFile[K,V,CustomizedInputFormat](path,
> ClassOf[CustomizedInputFormat], ClassOf[K], ClassOf[V])
>
> to create an RDD of (K,V) with CustomizedInputFormat.
>
> Hope this helps,
> Liquan
>
> On Tue, Sep 23, 2014 at 5:13 PM, Steve Lewis <lo...@gmail.com>
> wrote:
>
>>  When I experimented with using an InputFormat I had used in Hadoop for a
>> long time in Hadoop I found
>> 1) it must extend org.apache.hadoop.mapred.FileInputFormat (the
>> deprecated class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
>> 2) initialize needs to be called in the constructor
>> 3) The type - mine was extends FileInputFormat<Text, Text> must not be a
>> Hadoop Writable - those are not serializable but extends
>> FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this
>> is allowed in Hadoop
>>
>> Are these statements correct and if so it seems like most Hadoop
>> InputFormate - certainly the custom ones I create require serious
>> modifications to work - does anyone have samples of use of Hadoop
>> InputFormat
>>
>> Since I am working with problems where a directory with multiple files
>> are processed and some files are many gigabytes in size with multiline
>> complex records an input format is a requirement.
>>
>
>
>
> --
> Liquan Pei
> Department of Physics
> University of Massachusetts Amherst
>



-- 
Steven M. Lewis PhD
4221 105th Ave NE
Kirkland, WA 98033
206-384-1340 (cell)
Skype lordjoe_com

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by Liquan Pei <li...@gmail.com>.
Hi Steve,

Here is my understanding, as long as you implement InputFormat, you should
be able to use hadoopFile API in SparkContext to create an RDD. Suppose you
have a customized InputFormat which we call CustomizedInputFormat<K, V>
where K is the key type and V is the value type. You can create an RDD with
CustomizedInputFormat in the following way:

Let sc denote the SparkContext variable and path denote the path to file of
CustomizedInputFormat, we use

val rdd;RDD[(K,V)] = sc.hadoopFile[K,V,CustomizedInputFormat](path,
ClassOf[CustomizedInputFormat], ClassOf[K], ClassOf[V])

to create an RDD of (K,V) with CustomizedInputFormat.

Hope this helps,
Liquan

On Tue, Sep 23, 2014 at 5:13 PM, Steve Lewis <lo...@gmail.com> wrote:

>  When I experimented with using an InputFormat I had used in Hadoop for a
> long time in Hadoop I found
> 1) it must extend org.apache.hadoop.mapred.FileInputFormat (the deprecated
> class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
> 2) initialize needs to be called in the constructor
> 3) The type - mine was extends FileInputFormat<Text, Text> must not be a
> Hadoop Writable - those are not serializable but extends
> FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this
> is allowed in Hadoop
>
> Are these statements correct and if so it seems like most Hadoop
> InputFormate - certainly the custom ones I create require serious
> modifications to work - does anyone have samples of use of Hadoop
> InputFormat
>
> Since I am working with problems where a directory with multiple files are
> processed and some files are many gigabytes in size with multiline complex
> records an input format is a requirement.
>



-- 
Liquan Pei
Department of Physics
University of Massachusetts Amherst

Re: Does anyone have experience with using Hadoop InputFormats?

Posted by "Antsy.Rao" <an...@gmail.com>.

Sent from my iPad

On 2014-9-24, at 上午8:13, Steve Lewis <lo...@gmail.com> wrote:

>  When I experimented with using an InputFormat I had used in Hadoop for a long time in Hadoop I found
> 1) it must extend org.apache.hadoop.mapred.FileInputFormat (the deprecated class not org.apache.hadoop.mapreduce.lib.input;FileInputFormat
> 2) initialize needs to be called in the constructor
> 3) The type - mine was extends FileInputFormat<Text, Text> must not be a Hadoop Writable - those are not serializable but extends FileInputFormat<StringBuffer, StringBuffer> does work - I don't think this is allowed in Hadoop 
> 
> Are these statements correct and if so it seems like most Hadoop InputFormate - certainly the custom ones I create require serious modifications to work - does anyone have samples of use of Hadoop InputFormat 
> 
> Since I am working with problems where a directory with multiple files are processed and some files are many gigabytes in size with multiline complex records an input format is a requirement.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@spark.apache.org
For additional commands, e-mail: user-help@spark.apache.org