DRDS的功能特性如下表:
功能大类 | 功能点 |
---|---|
基础功能 | 基于MySQL语法和协议对外提供数据访问,支持Workbench、Navicat、SQLyog等客户端连接,支持JDBC连接访问。 |
数据分片 | 支持多种数据切分方式,提供水平扩展数据能力。 |
读写分离 | 支持透明读写分离和应用级读写分离方案,识别应用发送过来的语句,区分出语句类型,判定为读语句,则自动发送到只读实例执行SQL操作。 |
全局序列 | 提供全局唯一的序列号,可用于替换单机数据库的自增序列。 |
库内分表 | 提供水平切分后在单库再次进行分表功能,解决超大表水平切分后单片数据量依然很大的问题。 |
全局表 | 通过全局表同步,可以将数据更新少的数据单表同步到需要联合查询分表对应的分库上,以小表作为驱动表加速分布式联合查询。 |
事务支持 | DRDS当前支持单机、补偿、XA三种事务模型。 单机事务:不允许跨分片事务。 补偿事务:跨分片事务commit时部分失败,补偿线程会尝试在失败节点重新执行SQL。 XA分布式事务:两阶段提交,为了保证事务内数据一致性,跨分片事务commit时若部分失败会自动回滚。 |
管理命令 | 为方便用户使用和维护,提供DRDS特有的管理命令,包括:配置查看、状态查看、统计监控、序列运维等。 |
SQL执行统计分析 | 通过SQL执行统计分析,可判断数据分片的合理性,是否存在热点。 通过分析TOP慢语句、广播语句,不断优化应用程序对数据库使用的合理性。 |
运维监控 | 支持对实例、慢SQL、事务等进行监控,可实时查看分布式数据库的运行状况。 支持对数据库运行情况进行实时监控,提供物理数据库运行中语句、连接数统计及锁情况实时监控功能,在数据库资源被大量慢语句占用时,通过批量kill连接功能可快速恢复数据库服务。 |
运维管理可视化 | DRDS提供Console界面,可在线对DRDS实例、逻辑库等进行管理和维护。 |