Nano Hash - криптовалюты, майнинг, программирование

Как развернуть и запустить задание Samza на HDFS?

Я хочу, чтобы задание Samza выполнялось в удаленной системе, а задание Samza хранилось в HDFS. Пример (https://samza.apache.org/startup/hello-samza/0.7.0/) для выполнения задания Samza на угольной машине включает создание tar-файла, затем распаковку tar-файла, а затем запуск сценария оболочки, который находится в tar-файле.

Пример здесь для HDFS вообще плохо документирован (https://samza.apache.org/learn/tutorials/0.7.0/deploy-samza-job-from-hdfs.html). В нем говорится скопировать файл tar в HDFS, а затем выполнить другие шаги в примере без HDFS.

Это означает, что tar-файл, который сейчас находится в HDFS, необходимо распаковать в HDFS, а затем запустить сценарий оболочки для этого разархивированного tar-файла. Но вы не можете распаковать tar-файл HDFS с помощью оболочки Hadoop fs...

Без распаковки tar-файла у вас не будет доступа к run-job.sh для запуска задания Samza.

Кому-нибудь удалось заставить это работать, пожалуйста?

28.10.2015

Ответы:


1

Мы развертываем наши задания Samza следующим образом: у нас есть библиотеки hadoop в /opt/hadoop, у нас есть скрипты Samza sh в /opt/samza/bin и у нас есть файл конфигурации Samza в /opt/samza/config. В этом конфигурационном файле есть строчка:

yarn.package.path=hdfs://hadoop1:8020/deploy/samza/samzajobs-dist.tgz

Когда мы хотим развернуть новую версию нашего задания Samza, мы просто создаем архив tgz, перемещаем его (не распаковывая) в HDFS в /deploy/samza/ и запускаем /opt/bin/run-job.sh --config-factory=org.apache.samza.config.factories.PropertiesConfigFactory --config-path=file:///opt/samza/config/$CONFIG_NAME.properties

Единственным недостатком является то, что мы игнорируем файлы конфигурации в архиве. При изменении конфига в архиве это не влияет. Вы должны изменить файлы конфигурации в /opt/samza/config. С другой стороны, мы можем изменить конфигурацию нашего задания Samza без развертывания нового архива tgz. Сценарии оболочки под /opt/samza/bin остаются одинаковыми для каждой сборки, поэтому вам не нужно распаковывать архивный пакет из-за сценариев оболочки.

Удачи с Самзингом! :-)

28.10.2015
  • Отлично, большое спасибо. Должен ли компьютер, с которого вы запускаете задание (путем вызова run-job.sh), иметь работающий менеджер ресурсов? 01.11.2015
  • Мы запускаем диспетчер ресурсов на той же машине, но я не уверен, что это необходимо. Это больше вопрос о Hadoop, а я не так много знаю о Hadoop. Извините :-(. Хотя проверить это должно быть легко :). 02.11.2015
  • ОК, кажется, я получаю ошибки, когда запускаю его с машины, отличной от RM. Используете ли вы ResourceManager в HA? Если да, то что вы устанавливаете yarn.resourcemanager.hostname в yarn-site.xml? 03.11.2015
  • Да, мы. Обычно мы запускаем все на частном IP, т.е. е. 10.*.*.* или 192.*.*.*. В частности, мы используем домены, поэтому наш YARN использует hadoop1 в качестве имени хоста, и у нас есть перевод на IP во всех /etc/hosts файлах на всех серверах. 03.11.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..