Быстрый Паркетный ряд в Spark

Файлы Parquet содержат поле количества строк для каждого блока. Спарк, кажется, читает это в какой-то момент (SpecificParquetRecordReaderBase.java#L151).

Я попробовал это вspark-shell:

sqlContext.read.load("x.parquet").count

И Spark провел два этапа, показывая различные этапы агрегирования в DAG. Я полагаю, это означает, что он обычно читает файл, а не использует количество строк. (Я могу ошибаться.)

Вопрос в том, использует ли Spark поля подсчета строк при запускеcount? Есть ли другой API для использования этих полей? Является ли полагаться на эти поля плохой идеей по какой-то причине?

Ответы на вопрос(1)

Ваш ответ на вопрос