使用并行化创建键/值对 RDD?
Posted
技术标签:
【中文标题】使用并行化创建键/值对 RDD?【英文标题】:using parallelize to create a key/value pair RDD? 【发布时间】:2015-07-15 21:43:29 【问题描述】:spark API docs 为使用并行化创建 RDD 提供以下定义:
并行化(c,numSlices=None)
分发本地 Python 集合以形成 RDD。使用 xrange 是 如果输入表示性能范围,则建议使用。
>>> sc.parallelize([0, 2, 3, 4, 6], 5).glom().collect() [[0], [2], [3], [4], [6]] >>> sc.parallelize(xrange(0, 6, 2), 5).glom().collect() [[], [0], [], [2], [4]]
我想创建一个键/值对 RDD,如何使用并行化来做到这一点?示例输出 RDD:
key | value
-------+-------
panda | 0
pink | 3
pirate | 3
panda | 1
pink | 4
【问题讨论】:
【参考方案1】:sc.parallelize([("panda", 0), ("pink", 3)])
【讨论】:
我应该意识到它只是一个元组数组!无论如何,谢谢! 没问题!它也可以是来自两个元素的列表,元组看起来更自然。以sc.parallelize([["panda", 0], ["pink", 3]]).countByKey()
为例。【参考方案2】:
sc.parallelize(Seq(("panda", 0), ("pink", 3)))
【讨论】:
以上是关于使用并行化创建键/值对 RDD?的主要内容,如果未能解决你的问题,请参考以下文章