小米开源了一款名为:soar的开源项目。
项目地址为:https://github.com/XiaoMi/soar
以下文字来自项目说明:
SOAR(SQL Optimizer And Rewriter)是一个对SQL进行优化和改写的自动化工具。 由小米人工智能与云平台的数据库团队开发与维护。
1、跨平台支持(支持Linux, Mac环境,Windows环境理论上也支持,不过未全面测试)
2、目前只支持MySQL语法族协议的SQL优化
3、支持基于启发式算法的语句优化
4、支持复杂查询的多列索引优化(UPDATE, INSERT, DELETE, SELECT)
5、支持EXPLAIN信息丰富解读
6、支持SQL指纹、压缩和美化
7、支持同一张表多条ALTER请求合并
8、支持自定义规则的SQL改写
1、语法支持方面,目前主要依赖vitess,TiDB对SQL语法的支持。
2、目前仅针对MySQL语法族进行开发和测试,其他使用SQL的数据库产品暂不支持。
3、Profiling和Trace功能有待深入挖掘,供经验丰富的DBA分析使用。
4、目前尚不支持直接线上自动执行评审通过的SQL,后续会努力支持。
5、由于暂不支持线上自动执行,因此数据备份功能也未提供。
6、Vim, Sublime, Emacs等编辑器插件支持。
7、Currently, only support Chinese suggestion, if you can help us add multi-language support, it will be greatly appreciated.