В чем преимущество использования spark с HDFS в качестве системы хранения файлов и YARN в качестве менеджера ресурсов? - PullRequest
0 голосов
/ 26 января 2019

Я пытаюсь понять, является ли искра альтернативой ванильному подходу MapReduce для анализа BigData. Поскольку spark сохраняет операции с данными в памяти, поэтому при использовании HDFS в качестве системы хранения для spark использует ли распределенное хранилище HDFS преимущество? Например, предположим, у меня есть файл CSV 100 ГБ, хранящийся в HDFS, теперь я хочу сделать анализ на нем. Если я загружу это из HDFS в spark, то будет инициировать полную загрузку данных в память для выполнения преобразований или использовать распределенную среду для выполнения своих задач, которые HDFS предоставляет для хранилища, что используется программами MapReduce, написанными на hadoop. Если нет, то в чем преимущество использования spark по сравнению с HDFS?

PS: Я знаю, что разлив искры на дисках происходит при переполнении ОЗУ, но происходит ли это для данных на узел (например, 5 ГБ на узел) кластера или для полных данных (100 ГБ)?

1 Ответ

0 голосов
/ 27 января 2019

Задания Spark могут быть настроены на разлив на локальный диск исполнителя, если для чтения ваших файлов недостаточно памяти.Или вы можете включить снимки HDFS и кэширование между этапами Spark.

Вы упоминаете CSV, который является плохим форматом для Hadoop в целом.Если у вас есть 100 ГБ CSV, вы также можете легко получить менее половины, если бы вы писали в Parquet или ORC ...

В конце дня вам понадобится какой-нибудь механизм обработки и некоторый уровень хранения.Например, Spark на Mesos или Kubernetes может работать так же хорошо, как и на YARN, но это отдельные системы, и они не связаны и не связаны так же хорошо, как HDFS и YARN.Кроме того, как и MapReduce, при использовании YARN вы перемещаете выполнение к NodeManager в датоданных, а не переносите данные по сети, что вы делали бы в других режимах выполнения Spark.NameNode и ResourceManagers координируют эту связь для того, где данные хранятся и обрабатываются

Если вы уверены, что MapReduceV2 может быть лучше, чем Spark, я бы посоветовал взглянуть на Tez вместо

...