Apache Zeppelin是否足够稳定,可用于生产

时间:2017-03-16 02:39:35

标签: apache-spark production amazon-emr apache-zeppelin

我正在使用AWS EMR集群。我一直在尝试使用Spark Drivers和Apache Zeppelin Rest API来运行作业。我和Zeppelin一起经营了几百个临时工作,并没有任何顾虑。有了这个事实,我正在考虑在生产中使用Zeppelin Rest API。将使用Rest API提交作业。

Zeppelin在生产中是否有人遇到过稳定性问题?

3 个答案:

答案 0 :(得分:4)

我在多用户环境(+/- 15个用户)中正在生产zeppelin并且它还没有非常稳定。为了使其更稳定,我在自己的节点上运行zeppelin,而不是在主节点上运行zeppelin。

无论如何,我发现了以下问题:

  • 在0.7.2之前的版本中,Zeppelin创建了大量的僵尸进程,这在大量使用后会导致内存问题。
  • 用户库可能会破坏Zeppelin,这在0.7.0之前的版本中就是这种情况。例如。杰克逊图书馆使Zeppelin无法与火花翻译器进行通信。在0.7.0及更高版本中,此问题已得到缓解。
  • 当有很多用户时,会随机冻结。解决此问题的唯一方法是重新启动服务。 (所有版本)
  • 有时当用户启动他的解释器并且本地存储空为空时,zeppelin不会下载解释器配置中指定的所有库。然后它不会再次下载它们,减轻这种情况的唯一方法是删除解释器的本地存储库的内容。 (所有版本)
  • 有时笔记本电脑上的更改无法保存,导致用户丢失代码。
  • 在版本0.6.0中,spark解释器共享一个上下文,导致用户覆盖彼此的变量。
  • 问题很难调试,日志记录还不是很好。一些错误似乎打破了日志记录,有时在调试模式下运行解释器可以解决问题。

所以,我还没有把它放在生产环境中,人们依赖它。但是对于测试和数据发现,它会没问题。 Zeppelin显然仍处于测试阶段。

也不要在主节点上运行它,但要设置自己的实例并让它远程连接到群集。这使它更加稳定。把它放在一个强壮的节点上并在一夜之间重启。

我遇到的大多数错误已经出现在Jira上,开发人员正在努力使事情变得更好。每次发布时稳定性变得越来越好,我看到每个版本的维护负载都在下降,所以它肯定有潜力。

答案 1 :(得分:1)

我现在使用齐柏林飞艇已经有一年多了。当您刚开始时,它可以使您快速上手,但是它并不是生产用例的理想选择,尤其是对于拥有10个以上用户的情况,它取决于集群资源。这些都是我对齐柏林飞艇的整体关注。

  1. 默认情况下,您一次最多只能运行一项作业, 将需要更改配置以实现这一目标。
  2. 如果要从s3或外部环境加载其他库,则只能在开始时这样做,否则您将拥有 重新启动齐柏林飞艇。
  3. 火花上下文是预先创建的,只有很少的设置可以更改。
  4. 当您的输出很大时,编辑器本身的大小无法调整。

我正在使用 jupyter 处理用例,这在我的初步评估中非常重要。

答案 2 :(得分:0)

截至本回答之时,即2019年2月底,我的回答是:
简单明了。 Zeppelin不断崩溃,挂起并变得无响应,由于尺寸错误,与Jupyter相比执行速度非常慢,以及第三方显示引擎集成方面的诸多限制(尽管为此付出了很多努力),笔记本电脑往往无法卸下。 >

我在一个只有一个用户的规模合理且容量巨大的群集上遇到了这些问题。我永远也不会建议它成为一种生产工具。至少今天不是这样。除非您有管理员可以定期重新启动整个过程并跟踪/修复错误并负责集成,否则您将无法进行任何操作。

我们搬回了Jupyter,从努力稳定齐柏林飞艇数周后的第一天起,一切就顺利进行了。