OpenMLDB Meetup No.6 回顾 | OpenMLDB+37 手游:一键查收特征计算场景案例及进阶使用攻略
OpenMLDB Meetup No.6 回顾
会议内容
OpenMLDB 社区于 2022 年 9 月 24 日举行了第六期 meetup,会议相关视频及资料如下:
OpenMLDB PMC core member 卢冕,以《开源机器学习数据库 OpenMLDB:线上线下一致的生产级特征平台》为题,为大家展示快速升级、高频迭代的 OpenMLDB,介绍了 OpenMLDB 现版本的亮眼功能以及未来的发展方向。
,时长 39:31
链接:https://pan.baidu.com/s/1z4tUmP7uW1prmBnlUULreg
提取码:open
37 手游 技术主管 彭佳铭 和 高级算法工程师 左伟健,介绍 37 手游 技术团队引入 OpenMLDB 的历程以及 OpenMLDB 在 37 手游 特征计算场景的应用, 具体分享了 OpenMLDB 的试验场景、部署流程、问题解决、最终试验结论与未来展望。
,时长 29:13
上篇链接:https://pan.baidu.com/s/1GQITLUSCcF6dofxp1Hlr5A
提取码:open
下篇链接:https://pan.baidu.com/s/1abSYbS4ENeQ6sW6DSZ-H1Q
提取码:open
OpenMLDB PMC core member 张浩,带来了 OpenMLDB 进阶使用攻略,从技术原理以及使用方式上进行介绍常见问题的排查手段、双机房支持、长窗口优化、以及高可用等技术干货,为 OpenMLDB 的用户提供高级特性讲解和进阶使用方法的指导。
,时长 23:37
链接:https://pan.baidu.com/s/1Ddko3yLFFdNaEGUyAfD19g
提取码:open
讨论交流——37 手游
Q1
37 手游使用的编程语言是 MySQL 吗,还是其他语言呢?
A
我们的编程语言选择和存储介质有比较密切的关系,Mysql 主要应用于业务数据源存储方面,而取数分析更常用的是阿里云的 MC。
Q2
37 手游的技术方案如何选型?
A
技术方案选型会有多个技术栈一起试用。大数据计算这一块,上云之前,我们会使用 自建的 Hive 和 Impala 处理离线数据。上云后,我们在离线计算会使用 MaxCompute,相对实时的板块使用 Hologres 做存储引擎计算。接触 OpenMLDB 后,我们有尝试通过两个技术栈的结合使用,例如特征计算方面,出于缩短开发周期的考虑,我们会优先使用 OpenMLDB 。
讨论交流——OpenMLDB
Q1
OpenMLDB 能存多大数据,如果是大数据怎么读取进行训练?
A
OpenMLDB 分为离线和在线两部分。如果是离线部分,也就是这里针对训练场景,走的是 Spark 这一条路,只要 Spark 机器资源足够就可以满足需求。在线部分如果使用的是内存引擎,那么主要消耗的是内存,而 OpenMLDB 是分布式存储,可以水平扩展,使用多个机器;如果在线部分使用磁盘引擎,就是基于 RocksDB 存储,也可以水平扩展。
Q2
能否介绍一下 SQL 处理实时特征?
A
我们准备了两篇常见特征处理逻辑 SQL 表达的整理文章,可以给大家提供参考。
基于 SQL 的特征开发(上):https://openmldb.ai/docs/zh/main/tutorial/tutorial_sql_1.html
基于 SQL 的特征开发(下):https://openmldb.ai/docs/zh/main/tutorial/tutorial_sql_2.html
Q3
基于 OpenMLDB 构建实施建模有无实践,以及典型的特征穿越用户要处理哪些逻辑?
A
实践在 OpenMLDB 官网和开发文档中找到 usecase 来参考。特征穿越在 OpenMLDB 内部引擎已经完成处理,可以得到天然保证了,只要用户数据的时间戳是正确的,关于时间的处理逻辑写好就能够做正确计算,保证不会出现特征穿越。
Q4
这种 OpenMLDB 能提供过滤器或者拦截器这种轻度 ETL 吗?
A
过滤器或者拦截器的逻辑实现如果能转化成 SQL 的表达方式,就能够实现。如果业务的场景逻辑比较复杂,需要通过 UDF 写一个程序才能实现。如果这位同学感兴趣,可以联系我们做更深度的交流。
Q5
OpenMLDB 支持 Hudi 和 Iceberg 吗,还是强绑定 Spark/Hadoop 引擎?
A
目前离线引擎是和 Spark 绑定,因为有源代码级别的修改,所以不能够做到配适即可使用。离线的数据源目前来自 HDFS,尚未支持 Hudi/Iceberg 的方案,未来如果社区小伙伴有需求,我们会优先考虑。
Q6
模型训练大批量读取或者大批量回刷 OpenMLDB 能否承受?性能如何?
A
模型训练基于我们优化过的 Spark 引擎,如果 Spark 机器资源足够,就没有问题。
Q7
计划什么时候开发 Windows 版本的 SDK 呢?
A
由于一些 C++ 库的移植问题,目前还不提供,目前有 Linux 和 MacOS 版本的。如果大家只是试用的话,可以通过 docker 镜像,试用我们的 SDK。
Q8
数据怎么分区,是按 key 分区的吗?
A
是的,数据是按照 key 进行分区的。不同的索引,对应的 key 可能会不同,所以每个索引可能会有不同的分区。
Q9
后续 OpenMLDB 降低使用门槛和成本有什么规划吗?
A
关于降低使用门槛方面,在下一个版本已经有规划,包括集群的部署,启动,数据恢复等。
使用成本上,目前已经有磁盘表的功能,可以在牺牲部分性能的前提下,降低使用成本。
Q10
是否支持图谱数据?
A
目前不支持,OpenMLDB 主要支持结构化的表格数据。
OpenMLDB 社区
在此感谢大家对于本次 meetup 的大力支持,如果想进一步了解 OpenMLDB 或者参与社区技术交流,可以通过以下渠道获得相关信息和互动。
Github: https://github.com/4paradigm/OpenMLDB
Email: contact@openmldb.ai
OpenMLDB 微信交流群:
评论