PySpark RDDcollectAsMap(~)
方法收集 RDD 对中的所有元素驱动节点关联并将 RDD 转换为字典。
注意
A 对RDD是一个包含元组列表的 RDD。
参数
该方法不接受任何参数。
返回值
一个字典。
例子
考虑以下PySpark对 RDD:
rdd = sc.parallelize([("a",5),("b",2),("c",3)])
rdd.collect()
[('a', 5), ('b', 2), ('c', 3)]
在这里,我们使用 parallelize(~)
方法创建一对RDD。
将一对 RDD 转换为 PySpark 中的字典
要将 Pair RDD 转换为 PySpark 中的字典,请使用 collectAsMap()
方法:
rdd.collectAsMap()
{'a': 5, 'b': 2, 'c': 3}
警告
由于RDD中的底层数据全部发送到驱动节点,如果数据太大,可能会遇到OutOfMemoryError
。
如果出现重复键
当我们有重复的键时,后一个键值对将覆盖前一个键值对:
rdd = sc.parallelize([("a",5),("a",6),("b",2)])
rdd.collectAsMap()
{'a': 6, 'b': 2}
这里,元组 ("a",6)
已覆盖 ("a",5)
。
相关用法
- Python PySpark RDD collect方法用法及代码示例
- Python PySpark RDD countByKey方法用法及代码示例
- Python PySpark RDD coalesce方法用法及代码示例
- Python PySpark RDD count方法用法及代码示例
- Python PySpark RDD zip方法用法及代码示例
- Python PySpark RDD repartition方法用法及代码示例
- Python PySpark RDD partitionBy方法用法及代码示例
- Python PySpark RDD reduceByKey方法用法及代码示例
- Python PySpark RDD zipWithIndex方法用法及代码示例
- Python PySpark RDD filter方法用法及代码示例
- Python PySpark RDD first方法用法及代码示例
- Python PySpark RDD keys方法用法及代码示例
- Python PySpark RDD glom方法用法及代码示例
- Python PySpark RDD getNumPartitions方法用法及代码示例
- Python PySpark RDD map方法用法及代码示例
- Python Django Response.json用法及代码示例
- Python Django Repeat用法及代码示例
- Python Django RandomUUID用法及代码示例
- Python Django RelatedManager.set用法及代码示例
- Python RLock acquire()用法及代码示例
- Python Django RelatedManager.remove用法及代码示例
- Python Random.Choices()用法及代码示例
- Python Django RequestContext用法及代码示例
- Python Django Reverse用法及代码示例
- Python NumPy Random Generator uniform方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 PySpark RDD | collectAsMap method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。