Amazon RDS for MySQL の MySQL 8.0 と MySQL 8.4 を比較してみた

はじめに

Amazon RDS for MySQL の RDS データベースプレビュー環境 にて、MySQL 8.4 を使って比較してみた

目次

手順の概要

  1. 各種AWSインスタンスの用意
  2. sysbench-tpcc のインストール
  3. sysbenchのサンプルDBデータの投入
  4. ベンチマーク実行

実行環境

Rocky Linux 9

手順

各種AWSインスタンスの用意

RDS単体ではベンチマークはないので、何らかのDBベンチマークの用意が必要です。
今回はLinuxで簡単に用意できるsysbench-tpccを採用しました。

RDS データベースプレビュー環境 は US East ((Ohio)us-east-2 ) のリージョンでのみ利用可能ですので、
こちらのリージョンで下記機器の用意をしました。

●リージョン
us-east-2 (オハイオ)

●EC2
m7i.xlarge
( Rocky Linux 9.0 、個人的に好みのOSで 深い理由はないです。RHEL9やAlmaLinux9でも本試験は同様に実施可能な見込みです)
- EBS : gp3 30GB
- MySQLクライアント : mysql-community-client-8.4.2-1.el9.x86_64.rpm ※MySQL CommunityのRHEL9向けリポジトリ利用
- ベンチマークソフト : epelリポジトリの sysbench 1.0.20 を利用。

●RDS
1. MySQL 8.4.1 db.m6i.large S-AZ gp3 100GB (RDS データベースプレビュー環境版)
2. MySQL 8.0.39 db.m6i.large S-AZ gp3 100GB (通常公開されているもの)

sysbench のインストール

Linux中にて下記コマンドにてsysbench 及び必須コマンドのインストールを実施

作業用ディレクトリの作成と移動

最新リポジトリのclone

サンプルDBデータのDB作成

サンプルDBデータの投入

ベンチマーク実行

ベンチマーク結果

3回計測し、平均いたしました。

MySQLversion QueriesRead QueriesWrite QueriesOther QueriesTotal transactions queries
8.0 3044 3187 477 6708 237 (23.68 per sec.) 6708 (670.20 per sec.)
8.4 4421 4567 705 9693 351 (35.09 per sec.) 9693 (968.96 per sec.)

注目すべきは
transactions と queries になります。
これは処理できたトランザクションおよびクエリ数になっており、実際のDBレスポンスの使用感に直結することが多い値になります。

MySQL8.4の結果がMySQL8.0の結果の25%ほど早い結果になっています。

まとめ

将来的にMySQL8.4の利用が必須な時代が来た場合、ストレージエンジンやパラメータ値が適切であれば
MySQL8.4に変更するだけでデータベースの動作高速化を狙うことができる可能性があります。
安定版として利用可能となった場合、積極的に使用していきたいですね

投稿者プロフィール

kenji
2013年入社の平成生まれです。

初めて触ったコンピュータはPC9821でダイヤルアップでした。
その時に鯖落ちや人大杉の対応をしてくださる鯖缶になりたいと憧れ、
みなさんのお役に立てればと思っております!
#今では個人所有のパソコン・サーバだけで20台ほどあります…。

サーバー大好き!

ABOUTこの記事をかいた人

2013年入社の平成生まれです。 初めて触ったコンピュータはPC9821でダイヤルアップでした。 その時に鯖落ちや人大杉の対応をしてくださる鯖缶になりたいと憧れ、 みなさんのお役に立てればと思っております! #今では個人所有のパソコン・サーバだけで20台ほどあります…。 サーバー大好き!