我已经使用zeppelin几个月了。它是内部数据分析的绝佳工具。我正在寻找更多与客户共享报告的功能。我需要向客户发送每周/每月/每季度报告。寻找一种自动化此过程的方法。 如果Databricks Spark Notebook或任何其他工具具有帮助我这样做的功能,请告诉我。
答案 0 :(得分:1)
您可以使用databricks仪表板。获得仪表板后,您可以对仪表板执行HTML导出并将HTML文件共享给公众。
如果您对自动化报告流程感兴趣,可能需要查看databricks REST API:https://docs.databricks.com/api/latest/jobs.html#runs-export。您需要传递笔记本作业的run_id
和所需的views_to_export
(此值应为DASHBOARD
)作为查询参数。请注意,此运行导出仅支持笔记本作业导出,这是精细的仪表板通常从笔记本作业生成。
如果您的databricks HTML仪表板导出成功,您将获得"views"
JSON响应,该响应由键值对对象列表组成,您的HTML字符串将在{{1}下可用键入每个对象。然后,您可以对此HTML字符串执行任何操作,您可以将其直接发送到email / slack以进行自动报告。
为了生成"content"
,您首先需要创建一个笔记本作业,您可以通过databricks UI执行此操作。然后,您可以通过以下任一方式触发笔记本作业来获取run_id
:
我更喜欢使用第二种方法,并通过REST API以编程方式运行作业,因为我在运行作业时总能找到run_id
,这与我必须查看databricks UI的第一种方法不同工作计划运行的时间。无论哪种方式,您必须等待笔记本作业运行完成才能运行笔记本作业导出,以便成功地以HTML格式获取完整的数据库仪表板。
答案 1 :(得分:-1)
您可以尝试以可通过互联网访问的方式托管您的实例吗?