如何从任何数据库表创建 PySpark RDD?
Posted
技术标签:
【中文标题】如何从任何数据库表创建 PySpark RDD?【英文标题】:How to create PySpark RDD from any database table? 【发布时间】:2018-02-10 07:52:16 【问题描述】:由于我是 Spark 社区的新手,任何人都可以解释如何从数据库表创建 PySpark RDD。我可以使用 SparkContext 方法的 textFile() 方法从 CSV 文件创建 PySpark RDD。但我不知道从数据库表创建 PySpark RDD。
【问题讨论】:
加载表格会输出一个数据框。请参阅Dataframe to RDD conversion的示例和示例 【参考方案1】:使用 pyspark,
df = sqlContext.read.table("your_database.your_hive_table")
df
(数据帧)现在将拥有您可以使用 Spark API 使用的行。例如
df.select("*").show() //equivalent to select * from your_hive_table
>>> df = sqlContext.read.table("students")
>>> df.select("*").show()
+----+---------+---+
| a| b| c|
+----+---------+---+
| Jon| English| 80|
| Amy|Geography| 70|
|Matt| English| 90|
| Jon| Math|100|
| Jon| History| 60|
| Amy| French| 90|
+----+---------+---+
【讨论】:
感谢您的回复..现在我可以使用 df (dataframe) 创建 RDD 数据结构,如果我想要它在 RDD 结构中。对吗?df.rdd
将为您提供rdd
的数据框。检查文档。以上是关于如何从任何数据库表创建 PySpark RDD?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 PySpark rdd.mapPartitions 运行内存密集型 shell 脚本
如何删除元素如何根据另一个rdd从一个rdd中删除元素并在pyspark中创建新的rdd?