如何将配置单元元数据从属性文件传递到sparkDataframe

o7jaxewo  于 2021-05-27  发布在  Spark
关注(0)|答案(0)|浏览(197)

在读取源文件时,我需要将属性文件中配置单元表的元数据(包括列名及其数据类型)作为模式传递。
(下面是属性文件中的一个参数-以及其他一些参数,如表\u name…等) hive_table_metadata = emp_name,StringType|emp_dt,DateType|emp_no,IntegerType 我想把它读入sparkDataframe并作为schema传递(当我从如下的源文件中读取数据时)
有人能提供一些意见或解决办法吗
在下面我正在尝试,我可以传递列名(从配置单元表元数据)…但不能将其数据类型作为配置单元表元数据的参数/参数,并在下面的代码中作为架构发送。

val tbl_schema = StructType(hive_table_metadata.split("|").map(fieldName ⇒ StructField(fieldName, <get the datatype from hive_table_metadata>, true)))
val readFileIn = spark.sqlContext.read
  .format("csv")
  .schema(tbl_schema)
  .load("data/source_file.csv")

我在scala中使用spark 2.x。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题