暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

CeresDB & HoraeDB 乘风破浪 感恩相伴| 回顾 2023,展望 2024

Apache HoraeDB 2024-01-16
566


点击上方"蓝字"
关注我们吧!


不经意间就踏入了 2024 年,感觉真是刹那间啊!在新年的第一个月,我们来聊聊过去一年 CeresDB & HoraeDB 都做了些什么以及 2024 年社区计划在哪些方向继续加油!

首先,在技术层面,2023 年 CeresDB & HoraeDB 一共发布了 8 个版本,在高基数场景中查询和写入方面做了比较多的优化,还实现了分布式集群方案。

其次,在社区层面,32 位开发者一起折腾,其中两位小伙伴晋升成了committer,当然社区也获得了阶段性的成果。

然后,再说说那个大新闻——2023 年 12 月 11 日,CeresDB 将内核以新品牌 HoraeDB 加入了 Apache 孵化器,为什么会加入 ASF ?中间的一些小故事也跟大家在这里扯扯。

最后,展望 2024,希望 HoraeDB 2024 年在云原生和经典时序场景有所突破。同时感恩广大社区用户及开发者们,让我们今年依旧相伴、一起乘风破浪,共同见证 HoraeDB 的成长。



回顾 2023




 版本发布


在 2023 年,CeresDB 累计发布了 8 个版本,主要聚焦在分布式集群架构、高基数查询写入方面。
  • 1.0.0(2023.4.1):实现了计算与存储分离架构,并支持分布式集群部署,支持 Prometheus remote storage ,同时发布了多语言 SDK。

  • 1.1.0(2023.4.30):提供了对 InfluxQL 的支持;支持根据写入请求自动添加列。

  • 1.2.0(2023.5.8):引进了 proxy 模块;引入了 ShardLock 机制,确保在 failover 过程中数据完整性。

  • 1.2.2(2023.5.31):对小批量写入进行了合并处理,极大提升了小规模请求的写入吞吐能力;支持了 tokio console。

  • 1.2.4(2023.7.12):实现了基于 Kafka 的 WAL;引入 Parquet page filter 功能,以提升查询性能。

  • 1.2.5(2023.8.8):开始支持使用 OceanBase 作为底层存储;并在查询过程中优化了 SST 文件的并发拉取;引入了查询去重逻辑以减轻资源负担。

  • 1.2.6(2023.9.5):优化了查询计划,移除了冗余节点;并提供了对 PostgreSQL 的支持;通过 WAL 列式编码技术进一步压缩了 WAL 文件的大小。

  • 1.2.7(2023.10.10):新增了对 random 分区的支持,加入了分布式查询计划,并对查询性能进行了进一步的优化。




 线下活动


2023.3.24 社区核心成员 jiacai2050 参加 ITPUB 线上直播,分享《开源时序数据库 CeresDB 介绍》


2023.6.18 社区核心成员 chunshao90 参加 Rust China Conf 2023,分享了 《CeresDB Rust 生产实践》。


2023.9.19 社区 PD 奕姗 参加小程序云南区客户日,线下与开发者交流。


2023.10.28 社区 PD 奕姗 参加中国开源年会(COSCon'23)线下与开发者交流。


2023.9.7-9.9 社区核心成员 chunshao90 参加上海外滩大会,线下与开发者交流。


2023.10.31-11.2 社区核心成员 jiacai2050 参加 2023 云栖大会,分享《时序数据库的设计与挑战》。


2023.12.18  社区核心成员 Rachelint 参与2023开放原子开发者大会,分享 《HoraeDB 技术揭秘》。



 Apache Incubator


在 2023 年 6 月,距离开源一周年之际,社区的 maintainer 聚在一起讨论如何构建更广泛的开发者关系、良性的开发者社区。在一次轻松的交谈中,大家分享了自己的看法:
  • 确保用户文档质量高,易于理解。
  • 提供一个简单的快速开始指南。
  • ...

讨论中有一个非常尖锐的观点——“项目是不是持久的,会不会突然没了”。我们突然认识到,基于自己的经验选择开源项目时,一个关键因素是项目的中立性——项目是否会持续地维护和更新,社区是否会响应和处理问题,以及项目是否可能会突然终止开发。

为了解决这些关于项目中立性的顾虑,团队决定加入一个更广泛的开源社区,以此来证明 HoraeDB 社区的长期稳定性。

因此项目成员在经过 4 个月努力,终于在 2023 年 12 月 11 日,经过社区投票,CeresDB 将内核以新品牌 HoraeDB 加入了 Apache 孵化器,我们终于能证明 HoraeDB 中立性及对未来发展的决心。

最后说下 logo 含义:

“一生二 二生三 三生万物”,左侧图形用三色交互,融入科技元素,代表万物互联。H 融入沙漏设计,体现时间,逝者如斯夫,不舍昼夜,奔流不息的数据在 HoraeDB 里更能释放它们的价值。”



 贡献者


2023 年底,HoraeDB 社区共有 32 位贡献者,有两位贡献者(GitHubID:dust1、zouxiang1993)晋升为 committer。

dust1 从 CeresDB 开源以来,持续参与 CeresDB 开发,已经提交 12 个 commit,开发了多个功能需求。

zouxiang1993 从 2023 年 3 月开始使用 CeresDB,在使用过程中帮助 CeresDB 进行了非常多的写入性能测试及调优。另外提交了 12 个 commit,完成了多个包含写入性能优化在内的需求。



 荣誉


CeresDB 社区获得了开放原子基金会“2023年度快速成长开源项目”,该奖项也是对整个项目团队过去一年工作的认可。




展望 2024



2024 年已经到来,经过各位 maintainer 的讨论,期望在新的一年中 HoraeDB 能在云原生、低基数场景有所突破,并且继续朝着当初的目标--“能同时较好支持传统时间序列工作负载(timeseries workload)与分析型工作负载(analytic workload),并且能拥有一个现代的云原生分布式技术架构,支持从简单的单节点到庞大分布式集群等各种部署场景”努力。

欢迎有兴趣的同学可以在 github 上跟我们讨论,地址:https://github.com/apache/incubator-horaedb/issues/1411


 集群分布式

  • Procedure 模块优化,针对不同的流程,完善重试和回滚操作。

  • 基于真实负载的负载均衡策略

    • 实现动态负载信息收集,horaedb 测试实时上传负载信息

    • 结合先进的调度算法,根据实际负载情况均衡负载分配

  • 增加混沌测试以验证系统的稳健性




 查询优化

  • 通过支持算子下推来优化 PromQL,降低数据检索成本

  • 添加SST级别的 sorted key,提高查询时的数据获取效率

  • 支持预聚合和预降精度



 存储优化

  • 通过增强存储格式来提高高基数和低基数的查询性能

    • 引入倒排索引

    • 以时间线的方式组织数据

    • 实现列存 MemTable

  • Compaction offload

    • 将 Compaction 任务卸载到专用节点或服务,以尽量减少对实时查询节点的影响。

  • 引入 OpenDAL 作为访问各种存储介质的接口



 易用性

  • 引入 horaecontrol 集群命令行工具,支持自动化部署、监控集成、故障诊断等功能



 社区运营

  • 内容:将持续在多样化、系统化的内容进行探索,旨在打造一个专业的技术社区。

  • 活动:积极参与各大盛会、举办线下 meetup,线上技术直播等,为社区成员创建一个自己的根据地。

  • 开源共建计划:基于HoraeDB 开源 Roadmap 发布具体任务到社区,共同推动 HoraeDB 的成长


展望未来,我们将持续保持开放、透明和合作的原则,积极参与开源项目的建设与推广。我们深信,在大家的共同努力下,将会有更多的创新和突破,为社会带来更多的价值。让我们携手并肩,为开源社区的繁荣与发展贡献自己的力量。我们期待大家的加入,我们愿意接受任何鼓励/建议/指正/启发与认可~





附录


  • GitHub 仓库:https://github.com/apache/incubator-horaedb
  • 官网:https://horaedb.apache.org
  • 小蜜:公众号消息框输入【小蜜】,加小蜜微信

最后修改时间:2024-01-19 18:48:11
文章转载自Apache HoraeDB,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论