com.databricks.spark.xml
通过格式加载xml文件时,我试图为每一行添加输入文件名。但它返回文件名的空列..
这是代码片段。我正在使用input_file_name
功能:
sqlContext.read.format("com.databricks.spark.xml")
.option("rowTag", "BO_RECORD")
.load("file:///<path>/*")
.withColumn("filename", input_file_name())
.show()
返回:
+------------+-----------+---------------+--------+
|TicketRefund|TicketsSold|_corrupt_record|filename|
+------------+-----------+---------------+--------+
| 0| 3| null| |
| 0| 1| null| |
| 0| 18| null| |
| 0| 22| null| |
| 0| 3| null| |
+------------+-----------+---------------+--------+
我尝试了不同的方法,但在使用 com.databricks.spark.xml 时它仍然返回空文件名。
sqlContext.read.format("com.databricks.spark.xml")
.option("rowTag", "BO_RECORD")
.load("file:///<path>/*")
.select(input_file_name())
.show()
但是,它在为文本文件执行正常数据帧加载时效果很好。
请帮忙。