更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【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 了解更多

开发调试更便捷!火山引擎 DataLeap 提供 Notebook 交互式开发体验的更多相关文章

  1. 如何又快又好实现 Catalog 系统搜索能力?火山引擎 DataLeap 这样做

      摘要 DataLeap 是火山引擎数智平台 VeDI 旗下的大数据研发治理套件产品,帮助用户快速完成数据集成.开发.运维.治理.资产.安全等全套数据中台建设,降低工作成本和数据维护成本.挖掘数据价 ...

  2. 火山引擎 DataLeap:3 个关键步骤,复制字节跳动一站式数据治理经验

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 DataLeap 是火山引擎数智平台 VeDI 旗下的大数据研发治理套件产品,帮助用户快速完成数据集成.开发.运维.治理. ...

  3. 火山引擎 DataLeap:揭秘字节跳动数据血缘架构演进之路

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 DataLeap 是火山引擎数智平台 VeDI 旗下的大数据研发治理套件产品,帮助用户快速完成数据集成.开发.运维 ...

  4. 火山引擎 DataLeap 的 Data Catalog 系统公有云实践

      Data Catalog 通过汇总技术和业务元数据,解决大数据生产者组织梳理数据.数据消费者找数和理解数的业务场景.本篇内容源自于火山引擎大数据研发治理套件 DataLeap 中的 Data Ca ...

  5. 火山引擎DataLeap数据调度实例的 DAG 优化方案

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 实例 DAG 介绍 DataLeap 是火山引擎自研的一站式大数据中台解决方案,集数据集成.开发.运维.治理.资产管理能力 ...

  6. 火山引擎 DataLeap:一家企业,数据体系要怎么搭建?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 导读:经过十多年的发展,数据治理在传统行业以及新兴互联网公司都已经产生落地实践.字节跳动也在探索一种分布式的数据治 ...

  7. 在cocos code ide的基础上构建自己的lua开发调试环境

    对于一种语言,其所谓开发调试环境, 大体有以下两方面的内容: 1.开发, 即代码编写, 主要是代码提示.补齐, 更高级一点的如变量名颜色等. 2.调试, 主要是运行状态下断点.查看变量.堆栈等. 现在 ...

  8. VS Code开发调试.NET Core 2.0

    VS Code开发调试.NET Core 2.0 使用VS Code 从零开始开发调试.NET Core 2.0.无需安装VS 2017 15.3+即可开发调试.NET Core 2.0应用. VS ...

  9. 使用VS Code从零开始开发调试.NET 5

    使用VS Code 从零开始开发调试.NET 5.无需安装VS 2019即可开发调试.NET 5应用. VS Code 全称是 Visual Studio Code,Visual Studio Cod ...

  10. 使用 VSCode 开发调试 STM32 单片机尝试

    使用 VSCode 开发调试 STM32 单片机尝试 本文记录基于 Windows + DAP-Link 开发 STM32F103C8T6 的实践过程,其他操作系统或芯片应该也只是大同小异的问题. 注 ...

随机推荐

  1. 聊聊RNN与seq2seq

    seq2seq模型也称为Encoder-Decoder模型.顾名思义,这个模型有两个模块--Encoder(编码器)和Decoder(解码器).编码器对输入数据进行编码,解码器对被编码的数据进行解码. ...

  2. 22. 从零用Rust编写正反向代理,一个数据包的神奇HTTP历险记!

    wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,内网穿透,后续将实现websocket代理等,会将实现 ...

  3. 【Unity】 ScriptableObject ——生成多个ScriptableObject作为子对象,可以点击展开并显示二级菜单

    官方是这么介绍ScriptabelObject的: "ScriptableObject 是一个可独立于类实例来保存大量数据的数据容器.ScriptableObject 的一个主要用例是通过避 ...

  4. 记一次线上问题引发的对 Mysql 锁机制分析

    背景 最近双十一开门红期间组内出现了一次因 Mysql 死锁导致的线上问题,当时从监控可以看到数据库活跃连接数飙升,导致应用层数据库连接池被打满,后续所有请求都因获取不到连接而失败 整体业务代码精简逻 ...

  5. [NewStarCTF WEEK5] pwn-planet 详解

    这道题目更多是考pwner的逆向功底(虽然程序逻辑也不是非常复杂=_=) 老规矩,先checksec查看程序 保护全开 看一下main函数 __int64 __fastcall main(int a1 ...

  6. [ABC262E] Red and Blue Graph

    Problem Statement You are given a simple undirected graph with $N$ vertices and $M$ edges. The verti ...

  7. 深入 K8s 网络原理(二)- Service iptables 模式分析

    目录 1. 概述 2. 准备 Service 和 Pods 资源 3. K8s 里 Service 的实现原理 3.1 kube-proxy 组件 3.2 iptables 简介 3.3 iptabl ...

  8. pinia状态管理初识

    一款官方推荐的,代替vuex的,新的状态管理工具. 官方网: https://pinia.vuejs.org/zh/introduction.html 主要区别: 去除了modules的概念,每个st ...

  9. Salesforce LWC学习(四十七) 标准页面更新以后自定义页面如何捕捉?

    本篇参考: https://developer.salesforce.com/docs/atlas.en-us.platform_events.meta/platform_events/platfor ...

  10. 关于eclipse中找不到recyclerview的问题

    在eclipse中直接引入v7包之后,还是找不到recyclerview的问题,我们可以通过 sdk\extras\android\support\v7\recyclerview\libs这个目录找到 ...