数据库中间件XiaoMiGaea
-
Gaea 是小米商城/系统组研发的基于 mysql 协议的数据库中间件,目前在小米商城大陆和海外得到广泛使用,包括订单、社区、活动等多个业务。Gaea 支持分库分表、sql 路由、读写分离等基本特性,更多详细功能可以参照下面的功能列表。其中分库分表方案兼容了 mycat 和 kingshard 两个项目的路由方式。
基础功能:多租户,SQL 透明转发,慢 SQL 指纹,错误 SQL 指纹,注解路由。读写分离,从库负载均衡;自定义 SQL 拦截与过滤;连接池;配置热加载;IP/IP 段白名单;全局序列号;分库、分表功能;分库: 支持 mycat 分库方式;分表: 支持 kingshard 分表方式;聚合函数: 支持 max、min、sum、count、group by、order by 等;join: 支持分片表和全局表的 join、支持多个分片表但是路由规则相同的 join
namespace的配置格式为json,包含分表、非分表、实例等配置信息,都可在运行时改变。namespace的配置可以直接通过web平台进行操作,使用方不需要关心json里的内容,如果有兴趣参与到gaea的开发中,可以关注下字段含义,具体解释如下,格式为字段名称、类型、内容含义。
项目地址: https://gitee.com/mirrors/xiaomi-gaea