开发调试更便捷!火山引擎 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 了解更多

JetBrains 发布 Rust IDE:RustRover Java 21 / JDK 21 (LTS) GA 中国这么多 Java 开发者,应该诞生出生态级应用开发框架 .NET 8 性能大幅提升,比 .NET 7 遥遥领先 PostgreSQL 16 发布 Rust 团队前成员深感后悔,要求取消挂名,昨日完成移除 前端新轮子 Nue JS,作者称要打造全新的 Web 生态 网易伏羲回应员工“因 BUG 被 HR 威胁”离世 任正非:我们即将进入第四次工业革命、苹果是华为的老师 Vercel 新产品 "v0":根据文本生成 UI 界面代码
{{o.name}}
{{m.name}}

猜你喜欢

转载自my.oschina.net/u/5588928/blog/10099914