このトピックでは、常時機密データベース機能が有効になっている ApsaraDB RDS for MySQL インスタンスのオンライントランザクション処理 (OLTP) パフォーマンスのテスト結果について説明します。RDS インスタンスは、RDS High-availability Edition で MySQL 8.0 と MySQL 5.7 を実行します。
背景情報
このテストでは、以下のクエリメソッドを使用して、クエリ/秒 (QPS) と応答時間 (RT) の観点から、RDS インスタンスのデータベースパフォーマンスを比較します。
プレーンテキストクエリ: 暗号化ルールは指定されていません。
暗号文クエリ: テストデータベースのすべての列が暗号化されています。
常時機密データベース機能は、RDS インスタンスの書き込みパフォーマンスには影響しません。
インスタンス仕様とテストメソッド
このテストは、業界標準のストレステストツールである sysbench を使用して、読み取り専用 (oltp_read_only ベンチマーク) と読み取り/書き込み (oltp_read_write ベンチマーク) のシナリオで実施されます。このテストでは、さまざまな量のスレッドを使用して、データベース内のさまざまなレベルの負荷をシミュレートします。
インスタンス仕様:
インスタンスタイプ: mysql.n2.xlarge.2c
インスタンスファミリー: 汎用
RDS エディション: RDS High-availability Edition
ストレージタイプ: パフォーマンスレベル 1 (PL1) の企業向け SSD (ESSD)
エンジンバージョン: マイナーエンジンバージョン 20240229 の MySQL 8.0 を実行する RDS インスタンス 1 つと、マイナーエンジンバージョン 20240229 の MySQL 5.7 を実行する別の RDS インスタンス 1 つ。
テストデータ:
テーブルの行数: 25,000
テーブル数: 250
テスト結果
MySQL 5.7
読み取り専用

スレッド | プレーンテキストクエリの QPS | 暗号文クエリの QPS | プレーンテキストクエリの RT | 暗号文クエリの RT |
64 | 14332.58 | 14021.94 | 71.43 | 73.01 |
128 | 28712.27 | 28097.95 | 71.32 | 72.87 |
256 | 51173.18 | 43663.67 | 80.02 | 93.79 |
読み取り/書き込み

スレッド | プレーンテキストクエリの QPS | 暗号文クエリの QPS | プレーンテキストクエリの RT | 暗号文クエリの RT |
64 | 14349.46 | 14073.52 | 89.18 | 90.93 |
128 | 28745.73 | 28480.96 | 89.03 | 89.86 |
256 | 52388.17 | 47524.69 | 97.69 | 107.69 |
MySQL 8.0
読み取り専用
Sysbench を使用して、異なるスレッド数で RDS インスタンスの読み取り専用パフォーマンスをテストします。次の図は、テスト結果を示しています。

スレッド | プレーンテキストクエリの QPS | 暗号文クエリの QPS | プレーンテキストクエリの RT | 暗号文クエリの RT |
64 | 20957.01 | 20451.69 | 48.85 | 50.06 |
128 | 40395 | 40523.26 | 50.68 | 50.52 |
256 | 67328.31 | 53119.03 | 60.8 | 77.07 |
読み取り/書き込み
Sysbench を使用して、異なるスレッド数で RDS インスタンスの読み取り/書き込みパフォーマンスをテストします。次の図は、テスト結果を示しています。

スレッド | プレーンテキストクエリの QPS | 暗号文クエリの QPS | プレーンテキストクエリの RT | 暗号文クエリの RT |
64 | 20201.55 | 19942.42 | 63.35 | 64.17 |
128 | 40133.36 | 40343.33 | 63.76 | 63.43 |
256 | 62039.77 | 46675.26 | 82.46 | 109.59 |
使用上の注意
このテストでは、すべてのクエリ結果のデータが暗号化されています。データベースシステムで少数の機密フィールドのみが暗号化されている場合、RDS インスタンスのパフォーマンスはテスト結果よりも向上します。
常時機密データベース機能は、RDS インスタンスの読み取りパフォーマンスのみに影響します。そのため、この機能は、読み取り専用のシナリオでインスタンスのパフォーマンスに最も大きな影響を与え、読み取り/書き込みのシナリオでも顕著な影響を与えます。書き込み専用のシナリオでは、インスタンスのパフォーマンスはこの機能の影響を受けません。
常時機密データベース機能は、主に CPU 負荷を増加させますが、ディスクまたはメモリリソースには影響しません。