作者:刘新旺
MySQL DBA,专注于 MySQL 数据库多年,现就职一家本地生活服务类互联网公司,负责数据库相关工作。
本文来源:原创投稿
*爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来
源。
产品概述
-
体验环境
-
体验产品:SQLE
-
软件版本:sqle-ce-1.2111.0-pre2
-
部署环境:CentOS Linux release 7.9.2009 (Core)
-
产品介绍
-
SQLE( https://opensource.actionsky.com/sqle/ )是由上海爱可生信息技术股份有限公司 开发并开源,支持多场景审核,支持标准化上线流程,原生支持 MySQL 审核且数据库类型可扩展的 SQL 审核工具。
-
需求分析
-
产品定位
-
互联网时代,一个 app 可能承载成百上千万用户的使用;其业务规模之大,更新迭代之快,众多业务线日常上线 SQL 之多;DBA 对上线 SQL 的审核和执行工作变得十分繁忙,如何高效的保障SQL语句的高效执行和质量,对于系统的高效运行和长久稳定有着很大的影响。
-
-
用户需求分析
-
核心需求为:开发人员自助、平台初审、DBA 复审、执行上线。
-
-
用户细分
-
主要使用人员:开发人员和 DBA ;开发人员希望便捷、高效、自主可控的上线业务 SQL ;DBA 希望便捷、高效、安全、高质量的审核 SQL 上线。
-
产品分析
-
产品结构图
通过SQLE的产品结构图我们可以看到,SQLE 的界面设计较简洁,工作台可以看到与自己相关的待办工作;首页列表放置核心功能【工单】审核,其它功能收集到平台管理中;【规则】可以考虑收入到【平台管理】中;【审核计划】也可以考虑收入到【平台管理】中,审核的结果可以集成到工单中,方便统一进行处理。
-
产品使用流程图
通过 SQLE 的流程图可以看到,整体流程分为两个两个部分,一个是基础配置,配置好了基础配置以后,就可以执行上线流程了;对于审核不合格的功能依旧可以执行工单,没有起到自动审核的意义,对于ERROR级别的错误可以自动驳回不与上线;进入工单页面后不能很好的发现审核操作按钮(工单进度部分),需要下拉窗口才能发现;可以把审核操作放到审核结果列表后面加一个操作列,体验会更加友好。下图为缩放67%后才能看到下面的审核操作.
-
功能体验分析
(1)创建SQL工单-SQL语句不支持输入联想,建议增加输入联想,提高录入效率
(2)创建SQL工单-SQL语句对于明显语法错误不能及时提示,建议增加语法错误提示,提前发现明显问题
(3)创建SQL工单-SQL语句输入框高度过高,点击审核后不方便查看到结果,建议降低高度增加宽度
(4)创建SQL工单-工单不支持自定义上线时间,同时也不支持定时上线
-
表现层
-
平台整体以白灰色色调为主,配色稳重简约,不同状态以不同颜色显示区别,猜测应该是用的ant design组件库;页面列表和CURD页面不够简洁和清晰,有待优化。
竞品分析
SQLE | Archery | |
---|---|---|
审核 | ✓ | ✓ |
查询 | × | ✓ |
执行 | ✓ | ✓ |
备份 | × | ✓ |
通知 | 钉钉、企业微信、邮件通知 | |
流程 | ✓ | ✓ |
白名单 | 企业版 | |
慢日志审核 | 企业版 | 只有收集展示,暂无审核 |
审核计划 | 支持 MyBatis Scanner | × |
扩展 | 支持插件化 | 支持插件化 |
使用感受
由于时间有限,仅是个人测试体验;SQLE 整体设计不错,符合现在主流平台的各方面特征;主要几个设计点我比较喜欢:
-
DB 类型和实例关联模版这个管理力度很细 -
数据源关联流程,使审批粒度更加细致,管理更加方便 -
SQL 白名单,应对特殊情况,避免业务被规则卡死,同时避免管理人员直接操作数据库;sql 指纹相当于提供了统配功能,更加方便 -
审核计划是个好东西;对于想集成 CI/CD 是一个很好的参考 👍 -
审核支持插件化,更易扩展 -
后端使用 go 语言开发,部署兼容性和性能更加友好