毎年9月から10月にかけて発表されているため、 PostgreSQL 17 の新バージョンのリリースが発表されました 以前のすべてのバージョンと同様に、 引き続きパフォーマンスの向上と最適化が優先されます このリリースの最も重要な新機能は増分バックアップです。
ビジネス ユーザーにとって、このアップデートはデータベースの管理と使用を簡素化する多くの改善をもたらします。 PostgreSQL は歴史的にリレーショナル データベースでしたが、このバージョンでは、JSON ドキュメントを操作するための高度な機能との統合が拡張されており、これは一般的に MongoDB Atlas に関連付けられています。
PostgreSQL 17 の新機能
この新しいバージョンの PostgreSQL 17 では、 VACUUM操作における新しいデータ構造、 これにより、メモリ消費量が最大 20 分の XNUMX に削減され、共有リソースの観点からこれらの操作がより高速かつ効率的に実行できるようになります。
の側で パフォーマンスの向上、ライトバック ログ管理 (WAL) が最適化され、多くの同時クエリがあるシステムで最大 2 倍の書き込みパフォーマンスを実現しました。提案されているのは、 逐次検索を改善するストリーミング I/O インターフェイス ANALYZE 操作の実行後に統計を更新します。
それに加えて、 「IN」句を含むクエリに改善が実装されました。 B ツリー インデックスの使用により、BRIN インデックスの並列構築が実装され、「NOT NULL」チェックが最適化され、共通テーブル式 (CTE) の処理が高速化され、集中的な計算のために SIMD が組み込まれました。 AVX-512 などの命令を使用して、「bit_count」関数などの演算を高速化します。
もう一つの際立った新しさは、 JSON の新機能、 以来 ユーザーは標準 SQL コマンドを使用して JSON データ型をクエリできるようになりました。 新しいテーブル機能のおかげでこれが可能になりました json、JSON データを表構造に変換します。そこから、ユーザーは句を使用してクエリを作成できます。 FROM SQL では、データをリレーショナル形式で返すことができます。 JSON データを標準の PostgreSQL テーブルに変換するための `JSON_TABLE` 関数を追加しました。
ザ・ 新しい増分バックアップ機能 PostgreSQL 17 では 前回のバックアップ以降に加えられた変更のみをバックアップできます フルまたはインクリメンタル。これにより、帯域幅の使用が最適化され、ストレージが削減されます。 PostgreSQL はすでに、データベースの必要なセクションを維持するために先行書き込みログ (WAL) を複製する WAL Archiving などのソリューションを提供していましたが、バージョン 17 では、増分コピーを実行するためのネイティブ メカニズムが初めて導入されました。このシステムは、パフォーマンスへの影響を少なくすることで操作中の中断を最小限に抑えるだけでなく、バックアップの復元は通常時間がかかり、ユーザーにとって心配なプロセスであるため、重要な側面であるリカバリ時間も大幅に短縮します。
プラットフォームに依存しないエンジンを実装 ロケール プロパティを処理し、クエリ結果の順序付けで一貫した動作を可能にします。このエンジンは、値を並べ替える際に、特殊文字の存在や大文字と小文字の区別などの要素を考慮します。論理レプリケーション メカニズムにより、新しいバージョンへの移行時に論理レプリケーション スロットを削除したりデータを再同期したりする必要がなく、データベースのアップグレード プロセスが簡素化されました。
の 目立つ他の変更:
- `COPY` コマンドによる長い文字列のエクスポートが最大 2 倍高速化されました。
- コピー元とコピー先のエンコーディングが一致する場合のコピーが最適化されました。
- データの挿入中にエラーが発生してもインポートを続行できるようにするために、「ON_ERROR」オプションが追加されました。
- パーティション化されたテーブルで一意の識別子を持つ列を使用する機能が追加されました。
- フォールト トレラント構成でバックアップ サーバーに切り替えるフェイルオーバー機能を実装しました。
- 物理レプリカを論理レプリカに変換するための新しい pg_createsubscriber ユーティリティが追加されました。
- ALPN TLS 拡張機能を直接使用して安全な TLS 接続をネゴシエートする「sslnegotiation」オプションが導入されました。
- 事前定義ロール pg_maintain を追加しました。これにより、DBMS メンテナンスに関連する操作を実行する権限がユーザーに与えられます。
最後に、それについてもっと知りたい場合は、詳細を調べることができます 次のリンクで。