このトピックでは、PolarDB for PostgreSQL 14および類似のPostgreSQL 14クラウドネイティブデータベースのOLTPパフォーマンステストの結果について説明します。
概要
同様のPostgreSQL 14クラウドネイティブデータベースと比較して、PolarDB for PostgreSQL 14は次の機能を最適化して、全体的なパフォーマンスを向上させます。
- PolarDB for PostgreSQLは、3D XPointストレージメディアのOptaneソリッドステートドライブ (SSD) 、NVMe SSD、RDMA over Converged Ethernet (RoCE) などの主要なハードウェアテクノロジーを採用しています。
- PolarDB for PostgreSQLは、新しいハードウェアに基づいてユーザーモードで実行される一連のI/Oおよびネットワークプロトコルスタックを実装します。 これにより、パフォーマンスが向上し、待ち時間が短縮されます。
- PolarDB for PostgreSQLは、Polar Commit Sequence Number (CSN) 機能を使用して、ネイティブPostgreSQLのxidトランザクションを単調増加する64ビット整数に置き換え、並行性の高いシナリオでのOLTPパフォーマンスを向上させます。
- 先読み、事前拡張、およびrel_size_cacheの機能は、I/O読み取りおよび書き込みの数を減らし、パフォーマンスを向上させるために提供されます。
説明 テスト手順の詳細については、「OLTPパフォーマンステスト」をご参照ください。
テスト環境と仕様
次の表に、PolarDB for PostgreSQL 14および類似のPostgreSQL 14クラウドネイティブデータベースの環境と仕様を示します。
説明 | PolarDB for PostgreSQL 14 | 同様のPostgreSQLクラウドネイティブデータベース |
コアとメモリ | 8コアと64 GBのメモリ | 8コアと64 GBのメモリ |
同時実行 | 256 | 256 |
PostgreSQL バージョン | 14 | 14 |
ディスク性能レベル | PSL5 | デフォルト |
説明 カーネルパラメーターの場合、PolarDB For PostgreSQL 14および類似のPostgreSQL 14クラウドネイティブデータベースはデフォルト値を使用します。
ワークロードのテスト
Sysbenchには、oltp_insert、oltp_point_select、oltp_read_only、oltp_read_write、oltp_update_index、oltp_update_non_index、oltp_write_onlyの7つのシナリオがあります。 次の表に、各シナリオのテストの詳細を示します。
パラメーター | シナリオ | テストの詳細 |
書き込み専用 | oltp_insert | テーブルを挿入します。 |
oltp_update_index | インデックス付きのテーブルを更新します。 | |
oltp_update_non_index | インデックスなしでテーブルを更新します。 | |
oltp_write_only | テーブルを挿入、更新、および削除します。 | |
読み取り専用 | oltp_point_select | ポイントクエリ。 |
oltp_read_only | 点クエリと範囲クエリ。 | |
Read と write | oltp_read_write | oltp_write_onlyおよびoltp_read_only。 |
メトリクス
1秒あたりのトランザクション (TPS): データベースで1秒あたりに実行されるトランザクションの数。 コミットされたトランザクションのみがカウントされます。
テストデータ
次の表にテストデータを示します。
パラメーター | 説明 |
テーブル数 | 8 |
行数 | 64,000,000 |
総データサイズ | 128 GB |
パフォーマンス比較結果
- 書き込み専用
TPSまたはインスタンスタイプ PolarDB for PostgreSQL 14 同様のPostgreSQL 14データベース oltp_insert 26894.32 12787.40 oltp_update_index 26794.94 8112.62 oltp_update_non_index 27799.49 10037.60 oltp_write_only 10254.72 4227.12 - 読み取り専用
TPSまたはインスタンスタイプ PolarDB for PostgreSQL 14 同様のPostgreSQL 14データベース oltp_point_select 87774.29 26358.05 oltp_read_only 3421.84 1489.13 - 読み取りと書き込み
TPSまたはインスタンスタイプ PolarDB for PostgreSQL 14 同様のPostgreSQL 14データベース oltp_read_write 1953.10 846.73