Движение данных в Кассандре / HDFS и Spark


При проектировании распределенной архитектуры хранения и аналитики используется ли общий шаблон для запуска механизма аналитики на той же машине, что и узлы данных? в частности, имеет ли смысл запускать Spark / Storm непосредственно на узлах Cassandra / HDFS?

Я знаю, что MapReduce на HDFS имеет такой шаблон использования, так как согласно Hortonworks, YARN минимизирует движение данных. Хотя я понятия не имею, так ли обстоит дело с этими другими системами. Я бы предположил, что это потому, что они, кажется, так подключаются друг к другу, но я, кажется, не могу найти никакой информации об этом в интернете.

Я вроде как новичок в этой теме, так что любые ресурсы или ответы будут очень признательны.

Спасибо

1 2

1 ответ:

Да, имеет смысл запускать Spark на узлах Cassandra, чтобы минимизировать перемещение данных между машинами.

При создании RDD из таблицы Cassandra разделы RDD будут созданы из диапазонов маркеров, которые являются локальными для каждой машины.

Вот ссылка на разговор на эту тему для разъема Spark Cassandra:

Cassandra and Spark: оптимизация для локализации данных

Как говорится в резюме: "есть только три вещи, которые важны в аналитика в распределенной базе данных: локальность, локальность и локальность."