OSSデータベース取り取り時報

第71回MySQL Database Serviceとアプリケーション、一足早い次期メジャーバージョンPostgreSQL 14情報

OSSコンソーシアム データベース部会のメンバーによる本連載をよろしくお願いいたします。

[MySQL]2021年6月の主な出来事

2021年6月のMySQLの製品リリースはありませんでした。MySQL Database Serviceは毎月機能強化が行われており、6月16日には変更可能なサーバー変数が追加されています。なおテーブル名の大文字小文字を区別するかどうかの設定であるlower_case_table_nameは、インスタンス作成時には設定を選択できますが、インスタンス作成後は変更できない初期化時のみ変更可能な変数とされている点には注意が必要です。

MySQL Database Serviceとオープンソース・アプリケーション

MySQLコミュニティチームのLeFredのブログにて、各種のオープンソース・アプリケーションをMySQL Database Serviceと組み合わせて利用する方法が解説されています。

オープンソースのアプリケーションとMySQL Database Serviceをまとめて構築できるOracle Cloudの「クラウド・スタック」の機能を利用して、インスタンス名やMySQLサーバーのユーザー/パスワードなどいくつかの情報をOCIのコンソール上で入力するだけで構築できるTerraformモジュールをLeFredがGitHub上で公開しています。

OCIのトライアル用アカウントでも自由に利用できるようになっています。OCIのアカウントを持っていれば、各モジュールのページのボタンを押すだけでスタックの構築が可能です。

[PostgreSQL]2021年6月の主な出来事

次期メジャーバージョンであるPostgreSQL 14の姿が明らかになってきましたので、一足早く新機能や改善点を中心にお伝えします。

一足早いPostgreSQL 14情報

前回お知らせしたとおり、PostgreSQLの次期メジャーバージョンのベータ版が5月に公開されました。さらに6月24日にはベータ2がリリースされていますので、これらのベータ版のリリース情報を元に、PostgreSQL 14で実現する新機能や改善点を確認してみましょう。

まず、ベータ1のリリース情報に記されたPostgreSQL 14のハイライトは次のようになっています。ご存知のようにPostgreSQLはメジャーバージョンのタイミングで新機能が組み込まれますので、ハイライトだけでもかなりの項目数になります。

パフォーマンス改善

  • インデックスが頻繁に更新されるテーブルの肥大化を減らすなど、Bツリーインデックスのオーバーヘッドを減らす改善がされています。
  • GiSTインデックスは作成を高速化し、かつ、インデックスサイズが縮小されます。
  • クエリの並列処理では多くの改善がされました。並列順次スキャンのパフォーマンスが全体的に向上し、PL/pgSQLのRETURN QUERYディレクティブで並列処理が実行できるようになりました。REFRESH MATERIALIZED VIEWでも並列処理が使用できるようになりました。
  • 外部データラッパーを使用した外部データベースへの問合せの際に、並列処理を行う機能が導入されています。
  • パーティションシステムでは、影響を受けるパーティションが少ないテーブルの行を更新または削除するときのパフォーマンスが向上します。
  • インクリメンタルソートがウィンドウ関数で使用できるようになりました。
  • これまでも「特大データ」(TOASTシステム)の圧縮がサポートされていましたが、このリリースでは列の圧縮にLZ4圧縮を使用することができるようになりました。

データ型とSQL

  • 範囲(range)型の既存のサポートに基づいて、連続していない範囲の順序付きリストを指定できる新しいマルチ範囲(multirange)型が追加されました。
  • ネストされたオブジェクトの情報を取得するための一般的な添え字フレームワークが追加されました。また、データ型のネストされた情報を取得できるようになりました。

管理

  • インデックスの最適化により、VACUUMに多くの改善がされています。autovacuumはパーティション化されたテーブルを分析し、行数に関する情報を親テーブルに伝達できるようになりました。
  • ANALYZEは、maintenance_io_concurrencyパラメータで制御してパフォーマンスが向上します。
  • pg_stat_progress_copyビューを使用してCOPYの進行状況を追跡する機能など、監視できる情報の多数の改善がされました。
  • pg_stat_walビューからWALアクティビティを追跡し、pg_stat_replication_slotsビューからレプリケーションスロット統計を検査できます。
  • 接続の管理に役立ついくつかの新しいパラメータがあります。例えば、アイドル状態の接続を指定された時間後に閉じることができるidle_session_timeout、クライアントが切断された場合に長時間実行されるクエリをキャンセルできるようにするclient_connection_check_intervalなどです。
  • REINDEXコマンドは、パーティション表のすべての子インデックスを処理できるようになりました。
  • データの破損をチェックするのに役立つpg_amcheckユーティリティが追加されました。

レプリケーションとリカバリ

  • 論理レプリケーションに関する多くのパフォーマンス向上がなされています。例えば、進行中のトランザクションをサブスクライバにストリーミングする機能などです。
  • ALTER SUBSCRIPTIONを使用すると、新しいADD / DROP PUBLICATION構文を使用してパブリケーションを追加/削除できます。
  • クラッシュリカバリ時にPostgreSQLが起動する方法が改善され、スタンバイモードのPostgreSQLインスタンスでpg_rewindを使用できるようになりました。

セキュリティ

  • pg_read_all_dataおよびpg_write_all_dataの事前定義されたロールを使用して、テーブル/ビュー/シーケンスに対するユニバーサルな「読み取り専用」および「書き込み専用」権限をユーザに与えることができます。
  • インスタンスのパスワード管理ではデフォルトでSCRAM-SHA-256が使用されます。また、pg_hba.confのclientcertパラメータは、従来の値ではなくverify-caまたはverify-fullのいずれかの値を使用する必要があります。
  • pg_hba.confファイルのclientname = DNパラメータを使用して、証明書を用いた認証に証明書の「識別名」⁠DN)を使用できます。

ベータ2での改善点

ベータ1のリリース後1ヵ月未満でベータ2がリリースされ、報告されたさまざまなバグ修正がされています。

  • プロシージャのOUTパラメータの処理が再設計されました。
  • toastカラムのLZ4サポートに対するさまざまな改善と修正がされました。
  • VACUUMによるインデックスバイパスの無効化をサポートされました。
  • pg_dumpallへ⁠--no-toast-compression⁠が追加されました。

@nuko_yokohamaさんの「PostgreSQL 14がやってくる」

上記の新機能ハイライトはリリース情報を元にまとめているものですが、@nuko_yokohamaさんがPostgreSQL 14がやってくるとして、ベータ版を実際に稼働させた検証報告を公開されています。

TOAST圧縮方式
PostgreSQL 14がやってくる(4) - TOAST圧縮方式の変更では、PostgreSQL 14でTOAST圧縮方式が変更されている点について詳しく調べられています。⁠TOAST」は名前がおもしろいですね。いちおう⁠The Oversized-Attribute Storage Technique⁠の略称になっている様です。
COPYの進捗
PostgreSQL 14がやってくる(5) - COPYの進捗どうでしょうでは、pg_stat_progress_copyビューによってCOPYの進捗がどの様に確認出来るのかを実際に動かしてみながら検証しています。
その他
その他、psqlの改善や追加機能などについても調べられています。

PostgreSQLエンタープライズ・コンソーシアム技術部会の2021年度キックオフ

PostgreSQLエンタープライズ・コンソーシアム(PGECons)は、5月末に昨年度の成果報告を発表し、前回記事でこの内容を報告しました。そして7月からはいよいよ新年度の活動をキックオフします。キックオフ会は7月1日に開催されますが、ちょうどスタートしたばかりですので、活動に興味を持たれた方は、お気軽にPGECons事務局へご連絡ください。

PostgresVision2021の内容がオンラインで視聴可能に

PostgreSQLの機能拡張版を提供しているEDBが毎年開催しているイベントが、2021年6月22日(火⁠⁠~23日(水)オンラインで開催されました。基調講演や技術発表などのほとんどの講演が事後に視聴可能になっています。発表は英語ですが、貴重な発表もありますので、関心のある方は視聴されてみてはいかがでしょうか。なお、このセミナーの日本国内版であるEDB Postgres Vision Tokyo 2021が7月に開催されます。

2021年7月以降開催予定のセミナーやイベント、ユーザ会の活動

OSSコンソーシアムは7月が新年度の開始になります。例年は総会と併せて、OSSに関心を持たれた方たちが集う場としてセミナーと交流会を行っていましたが、昨年からコロナ禍のためにオンラインで総会だけの開催となっていて、今年も同様にオンラインで会員限定の総会のみとなりました。来年には例年どおりに皆さんに集まっていただけるイベントが行えることを願っています。

第25回 PostgreSQLアンカンファレンス@オンライン

日程 2021年7月6日(火)20:30~23:00
場所 オンライン(Zoom)
内容 PostgreSQLについて発表したりディスカッションしたりするイベントです。アンカンファレンス形式なので、何が出るかは当日来てのお楽しみ。
主催 PostgreSQLアンカンファレンス

SRA OSS Inc. PostgreSQL / PowerGres ハンズオンセミナー

日程 2021年7月8日(木)15:00~17:00(9月にも開催予定あり)
場所 SRAグループ池袋オフィスビル
内容 PowerGresの全体像を理解しつつ実際に機能を体験いただくコースです。ノートPCを持参すると、インストールや設定を行うことができます。
主催 SRA OSS, Inc. 日本支社

「アシストフォーラム2021」のPostgreSQL事例セッション

日程 2021年7月15日(木⁠⁠ 13:00~13:30
場所 オンライン開催
内容 IT関連のさまざまな分野の総合イベントですが、その中でPostgreSQL(EDB Postgres)関連では、株式会社JALインフォテックによる事例「JALグループが描くグランドデザインの実現を支えるDB基盤とは」の発表があります。
主催 株式会社アシスト

OSS-DB Exam Silver 技術解説無料セミナー

日程 2021年7月25日 ⁠日)13:00~14:15
場所 オンライン開催
内容 OSS-DB Exam Silverの出題範囲から「DBの環境設計・運用設計の基礎」をテーマに関連する項目をピックアップして解説します。ZoomのQ&A機能を利用して講師に直接質問をすることができます。
主催 LPI-Japan

EDB Postgres Vision Tokyo 2021

日程 2021年7月26日(月)10:00~8月1日(日)21:00
場所 オンライン開催(オンデマンド視聴)
内容 PostgreSQLの機能拡張版を提供しているEDB(旧Enterprise DB)のイベントで今年もオンライン開催になりました。⁠The Future is Postgres」をテーマに、PostgreSQLの最新情報と具体的事例がラインナップされています。
主催 EDB

最新!MySQL Kubernetes Operator

日程 2021年7月27日(火)16:00~17:30
場所 オンライン(Zoom)
内容 KubernetesとMySQLを使用した最新のマイクロサービスアプリケーションを開発およびデプロイする方法をご紹介します。オラクルではGitHubで公開していたプロジェクトを刷新し、改めてMySQL Operator for Kubernetesをプレ・リリース版として公開しています。今回のウェビナーではプロジェクトの現状についてもご紹介予定です。本セミナーでは、MySQL Global Business UnitにてMySQLとKubernetesを組み合わせたシステム構築経験を重ねた海外のエンジニアが登壇予定です(英日の同時通訳あり)
主催 日本オラクル株式会社 MySQL Global Business Unit

オープンソースカンファレンス2021 Online/ Kyoto

日程 2021年7月30日(金⁠⁠~7月31日(土)10:00~18:00
場所 オンライン開催
内容 オープンソースカンファレンスはオープンソースの「今」を伝える総合イベントとして、東京だけでなく、北は北海道、南は沖縄まで全国各地で開催していますが、2020年の春以降はオンライン開催になっています。OSSデータベース関連のセミナーについては公開されるプログラムをご参照ください。プログラムはまもなく公開の予定です。
主催 オープンソースカンファレンス実行委員会

MySQL Technology Cafe #13

日程 2021年8月12日(木)19:00~21:00(18:50頃接続開始)予定
内容 オラクルのテクノロジーに限定しない、開発者による開発者のための開発者向けコミュニティMeetupセミナー「Oracle Code Tokyo Night」の企画として開催されているMySQL Technology Caféの第13回開催。k8sの書籍執筆や多数の講演を行ってきた日本オラクルの市川 豊氏がk8sの基礎のおさらいからMySQL Operator for Kubernetesについて解説予定です。
主催 Oracle Code Night

おすすめ記事

記事・ニュース一覧