Предоставление явной схемы в Spark2 DataFrame - PullRequest
0 голосов
/ 09 декабря 2018

У меня есть требование прочитать данные из файла csv и проверить их по явной схеме, и, если проверка схемы не удалась, выдать ошибку.Для этого я сделал следующее: 1) Определил схему

   public static StructField[] schema ={
                new StructField("name", DataTypes.StringType, false, Metadata.empty()),
                new StructField("type_id",DataTypes.StringType, false, Metadata.empty())
               };

2) Проверьте данные по схеме

StructType schemaType =new StructType(Myschema.schema);
    Dataset<Row> df =session.read().schema(schemaType).option("header", "true").csv(csvInput);
    df.printSchema();

Мои вопросы

  • 1) Как вывести ошибку, если какая-либо строка не прошла проверку?
  • 2) Хотя я упоминал, что поля не обнуляются в определениях
    Structfield, когда я печатаю схему, она печатает поля как обнуляемые, почему это происходит?
  • 3) Как использовать параметр Metadata в конструкторе StructField?
...