gpt4 book ai didi

mysql - 如何有效地将 MySQL 表读入 Apache Spark/PySpark?

转载 作者:可可西里 更新时间:2023-11-01 15:05:02 27 4
gpt4 key购买 nike

我有一堆 MySQL 表需要对其执行一些分析。我目前已将表格导出为 CSV 文件并将它们放在 HDFS 上。我现在从 PySpark 上的 HDFS 将每个表读入不同的 RDD 以进行分析。

from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)
df = sqlContext.read.format('com.databricks.spark.csv').options(header='true', inferschema='true').load('hdfs://path/to/file.csv')

今天我了解到您可以直接从 MySQL 读取表到 Spark。这样做有什么性能增强吗?当您使用 Spark 处理大型 RDBMS 表时,应遵循的标准程序是什么?

最佳答案

直接 JDBC 连接为您提供了一些其他选项,如 partitionColumn、lowerBound、upperBound、numPartitions

df = sqlContext.read.format('jdbc').options(url='jdbc:postgresql:dbserver', dbtable='schema.tablename').load()

或者一个更重要的功能,您可以根据查询过滤数据。检查这个link

df = sqlContext.read.format('jdbc').options(url='jdbc:postgresql:dbserver', dbtable='(select id,name from emp) as emp').load()

关于mysql - 如何有效地将 MySQL 表读入 Apache Spark/PySpark?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34130839/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com