Предоставление явной схемы в DataFrame Spark2

У меня есть требование прочитать данные из 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?

0 ответов

Другие вопросы по тегам