diff options
author | Kan Zhang <kzhang@apache.org> | 2014-06-16 11:11:29 -0700 |
---|---|---|
committer | Reynold Xin <rxin@apache.org> | 2014-06-16 11:11:39 -0700 |
commit | 33db842b6fe1c0b60bff764a9e226452bf1914a8 (patch) | |
tree | c59b853656167190163e055e9cf3f387c784c016 /yarn/stable | |
parent | 078d503ce649b6d36c93b40cdfee9adf5b85578b (diff) | |
download | spark-33db842b6fe1c0b60bff764a9e226452bf1914a8.tar.gz spark-33db842b6fe1c0b60bff764a9e226452bf1914a8.tar.bz2 spark-33db842b6fe1c0b60bff764a9e226452bf1914a8.zip |
[SPARK-2010] Support for nested data in PySpark SQL
JIRA issue https://issues.apache.org/jira/browse/SPARK-2010
This PR adds support for nested collection types in PySpark SQL, including
array, dict, list, set, and tuple. Example,
```
>>> from array import array
>>> from pyspark.sql import SQLContext
>>> sqlCtx = SQLContext(sc)
>>> rdd = sc.parallelize([
... {"f1" : array('i', [1, 2]), "f2" : {"row1" : 1.0}},
... {"f1" : array('i', [2, 3]), "f2" : {"row2" : 2.0}}])
>>> srdd = sqlCtx.inferSchema(rdd)
>>> srdd.collect() == [{"f1" : array('i', [1, 2]), "f2" : {"row1" : 1.0}},
... {"f1" : array('i', [2, 3]), "f2" : {"row2" : 2.0}}]
True
>>> rdd = sc.parallelize([
... {"f1" : [[1, 2], [2, 3]], "f2" : set([1, 2]), "f3" : (1, 2)},
... {"f1" : [[2, 3], [3, 4]], "f2" : set([2, 3]), "f3" : (2, 3)}])
>>> srdd = sqlCtx.inferSchema(rdd)
>>> srdd.collect() == \
... [{"f1" : [[1, 2], [2, 3]], "f2" : set([1, 2]), "f3" : (1, 2)},
... {"f1" : [[2, 3], [3, 4]], "f2" : set([2, 3]), "f3" : (2, 3)}]
True
```
Author: Kan Zhang <kzhang@apache.org>
Closes #1041 from kanzhang/SPARK-2010 and squashes the following commits:
1b2891d [Kan Zhang] [SPARK-2010] minor doc change and adding a TODO
504f27e [Kan Zhang] [SPARK-2010] Support for nested data in PySpark SQL
(cherry picked from commit 4fdb491775bb9c4afa40477dc0069ff6fcadfe25)
Signed-off-by: Reynold Xin <rxin@apache.org>
Diffstat (limited to 'yarn/stable')
0 files changed, 0 insertions, 0 deletions