Topik ini menganalisis dampak pengaktifan Transparent Data Encryption (TDE) pada instans ApsaraDB RDS for MySQL terhadap kinerja, termasuk penggunaan CPU dan memori. Gunakan laporan ini untuk mengevaluasi kesesuaian TDE dengan workload Anda.
Rangkuman hasil
Mengaktifkan TDE menimbulkan overhead kinerja yang terukur dan meningkatkan pemanfaatan CPU pada instans ApsaraDB RDS for MySQL.
Pada konkurensi rendah, overhead kinerja lebih besar, mencapai hingga 20%. Pada konkurensi tinggi, overhead menurun menjadi kurang dari 5% karena faktor-faktor seperti konsolidasi I/O.
Pada instans 4-core, 16 GB, mengaktifkan TDE meningkatkan pemanfaatan CPU sebesar 0,06% hingga 4,22% saat mengakses tabel terenkripsi. Pada instans 8-core, 32 GB, peningkatannya sebesar 0,12% hingga 2,86%.
Secara keseluruhan, dampak terhadap kinerja paling terasa pada workload intensif tulis, seperti skenario uji
oltp_write_onlydanoltp_update_index.
Lingkungan pengujian
Parameter | Skenario pengujian 1 | Skenario pengujian 2 |
Wilayah dan zona | China (Hangzhou) | |
Jenis jaringan | Virtual Private Cloud (VPC) | |
Arsitektur perangkat keras | x86-64 | |
Jenis penyimpanan | local SSD | |
CPU | 4-core | 8-core |
Memori | 16 GB | 32 GB |
Ukuran buffer pool | 12 GB | 24 GB |
IOPS maksimum | 7000 | 12000 |
Versi mesin database | mysql80_8.0.28_20230610 | |
Ukuran set data pengujian | 41 GB | |
Tool benchmark
sysbench adalah tool benchmark open-source, modular, lintas platform, dan multi-threaded untuk mengevaluasi kinerja sistem di bawah beban database tinggi. Untuk informasi selengkapnya, lihat dokumentasi sysbench.
Metrik utama
transaksi per detik (TPS): Jumlah transaksi yang dikomit database per detik.
latensi rata-rata: Waktu rata-rata untuk mengeksekusi satu transaksi, diukur dalam milidetik (ms).
Skema tabel pengujian
Skema tabel default yang digunakan oleh sysbench adalah sebagai berikut:
CREATE TABLE `sbtest8` (
`id` int NOT NULL AUTO_INCREMENT,
`k` int NOT NULL DEFAULT '0',
`c` char(120) NOT NULL DEFAULT '',
`pad` char(60) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
KEY `k_8` (`k`)
) ENGINE=InnoDB AUTO_INCREMENT=100001 DEFAULT CHARSET=utf8mb3Prosedur
Buat instans ApsaraDB RDS for MySQL. Untuk informasi selengkapnya, lihat Buat instans ApsaraDB RDS for MySQL.
Buat database dan akun. Untuk informasi selengkapnya, lihat Buat database dan akun.
Instal client MySQL pada instans ECS berbasis Linux Anda.
Untuk CentOS, jalankan
sudo yum install mysql.Untuk Ubuntu, jalankan
sudo apt-get updatelalusudo apt install mysql-server.
Terhubung ke instans ApsaraDB RDS for MySQL Anda dari command line:
mysql -h<endpoint> -u<username> -P<port> -p<password>CatatanUntuk menemukan endpoint dan port instans Anda, lihat Lihat dan kelola endpoint serta port instans.
Keluar dari database dan gunakan sysbench untuk menyiapkan serta memuat data pengujian.
CatatanDalam pengujian ini, sysbench memuat 128 tabel, masing-masing berisi 100.000 baris. Skrip berikut menggunakan model pengujian
oltp_read_write.Kode contoh mengatur jumlah thread menjadi 16. Sesuaikan parameter --threads sesuai kebutuhan Anda, misalnya 1, 8, 16, 32, 64, 128, atau 256.
sysbench --db-driver=mysql --mysql-host=[database server host] --mysql-port=[database server port] --mysql-user=[database user name] --mysql-password=[database user password] --mysql-db=testdb --table_size=1000000 --tables=128 --threads=16 --time=60 oltp_read_write prepareJalankan pengujian benchmark.
sysbench --db-driver=mysql --mysql-host=[database server host] --mysql-port=[database server port] --mysql-user=[database user name] --mysql-password=[database user password] --mysql-db=testdb --table_size=1000000 --tables=128 --threads=16 --time=60 oltp_read_write runBersihkan data pengujian.
sysbench --db-driver=mysql --mysql-host=[database server host] --mysql-port=[database server port] --mysql-user=[database user name] --mysql-password=[database user password] --mysql-db=testdb --table_size=1000000 --tables=128 --threads=16 --time=60 oltp_read_write cleanup
Skenario pengujian 1: Instans 4-core, 16 GB
Data pengujian
Kinerja berdasarkan model workload


Pemanfaatan CPU

Rangkuman data kinerja



rds_ssd_4c16g_tde_off[3]: Instans ApsaraDB RDS for MySQL 4-core, 16 GB dengan TDE dinonaktifkan.
rds_ssd_4c16g_tde_on[2]: Instans ApsaraDB RDS for MySQL 4-core, 16 GB dengan TDE diaktifkan.
Skenario pengujian 2: Instans 8-core, 32 GB
Data pengujian
Kinerja berdasarkan model workload



Rangkuman data kinerja



rds_ssd_8c32g_tde_off[11]: Instans ApsaraDB RDS for MySQL 8-core, 32 GB dengan TDE dinonaktifkan.
rds_ssd_8c32g_tde_on[12]: Instans ApsaraDB RDS for MySQL 8-core, 32 GB dengan TDE diaktifkan.