Как включить отказоустойчивость на основе происхождения для интеграции Spark-Tachyon?

Я пытаюсь реализовать совместное использование RDD/Dataframe с помощью Tachyon. Насколько я понимаю, с HDFS под FS запись является асинхронной (с репликацией в HDFS, происходящей за сценой) и, следовательно, должна быть быстрее, но в моем тестировании я вижу, что Tachyon с HDFS под FS в 2-6 раз медленнее при записи.

Из этой статьи о Тахионе я вижу, что:

«Мы сделали [отказоустойчивость на основе происхождения] настраиваемой в нашей интеграции Spark и MapReduce»

Как вы позволяете Spark использовать отказоустойчивость на основе происхождения в Tachyon?

Примечание. Я использую метод Spark Dataframe, df.write.parquet, и метод RDD, rdd.saveAsObjectFile, чтобы сохранить свои кадры данных/RDD в Tachyon.


person Shane Kinsella    schedule 11.12.2015    source источник


Ответы (1)


Вы должны установить tachyon.user.lineage.enabled в значение true и настроить другие параметры родословной в соответствии с вашими предпочтениями. Некоторые из наиболее интересных настроек (из документов по основной конфигурации) :

  • tachyon.master.lineage.checkpoint.interval.ms - Интервал (в миллисекундах) между планированием контрольной точки Тахиона.
  • tachyon.master.lineage.checkpoint.class — имя класса стратегии контрольной точки для файлов вывода Lineage. Стратегия по умолчанию состоит в том, чтобы проверить последнюю завершенную линию передачи, т. е. линию, выходные файлы которой завершены.
  • tachyon.master.lineage.recompute.interval.ms - Интервал (в миллисекундах) между повторными вычислениями Tachyon. Исполнитель сканирует все потерянные файлы, отслеживаемые по происхождению, и повторно выполняет соответствующие задания. каждые 10 минут.

Дополнительные сведения см. в документации Lineage API.

person zero323    schedule 11.12.2015