会议内容

OpenMLDB 社区于 2022 年 5 月 28 日举行了第三期 meetup,会议相关视频及资料如下:

OpenMLDB PMC core member 卢冕,从低成本、高性能的线上线下一致性特征平台开源解决方案切入,为大家介绍 OpenMLDB v0.5.0 新版本以及其性能改进、成本降低、灵活性增加的新特性。

链接:https://pan.baidu.com/s/12Vk0syf-WgqQ1uBAXtTNBw

提取码:open

白鲸开源联合创始人 代立冬,深度解析了 Apache DolphinScheduler 技术原理和最佳实践,带领大家洞见大数据调度系统的最新进展和发展趋势。

链接:https://pan.baidu.com/s/1NezMG1aOPOGgKrDZNaM03Q

提取码:open

白鲸开源高级算法工程师 周捷光,以 DolphinScheduler 遇上 MLOps 为议题,基于两者的碰撞创新展示 DolphinScheduler 在机器学习领域的目前成就以及未来路径。

链接:https://pan.baidu.com/s/1lgd-xc6hJAaMWxnhJHfqQw

提取码:open

OpenMLDB 研发架构师 黄威,带来了 DolphinScheduler OpenMLDB Task 实操演示,引导观众链接特征工程与调度环节,打通端到端的 MLOps 工作流。

链接:https://pan.baidu.com/s/1l6y50JSrLGQfjwws8cRQhw

提取码:open

讨论交流讨论交流

Q1: 如何保证推理时特征与训练时特征一致性? A1: OpenMLDB 保证特征一致性是从特征计算的角度切入的,在整个架构中我们使用了一致性执行计划生成器从内部保证了特征计算的一致性,不再需要人为的校验、干涉,这是 OpenMLDB 非常重要的特性之一。

Q2: 在线特征时如何表达聚合计算? A2: 在线特征和离线特征的聚合计算并没有太多区别。我们都是先定义一个时间窗口,然后在时间窗口上做聚合,把它转化成 SQL 其实就是一个 window 定义,再做一个聚合计算的表达方式。举例子,我定义了一个 window ,它有一个 partition by (其实就是 group by) ,再通过一个 order by 去定义时间窗口的排序,最后在窗口上做一个聚合函数的表达。基本的语法框架是这样的,要深入使用,可以查看我们的语法手册。

Q3: 实时特征计算用的是什么计算引擎?流作业触发其他作业调度这块内容考虑对接 AIFlow 吗? A3: 目前的实时特征计算使用的是社区自研的高性能时序数据库,是专门针对实时特征计算做优化的。下个版本中我们会和 Flink 的整个体系包括流式计算做一个结合,但是如何结合,结合到哪种层次,社区还在内部讨论中,希望帮助开发者更好地解决特征开发的痛点。

Q4: SQL语法扩展有没有什么提高? A4: 在 SQL 语法中,我们做的最重要的两个语法扩展是 last join 语法和 window union 语法。因为我们将 OpenMLDB 定义为特征平台,所以这两个语法都是为了更好表达特征计算的逻辑而扩展的。last join 语法是拼表时候,如果主表的一行匹配到了右表的多行,last join就只会去拼接一条(随机或者按照排序)。window union 语法可以满足跨表的聚合函数表达。这些语法在机器学习中都是比较常用的。除此之外,我们还做了其他一些聚合函数的扩展。现在 OpenMLDB v0.5.0 的版本也能够支持UDF(用户自定义函数)开发,能够帮助大家突破 SQL 表达能力的限制。

OpenMLDB 社区

在此感谢大家对于本次 meetup 的大力支持,如果想进一步跟了解 OpenMLDB 或者参与社区技术交流,可以通过以下渠道获得相关信息和互动。

Github: https://github.com/4paradigm/OpenMLDB

官网https://openmldb.ai/

Email: contact@openmldb.ai

OpenMLDB 微信交流群https://memark.io/wp-content/uploads/2021/12/OpenMLDB-group.png