使用spark-sql操作文件进行sql查询
示例代码如下
if __name__ == '__main__':
#SparkSession用于SparkSQL编程作为入口对象
#用于SparkCore编程,可以通过SparkSession对象中获取到SparkContext
#也可以直接进入pyspark客户端省略该步骤./pyspark --master local[*],会自动创建sc
spark = SparkSession.builder.\
appName("test").\
config("spark.sql.shuffle.partitions", 100).\
getOrCreate()
sc = spark.sparkContext
#读取文件并指定特定分隔符输出数据
rdd = sc.textFile("/data/work/yqf/pyspark.csv").\
map(lambda x: x.split(",")).\
map(lambda x: (x[0],x[1],x[2])))
#rdd转df指定schema
df = spark.createDataFrame(rdd, schema=['name', 'age','sex'])
#创建临时表
df.createOrReplaceTempView("people")
#使用sql查询临时表数据
spark.sql("SELECT * FROM people WHERE age < 30").show()
标签:__,pyspark,df,SparkSession,sql,spark
From: https://www.cnblogs.com/whiteY/p/17754195.html