Сравнение подходов к крупномасштабному анализу данных

       

Стратегии исполнения


Как отмечалось ранее, планировщик запросов в параллельных СУБД тщательно следит за тем, чтобы данные пересылались между узлами только в случае абсолютной необходимости. Это позволяет системам оптимизировать алгоритмы соединений в зависимости от характеристик данных и выполнять «проталкиваемую» передачу сообщений без потребности сохранения промежуточных наборов данных. Со временем сторонникам MR стоит изучить методы, используемые в параллельных СУБД, и перенять понятия, уместные для их модели. Авторы статьи полагают, что это позволит значительно повысить эффективность сред MR.

Кроме того, параллельные СУБД конструируют полный план выполнения запроса, который рассылается во все обрабатывающие узла в начале выполнения запроса. Поскольку данные «проталкиваются» между узлами только при необходимости, в течение обработки отсутствуют управляющие сообщения. В отличие от этого, в системах MR используется большое число управляющих сообщений для синхронизации обработки, что ухудшает производительность из-за возрастающих накладных расходов. СУБД Vertica также свойственна эта проблема, но в гораздо меньшем масштабе (см. подраздел 4.2).



Содержание раздела