我为很多驾驶舱系统开发后台服务。
我的前端伙伴为了快速构建驾驶舱系统,采用了GoView。
我发现,驾驶舱系统需要大量的统计分析类的多数据源的查询接口,
所以我尝试设计一个可配置的后台服务,为了满足GoView的需要。
- 支持多种数据库,目前支持postgresql、mysql、oracle、sqlserver、clickhouse、json
- 提供配置页面,可以以图形化的方式配置视图及其数据源
- 轻量化,只有查询,没有集成多余的部件,适合嵌入到微服务体系中,目前支持SpringCloudAlibaba
- 组合视图,以多个视图为数据源构建新的视图,能满足多数据源联合查询的复杂需求
- 优化模糊查询,目前采用命名参数(即 :paramName)的方式实现预编译SQL语句,但其对模糊查询等场景不够友好
- 接入文件和文档,文档提供markdown预览
- 集成AI生成SQL
鉴权功能,根本不用集成。
最近跑了一遍国产API网关Apisix的Demo,看上去挺带劲的。
对比他的老对手Kong,apisix的文档有中文可真是太棒了。
在redview前装个apisix,由apisix来完成鉴权,是最棒的选择。
用了一段时间发现,编写复杂的统计SQL,需要对SQL非常熟悉。
虽然不需要写代码,但是构思复杂SQL耗时也很长,开发效率实际上并没有提高。
当然这也不能说redview没用,开发后台本来就是SQL和代码结合,判断和类型转换等麻烦事一样会遇到。
redview将混沌的不确定的部分都交给SQL,也是一种进步。
我发现通义千问在数据库SQL语句生成方面很在行。
如果,可以用AI来生成SQL,自动测试SQL,自动改正SQL。那确实是大大地提高了开发效率。
一个集成了AI的万用数据视图也是挺酷的,想整。