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

第66回MySQL 8.0.23 & MySQL 5.6最終リリース 、新解釈・PaaS型PostgreSQL

この連載では、OSSコンソーシアム データベース部会のメンバーが、さまざまなオープンソースデータベースの毎月の出来事をお伝えしています。

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

2021年1月のMySQLの製品リリースは、MySQLサーバー8.0.23、5.7.31、5.6.51の各マイナーバージョンをはじめ、MySQL NDB Clusterや各種Connector, MySQL Shell, MySQL Workbenchなどのクライアントプログラムの商用版およびコミュニティ版のほぼ全ての製品のマイナーバージョンアップが行われました。なおMySQL 5.6はこのマイナーバージョンが最終のメンテナンスリリースとなり、今後はごく例外的な状況を除いてセキュリティパッチなども提供されなくなりますので、ご利用中の方はMySQL 8.0などへのバージョンアップをご検討ください。

バージョンアップの際には本連載の第36回でもご紹介したMySQL ShellのUpgrade Checkerのご利用をお勧めします。また、バージョンアップの際の注意点や手順などは以前行われたMySQLバージョンアップ対策セミナーの資料や、本連載の第59回でご紹介した日本MySQLユーザ会代表のとみたまさひろさんが公開されているMySQLのバージョンごとの設定などを比較するツールもあわせて参照してください。

MySQL 8.0.23の新機能

MySQL 8.0.23の主な新機能は下記の通りです。MySQLサーバー開発チームのブログでもMySQL 8.0.23の新機能の紹介がされています。

Invisible Column(非表示)の追加
他のRDBMSでも実装されている機能ですが、列の属性にINVISIBLEを設定すると、列を指定せずにSELECT * FROM テーブル のようにSELECT文を実行した場合には該当の列が返されないようになります。
MySQL 8.0 Reference Manual :13.1.20.10 Invisible Columns
Query attributes(クエリ属性)の追加
Facebookからのコントリビューションで実装された機能です。SQLコメントの追加などアプリケーションが発行するSQL文自体には手を入れずに、実行されるSQL文にメタデータを追加する仕組みです。たとえばどのURLのアクセスによって実行されて、SQL文かをMySQLサーバー側に認識させるなどの利用が想定されています。
MySQL 8.0 Reference Manual :9.6 Query Attributes
レプリケーションのソースのリストと自動切り替え
MySQL 8.0.22で加わったレプリケーションソースの自動的な切り替え機能が強化されています。グループレプリケーションをソースとして、非同期レプリケーションを組み合わせた場合の自動フェールオーバーが改良されました。グループレプリケーション内のノード構成に変更があった場合は、レプリカ側で持っているノードのリストも更新され、確実に接続のフェールオーバーが行われるように改良されています。
MySQL 8.0 Reference Manual :17.4.9 Switching Sources with Asynchronous Connection Failover
テーブルごとのAUTOEXTEND_SIZEの指定
これまではページサイズに応じて表領域ファイルの拡張サイズは固定されていましたが、CREATE TABLE文やALTER TABLE文でAUTOEXTEND_SIZEオプションを指定することで拡張サイズが設定できます。
MySQL 8.0 Reference Manual :15.6.3.9 Tablespace AUTOEXTEND_SIZE Configuration

このほか、InnoDBのユーザー表領域や一時表領域の削除の高速化、InnoDBのダブルライトバッファのファイルの暗号化などの改良が行われているほか、MySQL 8.0.22から始まったレプリケーションに関する用語の改訂に応じてCHANGE MASTER文はCHANGE REPLICATION SOURCE文が推奨となっています。

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

PostgreSQLエンタープライズ・コンソーシアムでは技術勉強会が開催されました。また、2月の事例セミナー開催が発表されました。

PGECons勉強会 #3 「新解釈・PaaS型PostgreSQL」

PostgreSQLエンタープライズ・コンソーシアム(PGECons)技術部会による勉強会が1月21日に開催されました。PGEConsでは年度ごとに成果発表会を開催していますが、⁠テーマを絞ってより深く理解する場が欲しい」という要望にこたえるために、非定期で勉強会という形で実施しています。今回はパブリッククラウド上で提供されるPaaS型のPostgreSQLを複数パターンで比較および検証した結果が紹介されました。

対象となったPaaSですが、AWS(Amazon Web Service)のRDS(Relational Database Service)とAuroraでのPostgreSQLを、コミュニティ版のPostgreSQLと比較、また、Azure Database for PostgresのSingle ServerとHyperscale(Citus)を検証しています。AWSとAzureのガチンコ勝負というわけではありません。AWSもAzureも、機能や非機能要求について机上調査にて比較をしていることに加えて、実環境にて性能測定も行っています。

今回のような比較検証報告の活用の仕方は、単にどちらが優れているかを見て製品選択の参考にするというだけではありません。仮に自分たちが採用するものが既に決まっていたとしても、他のものとの比較は特徴を理解するのにとても役立ちます。また、実環境による検証ではいろいろと試行錯誤をしていますので、結果を得るまでのプロセスやつまずいた点などの情報が、システム構築時に参考になることが多くあります。今回の発表でも「しくじった点」を提示してくれていて、参考になると思います。報告の概要を以下に記しますが、たいへんに詳しい発表資料が公開されていますのでご参照ください。

AWS机上調査から

AuroraとRDSのPostgreSQL、および、オンプレミス環境上のコミュニティ版PostgreSQLについて、可用性/拡張性/保守・運用性などのいわゆる非機能要求を評価しています。

可用性の面では、AuroraやRDSではAZ(Availability Zone)間でのレプリケーションや、ストレージサービスへの自動バックアップなど、クラウドサービスのメリットを活かした機能を実現していて、比較的容易に高可用性を実現することが可能なことがよくわかります。

拡張性の面もクラウドサービスにメリットがあることがよく知られています。ただ、AuroraやRDSのPostgreSQLサーバの場合には注意点もあり、CPUやメモリを増やす場合にはインスタンスタイプの変更になるのでサーバ停止を伴います。データベースサーバとしては注意が必要な点でしょう。一方、ストレージの増設は無停止による拡張が可能です。特にAuroraは自動拡張になります。

保守運用やセキュリティの面では、自由度が少ない(制約が多い)点がいろいろあります。これはクラウド事業者から提供されるサービスであるPaaSのため当然と言えば当然かもしれません。

AWS実環境検証から

AuroraとRDS、IaaSであるEC2上のコミュニティ版PostgreSQLの3種類について性能測定をしています。対象バージョンはPostgreSQL 10.7です。

さまざまな条件で比較測定をしていますが、ここでは一点だけピックアップします。

潤沢なリソース(CPUやメモリ)の環境においてある程度複雑なアプリケーションを実行する条件では、Auroraが高いスループットを実現することができて、RDSやEC2にかなり差がついていました。ただ、言い換えると、それほど大きく無いサーバ環境だったり、比較的シンプルな処理(単純な参照だったり、単純な更新だったりというケース)の場合には、RDSやEC2でもチューニング次第でAuroraよりも高性能になる場合もあると言うことです。

勉強会資料より測定結果例(さまざまな調整をした後の標準的環境と大規模環境での測定結果)
勉強会資料より測定結果例(さまざまな調整をした後の標準的環境と大規模環境での測定結果) 勉強会資料より測定結果例(さまざまな調整をした後の標準的環境と大規模環境での測定結果)

Azureの机上調査から

AzureのSingle ServerとHyperscale(Citus)を解説し比較しています。AWSと同様に、可用性/拡張性/運用・保守性の非機能要求の観点を比べています。また、Single ServerもHyperscale(Citus)もアーキテクチャ的に特徴的なところがあるので、それらについても解説されています。たとえば、Single Serverはコンテナ上でサーバノードが稼働していますが、DBアクセス時にはゲートウェイとなるノードにしか接続できず、各DBコンテナに直接接続はできないません。また、Hyperscale(Citus)はコーディネータノードと複数のワーカノードから構成されて、どのノードにテーブルデータを置くかによって分散テーブル/参照テーブル/ローカルテーブルの形態の違いがあります。

Azureの実環境検証から

AzureのSingle Serverを対象にして、CPUが8コアと32コアの環境で最大スループットを測定しています。AWSの性能検証でも使用したHammerDBというベンチマークテストツールを使った測定では、最初、CPUが8コアの場合と32コアの場合であまり差が出なく、分析の結果、CPUの前にIOボトルネックになっていた模様です。このIOが最初にボトルネックになるのはAWSでも見られたことです。そこで、ストレージサイズを変更してIO性能のボトルネックを回避する様にして追加検証をすると、32コアの場合のスループットが多重度に合わせて伸びています。

今回の報告は前年度の検証成果でありSingle Serverでの性能測定までだったため、今年度はHyperscale(Citus)や、新しくリリースされたばかりのFlexible Serverも含めた検証を予定されているとのことなので、その結果が楽しみです。

勉強会資料より測定結果例(Single ServerのCPUコア数による違いとIOボトルネックを回避した結果)
勉強会資料より測定結果例(Single ServerのCPUコア数による違いとIOボトルネックを回避した結果

PGEConsセミナー「事例から学ぶPostgreSQL活用のヒント~若手エンジニアに訊くPostgreSQLの魅力」

前述のPGEConsの勉強会は活動成果の技術面を深く掘り下げるものでした。2月19日にはビジネス面と人材育成に目を向けたセミナーを開催します。事例紹介の発表が2件と、若手エンジニアの育成をテーマにした座談会を行います。

事例紹介の1件目は、現在もっとも必要とされているオンプレミス環境からクラウド環境への移行に関するものです。そのDB移行時のSQLアセスメントを自動化・省力化するノウハウについて発表される予定です。2件目は個別事例ではなく、多数の採用実績から見えてくる傾向を浮き彫りにしていただけると思います。

また、PGEConsの技術者育成ワーキンググループではPostgreSQLエンジニアを増やしレベルアップしてもらうための課題や方策を検討してきましたが、ここまでの検討結果として技術者育成に向けた論点を整理した上で、若手エンジニアの声も聞きながらPostgreSQLエンジニアの育成について一緒に考えます。

Zoomウェビナーにて開催します。こちらのWebページからお申し込みください。

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

引き続き新型コロナウイルス感染症への警戒が必要な状況の中、各種イベントがオンライン開催が中心になっていますが、通常開催のイベントもあります。オンラインか通常開催かにご注意ください。

世界に先がけて検証!SCSKがMySQLの新サービス「HeatWave」の実力を語る!

日程 2021年2月2日(火)13:30~15:00(ログイン開始 13:15~)
場所 オンライン(Google Meet)
内容 MySQLのクラウドデータベース「MySQL Database Service」の新しい拡張機能として提供された分析処理高速化エンジンであるHeatWaveの紹介と合わせて、SCSKが提供するHeatWaveへの移行サービスの実施をサポートするデータベース・マイグレーション・サービスも合わせてご紹介いたします。MySQLを使用しており分析分野に力を入れたい方、Oracle orporationの研究所が自信を持って送り出した新しいサービス「HeatWave」に興味のある方は、ぜひこの機会にセミナーにご参加ください!
主催 SCSK株式会社
協賛 日本オラクル株式会社 MySQL Global Business Unit

第40回Cassandra勉強会

日程 2021年2月9日(火)10:00~12:00
場所 オンライン(Microsoft Teams)
内容 NoSQLのデータベース Apache Cassandra の技術情報を共有する為の勉強会です。
主催 日本Cassandraコミュニティー

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

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

PGEConsセミナー「事例から学ぶPostgreSQL活用のヒント ~若手エンジニアに訊くPostgreSQLの魅力」

日程 2021年2月19日(金)14:00~17:00
場所 オンライン(Zoomウェビナー)
内容 記事本編でも紹介しましたが、PostgreSQLエンタープライズ・コンソーシアム(PGECons)による、PostgreSQLの活用事例のご紹介、および若手エンジニアに訊くPostgreSQLの魅力と課題をテーマにした座談会付きのセミナーです。
主催 PostgreSQLエンタープライズ・コンソーシアム

MySQLとOracle Cloud Infrastructureによる「エンタープライズグレードのSaaS提供基盤のデザインTips」

日程 2021年2月25日(木)午後
場所 オンライン(Zoom)
内容 オラクルが提供するOracle Cloud Infrastructure(OCI)とMySQL Database ServiceおよびHeatWaveによる圧倒的なコストパフォーマンスでデータベースを運用できる環境を活用したエンタープライズグレードのSaaS提供基盤のデザインTipsをご紹介するウェビナーです。
主催 日本オラクル株式会社 MySQL Global Business Unit

ゲーム業界におけるMySQL Vol.2 ~スクウェア・エニックスの検証結果に学ぶ、MySQL HeatWaveを用いたクエリ爆速術~(仮)

日程 2021年3月4日(木)午後
場所 オンライン(Zoom)
内容 数多くのゲーム開発関連企業様にご参加いただいた「ゲーム業界におけるMySQLセミナー」シリーズの第2弾を開催いたします。ゲーム業界のリーディングカンパニーであるスクウェア・エニックスは、オラクルが提供するMySQL Database Serviceの分析エンジンHeatWaveをリリースに先駆けて検証されました。今回のウェビナーでは、スクウェア・エニックスで実際にHeatWaveの検証を担当されたエンジニアから結果を解説いただく予定です。⁠申し込みページは近日公開予定)
主催 日本オラクル株式会社 MySQL Global Business Unit

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

日程 2021年3月5日(金⁠⁠~6日(土)10:00~18:00
場所 オンライン開催
内容 オープンソースカンファレンスのオンライン開催も2巡目になりました。この回は2日間に拡大して開催されます。OSSコンソーシアムはオープンソースビジネス推進協議会(OBCI)やその他のOSS関連団体と協力して特別セミナーを開催します。また、OSSデータベース関連のセミナーも多数実施されると推察します。
主催 オープンソースカンファレンス実行委員会

第6回Reactive System Meetup in 西新宿

日程 2021年3月5日(金)19:00~22:00
場所 オンライン開催
内容 リアクティブシステムの勉強会をオンラインで開催します。CassandraとMariaDBという2つの性質の異なるデータベースの特性を活かして実現したリアクティブシステムのアーキテクチャなどを紹介します。本アーキテクチャは「Lerna」としてOSS公開しています。
主催 Chatwork株式会社、TIS株式会社

おすすめ記事

記事・ニュース一覧