我已经成为一个半年半以上的用户了,但我的工作仅限于R api; h2o flow对我来说相对较新。如果它对你来说也是新手,它基本上是0xdata的iPython版本,但是iPython允许你将笔记本导出到脚本中。我无法在流程中找到类似的选项...
我正在将模型(内置流程)转移到生产中,我想知道如何自动化它。使用R api,在构建并保存模型之后,我可以轻松地将其加载到R中并仅通过从CLI运行CREATE FUNCTION executePython()
RETURNS VOID
AS $$
#!/bin/sh
python /path/to/MyApp
$$
LANGUAGE plsh;
来对新数据进行预测,但我不确定如何做某事与flow类似,特别是因为它在Hadoop上运行。
目前的情况是,每次运行都分成三部分,流程在中间创造了一个相对笨重的过程:
nohup Rscript <the_file> &
运行IP地址h2o,手动逐个单元地运行流程这是一个非常侵入式的制作过程,我想把所有的目标都捆绑在一起,但是流程让它变得相当困难。提炼问题:有没有办法将流量压缩到hadoop jar中,然后运行像nslookup
这样的jar?
这里是h2o R包documentation。 R API允许你加载一个H2O模型,所以我尝试加载流程(好像它是一个H2O模型),并且毫不奇怪它不起作用(失败了hadoop jar <my_flow_jar.jar> ...
),因为它不是技术上是一个h2o模型。
答案 0 :(得分:2)
这已经很晚了,但是(现在)h2o流模型有自动生成的java代码,代表可以剪切和粘贴的训练模型(称为POJO)(比如从远程hadoop会话到本地java文件) 。有关如何使用java对象(https://h2o-release.s3.amazonaws.com/h2o/rel-turing/1/docs-website/h2o-docs/pojo-quick-start.html)的快速入门教程,请参见此处。您必须引用h2o java api(https://h2o-release.s3.amazonaws.com/h2o/rel-turing/8/docs-website/h2o-genmodel/javadoc/hex/genmodel/easy/EasyPredictModelWrapper.html)来开始自定义您希望如何使用POJO,但实质上您将其用作黑盒子,可以对正确格式化的输入进行预测。
假设您的hadoop会话是远程的,请替换&#34; localhost&#34;在示例中使用(远程)流会话的IP地址。