1、开发环境
python版本:3.6
spark版本:2.3.1
pyspark:2.3.1
2、脚本
from pyspark import SparkConf,SparkContext
from pyspark.sql import SQLContext,HiveContext
from pyspark.sql.types import *
####1、从json文件读取数据,并直接生成DataFrame#######
path = "20180724141719.json"
df = sqlContext.read.json(path)
df.printSchema()
####################################
data_dict = { "region": "cn", "env": "dev", "product": "snap" } schema = StructType([ StructField("region", StringType(), True), StructField("env", StringType(), True), StructField("product", StringType(), True)]) dslist = [] ## 空列表 dslist.append(data_dict) ## 使用 append() 添加元素
###2、通过json字符串生成DataFrame############# myrdd = sc.parallelize(dslist) df = sqlContext.read.json(myrdd) df.printSchema() ####3、通过自定义schema和json字符串列表,生成DataFrame#######
df = sqlContext.createDataFrame(dslist,schema)
df.printSchema()
########################################################