更改spark中表的架构

时间:2017-09-26 11:18:17

标签: pyspark spark-dataframe

我有一张火花表,如下所示:

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实现?

1 个答案:

答案 0 :(得分:4)

是的,您可以将表编写到DataFrame中,然后使用以下方式获取模式:

val tableSchema = yourDataFrame.schema

您也可以将其作为表格字段列表:

val tableSchema = yourDataFrame.schema.fields