摘要:    今天我们有幸抢鲜测试AliSQL,直接拿来和MySQL 5.7.15对比看看。 AliSQL刚宣布开源,我就提交申请内测名额,节前收到开放内测邀请,于是第一时间进行了测试了解,希望能给大家提供一些参考。

1、导读

有幸抢鲜测试AliSQL,直接拿来和MySQL 5.7.15对比看看。AliSQL刚宣布开源,我就提交申请内测名额,节前收到开放内测邀请,于是第一时间进行了测试了解,希望能给大家提供一些参考。

2、关于性能

本次仅用sysbench进行测试,还没用tpcc做对比,因此测试方案不是太周全。稍后会再发布tpcc的测试结果。

a、sysbench采用update_non_index.lua模式测试

b、sysbench采用oltp.lua模式测试

从测试结果来看,AliSQL在sysbench的update_non_index方案下并发超过64线程后就呈现优势了。不过在olto模式下,一直没有优势(有可能在更高并发模式下会扳回来,以后有机会再验证)。请教了下丁奇,原来AliSQL特别针对写多读少的业务场景模式进行了优化,所以在AliSQL的github官网上才建议采用update_non_index模式进行对比测试。

备注0:为什么选择MySQL 5.7.15版本进行对比测试

MySQL 5.7已经GA,也到了15小版本。有些比较激进的5.7刚出来没多久就已经用上了,当5.7在性能和功能上都有很大优势时,我们为什么不选用呢?这就是我为什么直接选择5.7.15来进行对比的原因。等我做完tpcc测试后,有可能也会拿官方或Percona 5.6版本再做个对比测试。

备注1:sysbench测试方案

--max-requests=0
--max-time=900
--oltp_tables_count=20
--oltp_table_size=200000
--report-interval=10
--num-threads=$count
--oltp-read-only=off 
--rand-type=uniform

备注2:测试机配置

CPU: Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz
OS kernel: CentOS 7.2.1511, 3.10.0-327.28.3.el7.x86_64
Memory: 96G
Disk: PCIe SSD

3、关于功能

AliSQL此次开源的版本,新增了下面这些功能:

  1. SELECT FOR UPDATE WAIT
  2. THD memory usage monitor
  3. DDL fast fail
  4. Support big column compress
  5. Innodb_rseg table to display the rollback information.
  6. Thread running control
  7. Kill idle transactions
  8. table/index statistics
  9. Throttle InnoDB IOPS for sql statement
  10. SQL filter
  11. Relax gtid limitation for some statements

这些功能都是非常实用的,尤其是对类似电商或提供RDS服务的平台帮助非常大。不过,我们也注意到这里面有些功能在MariaDB/Percona分支版本中同样具备或能找到替代方案。此外,它在性能方面所做的改善有:

  1. redo log写优化
  2. 部分锁拆分等优化
  3. 集成了jemalloc
  4. 众多InnoDB优化工作,包括合并AIO请求,buffer pool优化、并发线程控制优化、只读事务优化、InnoDB表锁优化、自适应哈希索引(AHI)优化等等
  5. GTID优化

能看得出来,这些优化工作也确确实实是从日常的业务痛点中得到的体验所做出来的改变。

4、写在最后

最后我想说的是,AliSQL这次开源的姿态不错,不过还是没达到之前的预期,放出来的版本至少从功能上看还是有些保留的,期待未来的版本能更具诱惑力,嘿。至于是否选用AliSQL,我想这是个见仁见智的问题。被MySQL 5.7新特性吸引的话,我想是时候开始尝鲜了。如果不想用MySQL 5.7的话,AliSQL相比MySQL 5.6还是有很大优势的,和MariaDB/Percona相比,也是有一些优势的。无论如何,我们还是要感谢AliSQL带给我们的新选择。

参考:AliSQL GitHub官网:https://github.com/alibaba/AliSQL (目前还是私有项目)

AliSQL 5.6.32 vs MySQL 5.7.15抢鲜测试的更多相关文章

  1. mysql 5.6.15升级到5.6.43

    今天闲来无事,观察测试环境的zabbix服务器,发现内存泄漏严重,于是重启了,想起了前几天写的帖子发生了严重的内存泄漏可以把mysql升级到最新的小版本 于是乎就试着升级 old version:5. ...

  2. MySQL全面瓦解15:视图

    概述 很多时候,我们会有一些很复杂的数据库操作,比如整合用户的行为数据,那这些数据可能包含用户的餐饮.生活日用.充值消费.交通出行.通讯物流.交通出行.医疗保健.住房物业.运动健康... 基于此,我们 ...

  3. 白日梦的Elasticsearch实战笔记,32个查询案例、15个聚合案例、7个查询优化技巧。

    目录 一.导读 三._search api 搜索api 3.1.什么是query string search? 3.2.什么是query dsl? 3.3.干货!32个查询案例! 四.聚合分析 4.1 ...

  4. 在mysql数据库中制作千万级测试表

    在mysql数据库中制作千万级测试表 前言: 最近准备深入的学一下mysql,包括各种引擎的特性.性能优化.分表分库等.为了方便测试性能.分表等工作,就需要先建立一张比较大的数据表.我这里准备先建一张 ...

  5. Centos 6.4上面用Shell脚本一键安装mysql 5.6.15

    Centos 6.4上面用Shell脚本一键安装mysql 5.6.15  #!/bin/bash if [ `uname -m` == "x86_64" ];then machi ...

  6. mysql 5.7.15 安装配置方法图文教程(转)

    http://www.jb51.net/article/92521.htm ******************************* MySQL数据库作为关系型数据库中的佼佼者,因其体积小,速度 ...

  7. windows 系统如何安装 mysql 8.0.15 数据库?

    windows 系统如何安装 mysql 8.0.15 数据库? 1. 下载安装包 下载地址:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0. ...

  8. MySQL 8.0.15 配置 MGR单主多从

    转载自:http://www.cnblogs.com/zhangzihong/p/10443526.html 一.简介 MySQL Group Replication(简称MGR)字面意思是mysql ...

  9. CentOS源码编译安装MySQL 5.5.15

    CentOS源码编译安装MySQL 5.5.15   文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install g ...

随机推荐

  1. 延迟加载-association来实现

    resultMap可以实现高级映射(使用association.collection实现一对一及一对多映射),association.collection具备延迟加载功能. 需求: 如果查询订单并且关 ...

  2. Percona-XtraBackup系列一:安装 perl(Time::HiRes) is needed by percona-xtrabackup-2.2.10-1.el6.x86_64

    1:在percona官网下载最新的Xtrabackup http://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.2.10/bi ...

  3. secureCRT,永久设置,保护眼睛,配色方案

    配色后效果如下: 下面开始配色 1.选项(Options)==>会话选项(Sessions options)==>终端(Terminal)==>仿真(Emulation) 按图中标注 ...

  4. Java通过wait()和notifyAll()方法实现线程间的通信

    Java代码(使用了2个内部类): package Threads; import java.util.LinkedList; /** * Created by Frank */ public cla ...

  5. java 截取字符串

      java 截取字符串 CreationTime--2018年7月17日16点37分 Author:Marydon 1.去除最后一个字符 方式一:String 方式二:StringBuilder.S ...

  6. [Android]Recovery调用外部Shell脚本,Shell脚本使用ui_print方法

    busybox_bin=/sbin/busybox # 获取PIPE get_outfd(){ | $busybox_bin grep -q 'pipe'; then else local all_p ...

  7. 【Android】ant编译aidl的错误

    使用ant编译Android应用程序工程时,出现的错误: 错误信息(Cygwin): [aidl] This application has requested the Runtime to term ...

  8. SSM:spring+springmvc+mybatis框架中的XML配置文件功能详细解释(转)

    原文:https://blog.csdn.net/yijiemamin/article/details/51156189# 这几天一直在整合SSM框架,虽然网上有很多已经整合好的,但是对于里面的配置文 ...

  9. Linux下的二进制兼容性的检测

    都知道Linux的二进制兼容与windows相比简直是天差地别,windows的二进制兼容做得特别好,很老的游戏都能在windows 10上跑,写的好的程序,在XP上也不是不可以.但是Linux就不一 ...

  10. ubuntu 16.04 LTS 修改 国内源(以中科大源为例)

    国内有很多ubuntu的源,包括:网易源(这个之前用过,速度很快的),阿里源,还有很多教育网的源,如:清华源,中科大源. 这里要下载的是中科大ubuntu16.04的源列表,可以在这里获得:https ...