# 对比inception
# 功能对比
| 功能 | inception | goInception | 说明 |
|---|---|---|---|
| 审核 | ✓ | ✓ | 基本无差异 |
| 执行 | ✓ | ✓ | 基本无差异 |
| pt-osc工具 | ✓ | ✓ | 基本无差异 |
| gh-ost工具 | ✕ | ✓ | |
| 备份 | ✓ | ✓ | 基本无差异 |
| 忽略警告 | ✓ | ✓ | 基本无差异 |
| 只读参数 | ✓ | ✕ | goinception未提供 |
| 打印SQL语法树 | ✓ | ✓ | inception的感觉更友好 |
| DDL和DML拆分功能 | ✓ | ✓ | goinception支持混合执行,不会影响回滚解析 |
| 执行部分后休眠 | ✓ | ✓ | goinception支持执行指定条数后休眠 |
| 计算真实受影响行数 | ✕ | ✓ | |
| 事务支持 | ✕ | ✓ | |
| SQL指纹功能 | ✕ | ✓ | dml语句相似时,可以根据相同的指纹ID复用explain结果,以减少远端数据库explain操作,提高审核速度 |
# 速度
| 模块 | inception | goInception | 说明 |
|---|---|---|---|
| 审核 | ☆☆ | ☆☆ | 审核速度inception占优,优势微弱 |
| 执行 | ☆☆ | ☆☆ | 执行速度相近 |
| 备份 | ☆ | ☆☆ | 备份速度goinception领先(批量备份),优势较大 |
# 上手和使用
| 分类 | inception | goInception | 说明 |
|---|---|---|---|
| 快速部署 | ☆ | ☆☆ | goinception可使用二进制部署,下载即用 |
| 问题调试 | ☆ | ☆☆ | goinception有较多日志输出,便于问题快速定位 |
| 接口调用 | 限python,c,c++ | 实现了mysql数据库驱动的语言 |