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

OBClient:写在木兰开源社区孵化的 321 天

OBClient 源自企业级原生分布式数据库 OceanBase 社区版,作为一款终端访问工具,致力于为用户提供简单、快速易用的创建和管理 OceanBase 数据库的工具,提供更好的使用体验。

2021 年 6 月,OBClient 正式进入木兰开源社区进行孵化,在木兰开源社区开源导师及 TOC 成员的指导下,基于规范的治理运营规则和开源治理标准,依托木兰社区开放和完善的开源社区生态环境,OBClient 项目在过去一年进入了快速的发展阶段。

图片
OBClient 要解决什么问题?

OBClient 是一款与 OceanBase 数据库进行交互的客户端工具,借助 OBClient 查看和修改数据库记录。在 OBClient中,可以运行 OBClient 命令和 SQL 语句。OBClient 支持 SSL 加密数据安全传输,支持存储过程、匿名块等复杂对象的创建和执行,支持批量 SQL 的执行、支持 Windows / ARM 等平台。

OBClient 运行时需要指定 OceanBase 租户的连接信息。连接上 OceanBase 数据库后,在 OBClient 里,可以运行一些 OBClient 命令(包含常用的 MySQL 命令)、SQL 语句、PL 语句来执行下面这些任务:

计算、存储和打印查询结果
创建数据库对象、检查和修改对象定义
开发和运行批处理脚本
执行数据库管理,修改参数等

图片
过去的 321 天,OBClient 项目进展如何?

在社区开发者的支持下,OBClient 在过去的 10 个月里持续优化体验并经历了五次重要迭代。

2021 年 4 月,OceanBase 数据的访问能力,优化处理 OceanBase 数据库交互协议,完成数据库的登录验证、SQL 执行和结果处理。

2021 年 6 月,OceanBase 存储过程及匿名块能力的支持,支持存储过程、自定义函数、触发器等等对象的创建和执行。

2021 年 8 月,多平台客户端支持,包括支持 ARM 平台,支持 Windows 环境。

2021 年 10 月:支持 BaBa-SSL,支持 SSL 的打包,不依赖机器的 SSL 库完成加密连接能力的支持。

OceanBase-2.0 协议和 OceanBase 全链路诊断能力正在快速迭代中,下一个版本将会支持全链路 Trace 信息定义和处理,规范化链路性能、故障诊断等,重点解决执行异常难排查、难定位的痛点。

未来我们将持续迭代,加强富客户端能力,重点打造路由转发能力,将 OBProxy 能力集成在 OBClient 进程内,帮助用户在网络不隔离的场景下直连 OceanBase Server 集群,并支持自动路由转发处理所有分布式请求。

图片
开发者参与度如何?

在木兰社区的指导下,目前 OBClient 托管在 Gitee 和 GitHub 平台上,便于开发者更方便快捷地参与。

Gitee 项目入口:https://gitee.com/oceanbase/obclient

GitHub 项目入口:https://github.com/oceanbase/obclient

为了帮助开发者更快地融入开源项目,我们配备了易于上手的学习文档,并设计入门学习的路径,提供实战训练的平台,便于开发者快速提出 PR / issue、参与 Bug 修复及重要功能实现。同时,我们为开发者提供了Contributor – Committer - PMC 的发展路径,助力对开源饶有热情的用户和项目一起成长,逐步成为社区项目的贡献者。

OBClient 作为一个开源、开放的社区项目,面向所有对开源有热情,对数据库感兴趣的人参与社区建设,共同为社区组织制定多样化、清晰的准则来规范和约束社区维护者和参与者的行为,帮助不同背景的参与者加入社区建设,保证社区治理的公平公正公开。

图片

加入木兰开源社区近一年的时间,OBClient 在木兰开源社区的大平台上、以更加中立开放的身份去推动开源数据库的技术和产品的发展。相信汇聚了木兰社区开发者的智慧,吸引了开发者的广泛关注与使用的 OBClient 会更加健康的发展。希望更多开发者能一同参与到 OBClient 的建设中来,一起推动木兰开源社区发展,一起加速中文自主开源社区的建设。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论