我有一张火花表,如下所示:
Table1
col1 string
col2 int
col3 string
col4 int
col5 string
我有另一张表,如下所示:
Table2
col1 string
col2 int
col3 string
我想动态读取 table1 的模式并更改 table2 的模式,以便两个表的模式匹配(相同的列名和数据类型)
所以最后table2应该如下所示:
Table2
col1 string
col2 int
col3 string
col4 int
col5 string
是否可以使用Pyspark实现?
答案 0 :(得分:4)
是的,您可以将表编写到DataFrame中,然后使用以下方式获取模式:
val tableSchema = yourDataFrame.schema
您也可以将其作为表格字段列表:
val tableSchema = yourDataFrame.schema.fields