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

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

OceanBase 2022-04-29
1875

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 的建设中来,一起推动木兰开源社区发展,一起加速中文自主开源社区的建设。


文章转载自OceanBase,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论