在PySpark中创建Hive模式

时间:2019-05-08 18:13:50

标签: apache-spark hive pyspark apache-spark-sql pyspark-sql

在pyspark中创建Hive模式

我已经在Scala Spark中创建了一个架构,但是我想使用pyspark创建一个架构。有人可以显示python的语法吗?

data.csv
id,name
1,sam
2,smith
val schema = new StructType().add("id", IntType).add("name", StringType)
val ds = spark.read.schema(schema).option("header", "true").csv("data.csv")
ds.show

1 个答案:

答案 0 :(得分:1)

使用StructField(name,dataType,nullable = True)定义StructType

从pyspark.sql.types中,您可以导入数据类型

from pyspark.sql.types import StructType, StructField, IntegerType, StringType,FloatType,BooleanType
schema = StructType([
    StructField("col_a", StringType(), True),
    StructField("col_b", IntegerType(), True),
    StructField("col_c", FloatType(), True),
    StructField("col_d", BooleanType(), True)
])