【发布时间】:2016-03-22 09:31:57
【问题描述】:
我有一个从 SAS 评分加速器创建的 .ds2 文件。 sas 评分加速器有一个宏 %INDHD_RUN_MODEL,它在内部创建一个 MapReduce 代码来执行 .ds2 文件。
如何查看代码或如何创建类似的 mapreduce 代码。 这样我就可以通过 oozie 安排评分。
【问题讨论】:
标签: hadoop mapreduce sas oozie scoring
我有一个从 SAS 评分加速器创建的 .ds2 文件。 sas 评分加速器有一个宏 %INDHD_RUN_MODEL,它在内部创建一个 MapReduce 代码来执行 .ds2 文件。
如何查看代码或如何创建类似的 mapreduce 代码。 这样我就可以通过 oozie 安排评分。
【问题讨论】:
标签: hadoop mapreduce sas oozie scoring
%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;
这将开启一些事情:
您还可以使用sastrace 选项的参数来获取different types of information。
在最坏的情况下,您需要联系 SAS 技术支持以获取有关该问题的更多帮助。我建议您致电,因为您会得到更快的回复。
【讨论】:
您可以调度 %INDHD_RUN_MODEL,但不能直接调度 map-reduce 作业。SAS EP(嵌入式进程)将 .ds2 代码转换为 map-reduce 作业,然后执行它。整个过程对最终用户来说应该是一个黑匣子。
【讨论】: