IoTDB Committer+Ratis PMC Member:“两全其美”的秘诀是?

IoTDB & Ratis 双向深耕!

还记得一年前我们采访过拥有 IoTDB 核心研发+ Ratis Committer “双重身份”的社区成员宋子阳吗?(点此阅读)

我们高兴地发现,一年后,他在两个项目都更进一步,已成为 Apache IoTDB Committer + Ratis PMC Member!

时隔一年的追踪采访,再来了解一下这位始终坚持、积极贡献的社区优秀同学的体会:

0fee9bdc4b217ae502477f1df3c42aa9.jpeg

宋子阳

大家好,我是宋子阳,目前是清华大学软件学院研究生二年级学生,主要感兴趣的方向是分布式系统和共识协议。我热爱开源社区,从 2021 年底就开始参与开源社区的贡献,到现在已经 3 年了。

关于 Apache IoTDB

还是先来简单说说你和 IoTDB 的缘分吧?

在本科阶段,我就对数据库、操作系统等基础软件产生了浓厚的兴趣。在大三保研时,我坚定了投身于数据库内核研发的理想,也借保研的机会了解到清华大学软件学院和 Apache IoTDB 工业时序数据库。在这个过程中我被 IoTDB 的技术领先性、性能优势和广泛的应用场景深深吸引,迫切地想成为其中的一份子,于是就加入到了 IoTDB 的发展迭代里来。

我在 Apache IoTDB 中主要负责高可用共识模块。当前的 Apache IoTDB 的分布式版本当中支持了三种不同的共识协议算法,其中囊括了 Raft 协议,不仅能够提供强一致性保障,同时可以保障集群内部元数据和时序数据的高可用性。在精心的设计和持续的优化下,IoTDB 在保证数据架构的高可用、高可靠的同时,以优越的吞吐性能和较低的时延损失获得了数据的强一致性

距离上次的采访也经过一年多了,说说这段时间里你在 IoTDB 的新建树和新收获吧?

在这段时间里,我开始逐渐跳出 Ratis 甚至是共识协议的范畴,开始以一种更高的、更全面、更系统的角度参与到 IoTDB 的贡献中。去年年初我参与到了 Ratis 和可观测性的集成中,感受到了可观测性对于系统内核的深远帮助。去年年末我参与到了 Region 迁移的设计,在保持功能性和稳定性的条件下继续打磨共识协议的 snapshot 传输能力。今年开始我参与到了负载均衡模块的设计。这些工作不但让我更加了解 IoTDB,也让我在一个大系统的视角里持续优化贡献共识协议,完成了 IoTDB-Ratis 社区的“飞轮效应”提升。万事开头难,但随着努力再努力,进步也就越来越快了。

是什么让你能一直坚持参与 Apache IoTDB 项目,最终成为 Committer 呢?

主要有三个原因:

社区成员们非常友好,无论是新手还是有经验的开发者,大家都乐于分享知识和经验,互相帮助。这种包容和支持的氛围促使我愿意长期投身于项目中。

同时,Apache IoTDB 项目为我提供了一个挑战自我、实现技术突破的平台。通过解决实际问题、参与复杂功能的开发,我不仅提升了自己的技术能力,还积累了宝贵的实践经验。

最后是责任感。积极参与项目的开发和维护工作,确保项目的质量和稳定性,开发出能用、好用、管用的软件是我们清华软院学子的追求。

之前采访时,你还是 Ratis Committer,现在也已经是 PMC Member 了,是如何完成的这一转变呢?

从 Committer 向 PMC Member 的转变,基于的是我们不断向 Ratis 贡献的 Patches,也体现了 Ratis 社区对我们的信任和支持。这段时间里,我主导了 Ratis 社区的部分决策,包括发版、Tickets、公告,Ratis 社区也为支持我们做了大量的工作,包括为我们的发版专门加班加点赶了许多PR。

在未来,两个社区会继续加深合作,我们会不断把我们在 IoT 领域的工作和优化点贡献给 Ratis,也让 Ratis 变成一个更加适合处理 IoT 领域数据的 Raft 共识协议。

关于开源社区

你觉得开源社区对 Apache IoTDB 的“加成”是?

开源社区通过广泛的传播和推广,让更多的潜在用户和贡献者了解到 Apache IoTDB。开放的贡献机制为全球开发者和用户提供了平等的参与机会,他们可以提交代码、撰写文档、报告问题和提出改进建议。社区成员因对技术和创新的共同追求而聚集,形成了一个协作网络,共同致力于优化和完善 IoTDB。通过快速响应用户反馈、修复问题、开发新功能和分享知识,开源社区不断推动 IoTDB 项目前进,使其成为一个更加优秀的时序数据库系统。

有没有给想要参与 Apache IoTDB 开源社区贡献的小伙伴一点小建议?

欢迎加入 Apache IoTDB 社区!作为新手,不要害怕提问,大家都是很耐心的人,愿意帮助你解决疑惑。社区提倡知识共享和合作,你的问题和想法都是宝贵的。可以从一些简单的 issue 开始,比如修复小 bug 或完善文档,这不仅能让你快速上手项目,还能逐步积累经验和信心。通过这些初步的贡献,你将熟悉项目结构和开发流程,为后续参与更复杂的任务打下基础。期待你的积极参与,让我们一起把 IoTDB 变得更好!

成为 Committer 的感言!

成为 Apache IoTDB 的 committer 是一段令人难忘的旅程。我深感荣幸,感谢社区给予的信任和支持。回顾这段历程,社区温暖的氛围、强烈的责任感以及对卓越的追求是我坚持不懈的动力源泉。每一次解决问题、每一次代码提交,都让我感受到技术进步带来的成就感和满足感。我见证了项目的成长,也从中收获了宝贵的经验和友谊。未来我会继续致力于 IoTDB 项目的高可用共识模块领域,在自己擅长的方面提供力量,为开源铸就独特而辉煌的下一篇章!

28751e43d0edaa624d1f142b8a462126.gif

e0613e05498a06f99fbc4bfe1e9bd4e9.jpeg

e7eee179a3304a173336e4bef67bc8c0.jpeg

e70a0e5cb0a9d43bc4ee46fb28a5d750.jpeg

ba72a63b3c0d0f4f681c83669471ef4d.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/755119.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Firefox 编译指南2024 Windows10- 定制化您的Firefox(四)

1. 引言 定制化您的Firefox浏览器是一个充满乐趣且富有成就感的过程。在2024年,Mozilla进一步增强了Firefox的灵活性和可定制性,使得开发者和高级用户能够更深入地改造和优化浏览器以满足个人需求。从界面的微调到功能的增强,甚至是核心代码…

vscode 生成项目目录结构 directory-tree 实用教程

1. 安装插件 directory-tree 有中文介绍,极其友好! 2. 用 vscode 打开目标项目 3. 快捷键 Ctrl Shift p,输入 Directory Tree 后回车 会在 README.md 文件的底部生成项目目录(若项目中没有 README.md 文件,则会自动创…

casefold()方法——所有大写字符转换为小写

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 语法参考 casefold()方法是Python3.3版本之后引入的,其效果和lower()方法非常相似,都可以转换字符串中所有大写字符为小写。…

windows MSVC编译安装libcurl

$ git clone https://github.com/curl/curl.git $ cd curl/winbuild依照curl/winbuild/README.md的指示, 启动visual studio的命令行工具,这里要注意别选错. 如果要编译出x64版本的libcurl,就用x64的命令行工具;如果要编译出x86…

怎么修改钻孔表的大小?

导入 在Cadence中最后要生成Gerber文件交由板厂制版时,其中有个提取钻孔表的过程。以往的过程并没有对钻孔表要求,今天却要修改钻孔表的大小了,如何做呢?这是一个非常罕见的操作,特此记录。 原理 1、先来复习一下如何…

使用AI的100种方法#翻译神器N3

Text "100 ways to" and "use AI" in the poster center .A cozy desk setup with an open notebook featuring notes and drawings, a cup of coffee, a white pen, and dried flowers. Warm, earthy tones create a calming, aesthetic vibe. 第 3 种可能…

量产工具一一显示系统(一)

目录 前言 一、项目介绍和应用 1.简单易用 2.软件可配置、易扩展 3.纯 C 语言编程 4.类似界面应用 二、项目总体框架 三、显示系统 1.显示系统数据结构抽象 (1)common.h (2)disp_manager.h 2.Framebuffer编程 &#x…

iOS shouldRecognizeSimultaneouslyWithGestureRecognizer 调用机制探索

shouldRecognizeSimultaneouslyWithGestureRecognizer 经常会看到,但是一直没有弄清楚其中的原理和运行机制,今天专门研究下 其运行规律 我们准备三个视图,如下,红色的是绿色视图的父视图,绿色视图 是蓝色视图的父视图…

ROS2使用Python创建服务提供者、消费者

1.创建服务提供者 ros2 pkg create example_service_rclpy --build-type ament_python --dependencies rclpy example_interfaces --node-name service_server_02 service_server_02.py 代码 #!/usr/bin/env python3 import rclpy from rclpy.node import Node # 导入接口 …

.NET使用CsvHelper快速读取和写入CSV文件

前言 在日常开发中使用CSV文件进行数据导入和导出、数据交换是非常常见的需求,今天我们来讲讲在.NET中如何使用CsvHelper这个开源库快速实现CSV文件读取和写入。 CsvHelper类库介绍 CsvHelper是一个.NET开源、快速、灵活、高度可配置、易于使用的用于读取和写入C…

国产操作系统上netstat命令详解 _ 统信 _ 麒麟 _ 中科方德

原文链接:国产操作系统上netstat命令详解 | 统信 | 麒麟 | 中科方德 Hello,大家好啊!今天给大家带来一篇在国产操作系统上使用netstat命令的详解文章。netstat是网络统计(network statistics)的缩写,它是一…

音频分离人声和伴奏可以实现吗?手机人声分离工具10款无偿分享!

随着科技的飞速发展,音频处理技术已经取得了显著的进步,其中音频分离人声和伴奏已成为现实。这一技术不仅为音乐制作人和音频工程师提供了便利,更为广大音乐爱好者提供了无限的创作可能性。本文将为大家分享10款手机人声分离工具,…

python查找支撑数 青少年编程电子学会python编程等级考试三级真题解析2022年3月

目录 python查找支撑数 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序代码 四、程序说明 五、运行结果 六、考点分析 七、 推荐资料 1、蓝桥杯比赛 2、考级资料 3、其它资料 python查找支撑数 2022年3月 python编程等级考试级编程题 一、题目要求…

Windows定时任务执行脚本

场景:由于网络波动原因导致云数据库没连接上,从而导致某个流程引擎链接不上数据库从而导致该流程引擎服务挂了,网络恢复后 数据库链接正常,但是该引擎服务还是中止状态。 解决方案:在Windows中新建一个定时任务&#…

读AI新生:破解人机共存密码笔记15辅助博弈

1. 辅助博弈 1.1. assistance game 1.2. 逆强化学习如今已经是构建有效的人工智能系统的重要工具,但它做了一些简化的假设 1.2.1. 机器人一旦通过观察人类学会了奖励函数,它就会采用奖励函数,这样它就可以执行相同的任务 1.2.1.1. 解决这…

Stablediffusion SD最好用的图片放大方法 无损4K,8K放大 TILED

Tiled Diffusion Tiled VAE ControlNet Tile模型 只有图生图才能使用Tiled放大倍数。文生图没有放大倍数选项但是可以使用覆盖图像尺寸直接更改尺寸。(文生图不容易控制,不如图生图) 【采用接力的方法进行放大:先文生图高清修复…

Docker镜像拉去不了解决方案

原理&工具 使用海外的服务器拉去镜像,压缩为tar包,传输到本地在本地运行 服务器:这里我使用的是AWS的服务器,新用户注册免费使用1年(流量超了就不免费了,一般用不完,还有使用 Cloudflare …

【AI提升】AI利器Tool Call/Function Call(一):langchain+ollama+llama3/qwen2

1、使用AI的一个常用场景就是,接收人类的语言,识别人类的意图,最终进行相关的业务处理,这就是设计Tool Call / Function Call的初衷。 2、现在一般都说Tool Call,以前常叫Function Call,不要纠结。 一、安…

Unable to get expected results using BM25 or any search functions in Weaviate

题意:使用 Weaviate 中的 BM25 或任何搜索函数都无法获得预期结果 问题背景: I have created a collection in Weaviate, and ingested some documents into the Weaviate database using LlamaIndex. When I used the default search, I found that it…

【管理咨询宝藏137】RB大型卡车集团供应链体系优化设计方案中期汇报

本报告首发于公号“管理咨询宝藏”,如需阅读完整版报告内容,请查阅公号“管理咨询宝藏”。 【管理咨询宝藏137】RB大型卡车集团供应链体系优化设计方案中期汇报 【格式】PDF版本 【关键词】罗兰贝格、供应链管理、运营提升 【核心观点】 - 甲方采取销售…