WARN CSVHeaderChecker:CSV 标头不符合架构。 - 但标题是正确的

问题描述 投票:0回答:2

我正在尝试使用 Spark 流式传输 CSV 文件。 我很鼓舞 https://dzone.com/articles/spark-structured-streaming-using-java.

但是我得到了错误:

22/03/07 13:51:52 WARN CSVHeaderChecker: CSV header does not conform to the schema.
 Header: 
 Schema: department
Expected: department but found: 
CSV file: file:///C:..../data/stream/employee/drop_data/02_employee.csv

这是我的代码:

StructType schema = new StructType().add("empId", DataTypes.StringType).add("empName", DataTypes.StringType)
            .add("department", DataTypes.StringType);

//build the streaming data reader from the file source, specifying csv file format
        Dataset<Row> rawData = spark.readStream().option("header", true).format("csv").schema(schema)
                .csv("C:/.../test/data/stream/employee/drop_data");

这是我的 csv :

empId;empName;department
1;Name;IT
java apache-spark apache-spark-sql spark-streaming
2个回答
2
投票

您是否尝试将 csv 文件的分隔符值从“;”更改为到 ','? 来自source的示例有专栏。


0
投票

HAHA 我也遇到了同样的问题,最后我发现我输入了“XX.csv”到“XX.xlsx”,所以正如Benoit所说,是分隔符的问题

© www.soinside.com 2019 - 2024. All rights reserved.