翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
付録 II
このセクションでは、さまざまなシナリオにおける pt-archiver ツールのベンチマーク結果を示します。sysbenchdb.r6g.8xlarge
インスタンスで実行されます。
次の sysbench コマンドを使用して、データベースのロードを準備して実行しました。
sysbench oltp_read_write --db-driver=mysql --mysql-db=<DATABASE> --mysql-user=<USER> --mysql-password=<PASSWORD> --mysql-host=<ENDPOINT> --tables=1000 --table-size=2000000 --threads=500 prepare sysbench oltp_read_write --db-driver=mysql --mysql-db=<DATABASE> --mysql-user=<USER> --mysql-password=<PASSWORD> --mysql-host=<ENDPOINT> --tables=1000 --rate=500 --threads=500 run
プライマリキーがなく、インデックスが 1 つしかないテーブルのアーカイブ (データベースへのロードなし)
Started at 2022-11-07T05:29:12, ended at 2022-11-07T06:03:31 Action Count Time Pct commit 600050 1715.3582 83.31 select 300025 166.5470 8.09 inserting 300024 165.4025 8.03 other 0 11.6644 0.57
300,024 行をアーカイブするのに約 34 分かかりました。このテーブルには 200 万行がありましたが、ツールはインデックス付き列の一意のデータを持つ行のみをアーカイブしました。
プライマリキーを持つテーブルのアーカイブ (データベースへのロードなし)
Started at 2022-11-16T08:53:49, ended at 2022-11-16T12:38:18 Action Count Time Pct commit 4000000 11065.9534 82.16 select 2000000 1278.1854 9.49 inserting 1999999 1050.4961 7.80 other 0 74.1519 0.55
1,999,999 行をアーカイブするのに約 3 時間、44 分、29 秒かかりました。
次のグラフは、pt-archiver がシステム内に負荷が存在せずに単独で実行する場合、CPU とリソースをほとんど消費しないことを示しています。

プライマリキーを持つテーブルのアーカイブ (データベースへのロードあり)
Started at 2022-11-16T17:37:07, ended at 2022-11-17T03:20:43 Action Count Time Pct commit 4000000 19688.8362 56.23 inserting 1999999 13933.4418 39.79 select 2000000 1305.1770 3.73 other 0 89.1787 0.25
1999999 行をアーカイブするのに約 9 時間、43 分、36 秒かかりました。
次のグラフは、テスト中に sysbench によって適用される負荷により CPU 使用率が最大 15% になったことを示しています。ロードが完了すると、pt-archiver は、アーカイブを完了するために期待どおりに最小限の CPU を消費し続けました。

グラフからわかるように、pt-archiver はデータベースに負荷がかかっているときに積極的にアーカイブしません。