导读:

今年 5 月 6 日,腾讯·腾源会社区联合 OpenMLDB 等在内的 80 余家开源社区、国内外开源基金会等,共同发起「开源摘星计划」。开展 3 月以来,我们累计为近百位优秀摘星贡献者,送出激励大礼包 300 余份;同时为 700 位的开源爱好者搭建了共同的交流乐园,帮助很多人完成了从开源萌新到「过来人」的成长、蜕变。

今天,「开源摘星计划」继续「001号」任务探索,船长登陆,希望能和 OpenMLDB 星挖掘新一批的优秀摘星者,共同将 OpenMLDB 星建设得更好🌍以下是船长发来的前线信号……

Hi,各位开源爱好者,大家好!

我是「开源摘星号」飞船船长小源

很高兴今日降落 OpenMLDB 星

执行「开源星球」001 号任务

在 OpenMLDB 星上

我投递了无数的能量块

幸运的你只要从今日开始收集

下面这些特殊能量块

就有机会获得我在 8 月为你准备的登陆礼包

(证书、贡献卡、鹅厂周边、盛典入场券……)

完整参与攻略欢迎查看

OpenMLDB 星「能量块介绍」

OpenMLDB 是一个开源机器学习数据库,提供生产级数据及特征开发全栈 FeatureOps 解决方案。自开源以来,Open以开源的特征数据治理能力、SQL开发能力,提供全栈功能的、低门槛特征数据计算和管理平台,面向闭环解决 AI 工程化落地的数据治理难题,帮助企业做到低成本高效率地解决问题,已经在上百个企业级人工智能场景中得到落地,也得到了众多开发者的关注和支持。

项目仓库: https://github.com/4paradigm/OpenMLDB

能量块 1:基于 OpenMLDB 搭建使用案例

详细说明:OpenMLDB 主要为机器学习提供一个特征平台,同时也提供一个高性能的时序数据库。我们期望社区可以基于 OpenMLDB,贡献更多的使用案例。

难度:50 积分

任务详情:https://github.com/4paradigm/OpenMLDB/issues/2041

能量块 2:为监控模块 Prometheus 的 exporter 添加单元测试用例和覆盖度报告

详细说明:OpenMLDB exporter 模块 (https://github.com/4paradigm/OpenMLDB/tree/main/monitoring) 是 OpenMLDB 连接监控平台 Prometheus 的 exporter,它的角色是作为一个 OpenMLDB 的 client 接入,通过 OpenMLDB Python SDK 做 SQL 语句查询,并将查询结果转化成 prometheus 指标。目前该模块并没有添加单元测试用例,也没有覆盖度报告,你需要为该模块添加上述两项内容。

难度: 50 积分

任务详情https://github.com/4paradigm/OpenMLDB/issues/1970

能量块 3:OpenMLDB 离线增加 WindowColumnPruning 优化开关

详细说明:OpenMLDB 离线目前支持多种性能优化,包括窗口并行优化、窗口倾斜优化、UnsafeRow 内存优化等等。其中窗口并行优化里面还有一种优化,我们称之 为WindowColumnPruning(窗口列剪枝)优化,其原理是一个窗口计算除了新增的列,输入行的所有列都需要参与 Window 函数计算并直接返回到结果行中,如果开启 WindowColumnPruning 则 Window 计算只需要输出新增的列,输入的原始列可以和输出的新增列进行拼接。这个优化具体实现代码已经在窗口并行优化逻辑中实现,本次任务只是需要在 Java/Scala 侧新增开关,可以把是否开启该优化的功能暴露出去。

难度:50 积分

任务详情: https://github.com/4paradigm/OpenMLDB/issues/939

能量块 4:ShowJobs 命令支持对返回结果进行倒序排序

详细说明:OpenMLDB 的“SHOW JOBS”命令可以返回所有的 Job 信息列表,返回的结果是从内部数据库中查询结果,目前的返回结果为乱序。在这个任务中,你需要修改代码,保证“SHOW JOBS”命令返回的结果是倒序排序,也就是以 Job ID 为排序列从大到小排序。

难度:50 积分

任务详情: https://github.com/4paradigm/OpenMLDB/issues/1745

能量块 5:磁盘表 disk table 支持添加/删除索引功能

详细说明:目前磁盘表 disk table 不支持添加或者删除索引功能,需要添加上 AddIndex 和DeleteIndex 功能,以便用户对磁盘表也可以进行索引的添加和删除。

难度:50 积分

任务详情:https://github.com/4paradigm/OpenMLDB/issues/2018

能量块 6:支持聚合函数STDDEV

详细说明:OpenMLDB 尚未支持内置的标准差聚合函数 STDDEV,在这个任务中,你将参照我们的内置聚合函数开发流程,实现一个 STDDEV 的聚合函数。

标准差 STDDEV 定义:https://en.wikipedia.org/wiki/Standard_deviation#Discrete_random_variable

内置聚合函数的开发流程https://openmldb.ai/docs/zh/main/developer/built_in_function_develop_guide.html

难度:50 积分

任务详情:https://github.com/4paradigm/OpenMLDB/issues/2019

能量块 7:扩容后数据库分片迁移工具

详细说明:目前 OpenMLDB 在扩缩容以后,需要执行一系列的命令,来进行手动的数据分片迁移。其过程相当繁琐,并且容易出错。相关操作的文档见:https://openmldb.ai/docs/zh/main/maintain/scale.html 。在本任务中,你将会设计更加友好的独立数据库分片迁移工具,实现一键的手动或者自动化分片迁移。

难度:50 积分

任务详情:https://github.com/4paradigm/OpenMLDB/issues/2038

能量块 8:API Server 支持 Parameterized Queries

详细说明:OpenMLDB 的 apiserver 对 query 的支持有限,仅支持执行命令,返回执行状态,不能获得 query 结果,不支持 parameterized queries。在这个任务中,你将参考 apiserver 其他接口与 client(SQLRouter)的 query API ExecuteSQLParameterized,实现 apiserver 的 parameterized queries 接口,以及查询结果数据的返回。

难度:50 积分

任务详情:https://github.com/4paradigm/OpenMLDB/issues/397

请感兴趣认领以上「能量块」的小伙伴,复制链接打开后,在 Comment 区评论 [WeOpen Star] I would like to help,代表认领任务成功。任务有限,先到先得!

集齐「能量块」能获得什么

报名开源摘星计划

对「开源摘星计划」感兴趣的小伙伴,可以通过以下链接深入了解开源摘星活动~

活动官网:https://cloud.tencent.com/act/pro/weopen-star

活动仓库:https://github.com/weopenprojects/WeOpen-Star

写在最后

如果想进一步了解 OpenMLDB 或者参与社区技术交流,可以通过以下渠道获得相关信息和互动~

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

Email: contact@openmldb.ai

OpenMLDB 微信交流群:

file