我已经在本地安装了PredictionIO,使用我根据需要修改的通用推荐模板训练了引擎,一切看起来都很好。
现在我知道这可以满足我的需求,我希望将它部署到生产中,遗憾的是,没有太多关于它的文档。
理想情况下,我希望在AWS上部署所有内容,有一部分文档描述它,但由于CloudFormation模板被禁用,因此无用。
我正在考虑使用Docker来实现它,但我对整个堆栈缺乏了解,并希望了解以下内容:
应该在哪里存储数据? hbase
似乎是“数据库”,将它与其余服务器(事件服务器,预测服务器)放在同一台服务器上并不危险吗?
它如何扩展? 我是否需要在负载均衡器后面运行多个PredictionIO实例? 如果是这样,如何实现呢?
什么是好的分布式架构? 为了扩展,我很确定我们需要将EventServer与PredictionServer分开,这样做的好方法是什么?
希望有人能提供帮助。 谢谢。 西里尔
根据PredictionIO网站:
如果您决定将HBase安装到其他位置,则必须编辑PredictionIO-0.10.0-incubating / conf / pio-env.sh并更改PIO_STORAGE_SOURCES_HBASE_HOME变量以指向您自己的HBase安装。
也在该网页中提到
对于生产部署,请运行完全分布式HBase配置。
在predition-io谷歌小组有一个很好的答案,他们分解成单独的部分
为了扩展,我很确定我们需要将EventServer与PredictionServer分开,这样做的好方法是什么?
分离摄取图层,处理图层和服务图层通常被认为是一种很好的做法,但您确实需要注意不要过度工程。 这在很大程度上取决于您的具体使用情况,不要忘记您所做的每个分离都会给系统带来更多复杂性(部署,监控等)。