Сопоставление столбцов в формате записи фрейма данных JDBC в Apache Spark

#apache-spark #jdbc #pyspark

#apache-spark #jdbc #pyspark

Вопрос:

Я могу загружать записи фрейма данных в базу данных Oracle без каких-либо ошибок, но я хотел бы знать, как сопоставить столбцы в Df с Oracle

Я хотел сопоставить поле Employee_id из фрейма данных в столбец ID в oracle в формате записи JDBC.

сопоставление столбцов :

 df          ---------- Oracle
Employee_id ----------    ID


targetdf=spark.sql(final_sql)

targetdf.show()

targetdf.write 
   .format("jdbc") 
   .option("url", "jdbc:oracle:thin:@***************") 
   .option("driver", "oracle.jdbc.driver.OracleDriver") 
   .option("dbtable", target_table) 
   .option("user", "hr") 
   .option("password", "******") 
   .mode('append').save()
 

Ответ №1:

Вы можете сделать

 targetdf = targetdf.withColumnRenamed("Employee_id", "ID")
 

перед записью в базу данных Oracle. Сопоставление основано на именах столбцов.