Можно ли привязать имена столбцов заголовков к полям Java-бина, если они не имеют одинакового имени?Какой сериализатор использует Spark под крышкой?
Когда я пытаюсь создать набор данных, загружающий CSV-файл, например:
Dataset<Employee> employeeDs = frameReader.load(EMPLOYEE).as(bean(Employee.class));
Я получаю исключение:
org.apache.spark.sql.AnalysisException: cannot resolve '`companyCode`' given input columns: [NAME, AGE, COMPANY_CODE];
Это имеет смысл, поскольку COMPANY_CODE не ассоциируется с companyCode .
CSV file:
+-------+---+------------+
| NAME|AGE|COMPANY_CODE|
+-------+---+------------+
| John| 41| 1|
| Mary| 34| 1|
| Chris| 32| 2|
|Phillip| 22| 2|
| Tony| 44| 1|
+-------+---+------------+
Employee.class:
public class Employee {
private String name;
private int companyCode;
private int age;
(...)