将 Apache Zeppelin notebook 集成到 Web 应用程序中
Posted
技术标签:
【中文标题】将 Apache Zeppelin notebook 集成到 Web 应用程序中【英文标题】:Integrating Apache Zeppelin notebook into a web application 【发布时间】:2017-01-27 05:37:19 【问题描述】:我想将 Apache Zeppelin 笔记本集成到另一个已与 Apache Spark 集成的 Web 应用程序中。
这样做的最佳方法是什么?我正在考虑两种可能性:
使用 Zeppeling REST API 自己渲染笔记本和段落:Zeppelin 提供了一个用于与笔记本和段落交互的 REST API。这很棒,但我觉得在构建自己的 UI 以呈现笔记本和段落时,我必须从 Zeppelin 复制很多前端。 渲染一个显示 Zeppelin 笔记本的 iframe,在 Spark 级别上集成:这会重新使用 Zeppelin 的笔记本渲染,但代价是 iframe。我希望我的意图很明确。如果有一种渲染 Zeppelin 笔记本的简单方法,我更喜欢第一个选项。
【问题讨论】:
【参考方案1】:当前的 Zeppelin 设计不允许轻松集成到其他系统中,因此最好的方法可能是将 iframe 渲染到笔记本上。
或者,https://github.com/cloudera/livy 可以用作 Spark 的 REST API,并且可以在顶部创建笔记本接口(可能从 Zeppelin 分叉)。
【讨论】:
【参考方案2】:您可以创建 iframe 或类似的,您将通过传递适当的参数来获得所需的组件
https://zeppelin.apache.org/docs/0.8.0/usage/other_features/publishing_paragraphs.html
:/#/notebook/2B3QSZTKR/paragraph/...?asIframe" >
【讨论】:
以上是关于将 Apache Zeppelin notebook 集成到 Web 应用程序中的主要内容,如果未能解决你的问题,请参考以下文章
从 Apache Zeppelin 对 AWS Athena 运行时,SQL 查询将永远运行
将 d3.js 与 Apache Zeppelin 一起使用