Видео: Hadoop Processing Frameworks 2024
«Простой» часто означает «изящный», когда речь заходит об этих архитектурных чертежах для этого новый особняк в Силиконовой долине, который вы планировали, когда деньги начнут катиться после внедрения Hadoop. Тот же принцип применяется к архитектуре программного обеспечения. Свинья состоит из двух (числовых, двух) компонентов:
-
Сам язык: В качестве доказательства того, что у программистов есть чувство юмора, язык программирования для Pig известен как Pig Latin, высокоуровневый язык, который позволяет писать программы обработки и анализа данных.
-
Компилятор Pig Latin: Компилятор Pig Latin преобразует латинский код Pig в исполняемый код. Исполняемый код выполняется либо в виде заданий MapReduce, либо может порождать процесс, в котором создается виртуальный экземпляр Hadoop для запуска кода Pig на одном узле.
Последовательность программ MapReduce позволяет программам Pig параллельно обрабатывать и анализировать данные, используя Hadoop MapReduce и HDFS. Запуск задания Pig в виртуальном экземпляре Hadoop - полезная стратегия для тестирования ваших скриптов Pig.
На рисунке показано, как Свинья относится к экосистеме Hadoop.
Программы Pig могут запускаться на MapReduce v1 или MapReduce v2 без каких-либо изменений кода, независимо от того, в каком режиме работает ваш кластер. Однако скрипты Pig также могут запускаться с использованием Tez API. Apache Tez обеспечивает более эффективную структуру выполнения, чем MapReduce. YARN позволяет использовать фреймворки приложений, отличные от MapReduce (например, Tez) для работы на Hadoop. Улей также может работать против структуры Tez.