想使用 yaml 代替 sql 进行数据分析,想知道还有没有其他更合适的语法类型?

25 天前
 red13

要在正在开发中的数据分析引擎上增加使用 yaml 进行数据分析的能力,以代替 sql , 基于以下原因: 1 、对于多维数据模型的分析,sql 只能在二维表关系结构上进行定义( star schema 不等同于逻辑多维结构),并且进行复杂分析时编写 sql 语句存在大量 group by 和 sum(),降低整体描述性; 2 、在进行 join 多个大数据量表(百亿级)进行查询时性能降低,可能需要根据特定查询进行详细调整,这无法支持业务层面的随机性探索式数据分析; 3 、yaml 语法较为简单,且属于纯描述性语法,可以直接描述业务层面语义,通过解析 yaml 直接调用数据分析引擎底层接口,越过 sql ,能提供功能上更强、效率更高的查询能力; 4 、“yaml 代替 sql”以及类似宣传可以作为后期产品宣传的噱头。

目前暂定使用 yaml 代替 sql ,不知道还有没有比 yaml 更合适(普及度高、纯描述性、语法简单)的语法结构?

1599 次点击
所在节点    程序员
6 条回复
fstab
25 天前
R 语言
levelworm
24 天前
yaml 应该不错,我工作过的几家公司都有这样的框架,最后就是转换成 sql 。如果你有大量的聚合语句,可以考虑建立数仓预先聚合,最后把 yaml 的权限开放给数据分析师,让他们写 yaml ,你来负责优化。
FYFX
24 天前
我想说一下 yaml 并不简单,我已经看过不少写 yaml parser 写到骂娘的了
julyclyde
24 天前
@FYFX 之前听说过 yaml 很多解析错误的问题。当时吓得我直接花几个小时改用 json 了
lcingOnTheCake
23 天前
parser 之后不都是对数据进行处理,sql 和 yaml 性能上能以后啥区别?况且 sql 比 yaml 表达能力强的多
eudore
23 天前
可以随便找一个 sql parser 的 ast node 作为定义,使用 yaml 描述 sql ast 。然后 yaml -> ast -> sql ,在 ast 还能自定义一些行为。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1163536

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX