MapReduce Код для выполнения файла оценки.ds2 в кластере hadoop
У меня есть файл.ds2, созданный с помощью ускорителя скоринга SAS. Ускоритель скоринга sas имеет макрос%INDHD_RUN_MODEL, который создает код MapReduce для внутреннего выполнения файла.ds2.
Как я могу увидеть код или как я могу создать аналогичный код mapreduce. Так что я могу запланировать выигрыш через oozie.
2 ответа
Вы можете запланировать%INDHD_RUN_MODEL, но не можете запланировать задания по сокращению карты напрямую.SAS EP(Embeded Process) преобразует код.ds2 в задания по сокращению карты, а затем извиняет его. Весь процесс должен быть черным ящиком для конечных пользователей.
%indhd_run_model
макрос предварительно скомпилирован и хранится в SASHOME\SASFoundation\9.4\accelmvahadp\cmacros
, Похоже, что разработчики этого кода хотят скрыть содержимое.
libname macros 'C:\SAS\SASHome\SASFoundation\9.4\accelmvahadp\cmacros';
options sasmstore=macros mstored;
%COPY indhd_run_model / source;
ПРИМЕЧАНИЕ. Макрос %INDHD_RUN_MODEL был скомпилирован с параметром /SECURE. Для этого оператора%COPY не будет получен вывод.
ОШИБКА. Параметр /SOURCE не был указан при компиляции макроса INDHD_RUN_MODEL.
Поскольку /secure
опция включена, невозможно специально просмотреть шаблон кода Hadoop; тем не менее, вы можете получить лучшее представление, включив следующие параметры в SAS:
options mlogic mlogicnest sastrace=',,,d' sastraceloc=saslog nostsuffix;
Это включит несколько вещей:
- Фактическая логика различных частей запускаемого макроса
- Запросы HiveQL, отправленные SAS, и ответ от Hadoop; вывод находится в журнале SAS
Вы также можете поиграть с аргументами sastrace
возможность получать разные виды информации.
В худшем случае вам необходимо обратиться в службу технической поддержки SAS, чтобы получить дополнительную помощь по этому вопросу. Я бы порекомендовал позвонить, так как вы получите гораздо более быстрый ответ.