SQL Notebooks:一种新的设计理念

2022-06-08 13:59:50 浏览数 (2)

最近读到 Meta (前Facebook)公司发表的一篇文章,是介绍他们自己使用的 SQL Notebooks。在文章里,他们认为应该以 SQL 为核心去设计 Notebook,而不是像 Jupyter 那样以 Python 为核心设计 Notebook。

虽然数据科学家常用的 Jupyter Notebook 很强大,可以完成各种各样的数据分析、挖掘和可视化的工作,但是 Jupyter Notebook 受限于它的设计,比如只能在单机环境下使用、很难与他人分享自己的分析成果,最为致命的是,Jupyter Notebook 无法限制用户访问特定的数据,这就产生了数据安全的问题。

这些问题在像 Hue 一样的 SQL IDE 上却被轻易解决了,例如 Hue 可以将自己用过的 SQL 分享给其他人,可以通过解析 SQL 语句控制使用者的权限。

像我们团队,Hue 和 Jupyter Notebook 是分开使用的,上述所说的问题也在困扰着我们。Meta 公司则是自己开发了一个 SQL Notebook 去将两者的功能合并在一起。

We’ve developed SQL Notebooks, a new tool that combines the power of SQL IDEs and Jupyter Notebooks. It allows SQL-based analytics to be done in a more scalable and secure way than traditional notebooks while still providing features from notebooks and basic SQL editing, such as multiple interdependent cells and Python post-processing.

在文章里,Meta 公司设计巧妙的一点在于:Python 要获取数据,就要依赖于上游 SQL 单元。从而解决了 Jupyter Notebook 的安全性问题。

其它的内容,我觉得就一般般了,并无惊艳之处。最后分享一张 SQL Notebook 的样貌。

参考链接:

  1. https://engineering.fb.com/2022/04/26/developer-tools/sql-notebooks/

0 人点赞