Hadoop/Spark: как связаны коэффициент репликации и производительность?

Не обсуждая все другие факторы производительности, дисковое пространство и объекты узла Name, как фактор репликации может улучшить производительность MR, Tez и Spark.

Если у нас есть, например, 5 datanades, лучше ли механизму выполнения установить репликацию на 5? Какое лучшее и худшее значение?

Как это может быть хорошо для агрегаций, объединений и задач, связанных только с картой?


person 54l3d    schedule 03.07.2018    source источник
comment
локальность данных снижает сетевой ввод-вывод   -  person philantrovert    schedule 03.07.2018


Ответы (1)


Один из основных арендаторов Hadoop переносит вычисления в данные.

Если вы установите коэффициент репликации примерно равным количеству узлов данных, вы гарантируете, что каждая машина сможет обрабатывать эти данные.

Однако, как вы упомянули, накладные расходы namenode очень важны, и большее количество файлов или реплик вызывает медленные запросы. Дополнительные реплики также могут перегрузить вашу сеть в неработоспособном кластере. Я никогда не видел ничего выше 5, и это только для самых важных данных компании. Что-нибудь еще, они оставили на 2 реплики

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

person OneCricketeer    schedule 03.07.2018
comment
Спасибо за ответ, как это повлияет на задания присоединения, агрегации и работы только с картой? - person 54l3d; 04.07.2018
comment
Все они работают в одной и той же среде, поэтому я не уверен, что вы пытаетесь спросить. - person OneCricketeer; 04.07.2018
comment
Абсолютно, но повышает ли этот подход производительность для любых видов работ или это связано только с перетасовкой? - person 54l3d; 06.07.2018
comment
На мой взгляд, большее количество реплик отрицательно сказывается на производительности. Блоки данных по-прежнему необходимо перемешивать, потому что вы будете фильтровать, объединять и преобразовывать данные, которые существуют в других блоках, не всегда на одном компьютере. - person OneCricketeer; 06.07.2018