什么是 Byzer-lang ? 一门面向大数据和 AI 的开源云原生编程语言

什么是 Byzer ?

Byzer ,又称为 Byzer-lang,一门面向 Data 和 AI 的低代码、云原生的开源编程语言。

Byzer 这一名称源于中国古代神兽“白泽”,其能言语,通万物之情,知鬼神之事。Byzer 语言创始人祝海林曾提到:“我们希望 Byzer 可以像神兽白泽一样,让数据说‘人’话。”

Byzer 是一门结合了声明式编程和命令式编程的混合编程语言,其低代码且类 SQL 的编程逻辑配合内置算法及插件的加持,能帮助数据工作者们高效打通数据链路,完成数据的清洗转换,并快速地进行机器学习相关的训练及预测。

Byzer 希望能够提供一套语言、一个引擎,就能覆盖整个数据链路,同时可以提供各种算法、模型训练等开箱即用的能力。

为什么我们需要开发 Byzer-lang ?

在 ABC (AI、BigData、Cloud Native)蓬勃发展的大数据时代,随着云基础设施、基础软件、算法模型等逐渐完善,低效的跨平台数据运转逐渐成为工程师落地数据平台和完成 AI 工程化的痛点。无论是基础设施的更换,更易用框架层面的升级,还是更优秀研发人才的招聘,都无法有效、高速地提升效率。

我们认为只有在编程语言层面进行革新,才能从根本上提高数据平台落地和 AI 工程化的效率。

  • SQL for AI™️ ,声明式融合命令式语言,SQL-like 语法简单又灵活
  • 云原生设计,充分利用云上算力和便宜的存储
  • 一套语言,一个引擎,覆盖 Data + AI 的能力,开箱即用

Byzer 四大特性降低成本,释放员工生产力

Byzer 旨在帮助用户以低成本和高效率的方式落地数据平台和完成 AI 工程化,释放数据分析师、工程师以及运维人员的生产力。其主要有以下四点特征:

  • 万物皆表(Everything is a table):

Byzer 语言的核心设计是万物皆表(Everything is a table),我们希望用户可以非常容易的将任何实体对象通过 Byzer 来抽象成二维表,从而能够基于表来进行数据处理或模型训练等进一步操作。Byzer 可以通过虚拟表串联数据流,做到多数据源无缝对接,并同时支持模型的批,流,API的一键部署。

  • 类 SQL 语法(SQL-like Language):

在语言设计层面,Byzer 采用了声明式融合命令式语言编程设计,SQL-like 语法简单又灵活。

  • 内置算法和插件(Built-in Algorithms and Plugins):

支持 Python、标准库、使用自定义 UDF(Scala/Java)。内置大量算法和特征工程工具,帮助平民分析师更快上手机器学习。

  • 可定制,简单,强大(Customizable, Simple and Powerful):

Byzer 通过一套语言、一个引擎,就能覆盖整个数据链路,开箱即用。且 Byzer 从 Day1 起就是云原生设计,同时原生分布式引擎(Spark 引擎和可插拔 Ray引擎)的设计,可以让 Byzer 充分实现算力和存储的云端扩展。

Byzer 架构图.png

上图为 Byzer 架构图,我们可以看到 Byzer 作为一个解释型语言,拥有解释器(Interpreter)以及运行时环境 (Runtime),Byzer 的 Interpreter 会对 Byzer 的脚本做词法分析,预处理,解析等,然后生成 Java/Scala/Python/SQL 等代码,最后提交到 Runtime 上进行执行。

Byzer 使用 Github 作为包管理器(Package Manager),有内置 lib 库和第三方 lib 库(lib 库是使用 Byzer 语言编写出的功能模块)。

从上述设计理念实现而来,Byzer 既保留了 SQL 的优势,简洁易懂,还允许用户通过扩展点来进行更多的进阶操作,提供更多可编程能力。

Byzer IDE 支持 —— Byzer Notebook

作为一门语言,需要能够支持编辑器或者 IDE 来方便用户开发和使用, 完成诸如高亮,代码提示,运行等能力。目前比较流行的方式是实现 LSP (language server protocol),这样在编辑器层或者是 IDE 层,可以直接基于 LSP 完成相关功能。比如在代码提示功能的实现上,可以使用内置宏函数 !show 来实现参数自省,通过 code suggestion API 返回给调用方,完成代码的提示功能。

Byzer-lang 目前不仅支持官方 Web 版本 IDE:Byzer Notebook , 也支持用户在 VSCode 中下载插件来启用代码编辑以及 Notebook 的能力,详情可参考 Byzer 官网 中的下载地址。

Byzer Notebook 是基于 Byzer 引擎搭建的网页交互计算(Web IDE)应用平台。Byzer Notebook 同时也是 Byzer-lang 的 dubugger(调试器),通过 Notebook 简单易用的调试功能,省去了初学者安装配置开发环境的门槛。

Byzer Notebook 截图.png

贡献 Byzer 社区

如果 Byzer-Lang 和 Byzer Notebook 对您有帮助,或您有兴趣想要贡献自己的一份力量,Byzer 白泽社区 Byzer Org 非常期待您的加入。

也欢迎大家加入 Byzer Slack 社区 开发讨论组,参与 Byzer 社区的前沿技术话题讨论。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,172评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,346评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,788评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,299评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,409评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,467评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,476评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,262评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,699评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,994评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,167评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,499评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,149评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,387评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,028评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,055评论 2 352

推荐阅读更多精彩内容