写点什么

开发调试更便捷!火山引擎 DataLeap 提供 Notebook 交互式开发体验

  • 2023-08-20
    浙江
  • 本文字数:1114 字

    阅读完需:约 4 分钟

开发调试更便捷!火山引擎DataLeap提供Notebook交互式开发体验

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群


Notebook 是一种支持 REPL 模式的开发环境。


所谓「REPL」,即「读取-求值-输出」循环:输入一段代码,立刻得到相应的结果,并继续等待下一次输入。Notebook 通常使得探索性的开发和调试更加便捷,在 Notebook 环境,用户可以交互式地在其中编写你的代码、运行代码、查看输出、可视化数据并查看结果,使用起来非常灵活。


在数据开发领域,Notebook 广泛应用于数据清理和转换、数值模拟、统计建模、数据可视化、构建和训练机器学习模型等方面。


但是显然做数据开发,只有 Notebook 是不够的。目前,火山引擎 DataLeap 数据研发平台提供了任务开发、发布调度、监控运维等一系列能力,并将 Notebook 作为一种任务类型,加入进 DataLeap 数据研发平台,使用户既能拥有 Notebook 交互式的开发体验,又能享受一站式大数据研发治理套件提供的便利。


在火山引擎 DataLeap 数据研发平台,开发过程围绕的核心是任务。用户可以在项目下的任务开发目录创建子目录和任务,像 IDE (集成开发环境)一样通过目录树管理其任务。Notebook 也是一种任务类型,用户可以启动一个独立的任务 Kernel 环境,像开发其他普通任务一样使用 Notebook。


图:火山引擎 DataLeap 数据开发 Notebook 任务界面


基于简化运维成本、降低架构复杂性,以及提高用户体验的考虑,2021 上半年,火山引擎 DataLeap 研发人员对整体架构进行了一次改良。新的架构主要做了以下改进,大致简化为下图


  1. 移除 JupyterHub(https://jupyterhub.readthedocs.io/en/stable/),将 JupyterLab (https://jupyterlab.readthedocs.io/en/stable/getting_started/overview.html)改为多实例无状态常驻服务,并实现对接 火山引擎 DataLeap 的多用户鉴权。

  2. 改造原本落在 JupyterLab 本地的数据存储,包括用户自定义配置、Session 维护和代码文件读写。

  3. Enterprise Gateway(EG)支持持久化 Kernel,将 Kernel 远程环境元信息持久化在远端存储(MySQL)上,使其重启时可以重连,且 JupyterLab 可以知道某个 Kernel 需要通过哪个 EG(https://jupyter-enterprise-gateway.readthedocs.io/en/latest/) 连接。



图:火山引擎 DataLeap 下改进版 Notebook 整体架构


架构升级简化后,整套 Notebook 服务的稳定性获得了极大的提升。由于实现了用户无感知的升级, DataLeap 不仅提升了用户的使用体验,运维、算力、人力等成本也得到了极大地降低。


据了解,Notebook 任务已成为字节跳动内部使用较为高频的任务类型。外部用户可以购买火山引擎 DataLeap,即一站式大数据研发治理套件,开通交互式分析的版本,使用到 DataLeap 的 Notebook 任务。


点击 火山引擎大数据研发治理套件DataLeap 了解更多

发布于: 刚刚阅读数: 3
用户头像

小助手微信号:Bytedance-data 2021-12-29 加入

字节跳动数据平台团队,赋能字节跳动各业务线,对内支持字节绝大多数业务线,对外发布了火山引擎品牌下的数据智能产品,服务行业企业客户。关注微信公众号:字节跳动数据平台(ID:byte-dataplatform)了解更多

评论

发布
暂无评论
开发调试更便捷!火山引擎DataLeap提供Notebook交互式开发体验_大数据_字节跳动数据平台_InfoQ写作社区