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

第49回MySQL Notifierのご紹介 、PostgreSQL関連イベント報告と新バージョン続報

この連載では、OSSコンソーシアム データベース部会のメンバーが、さまざまなオープンソースデータベースの毎月の出来事をお伝えしています。MySQLはMySQL Notifierのマイナーバージョンアップを除いて大きな製品リリースはありませんでした。PostgreSQLではイベントEDB Postgres Vision 2019 がありました。

また、来月になりますが、10月10日に東京 渋谷で開催される「オープンソースカンファレンス2019 .Enterprise」において特別枠を用意していただき、OSSコンソーシアムとオープンソースビジネス推進協議会(OBCI)の共同企画として、⁠OSSデータベース比較セミナー』⁠仮称)を実施する計画です。

  • MySQL
  • PostgreSQL
  • MongoDB
  • DB専門家ではないアプリケーション視点からの意見

を、まとめて学べて考える機会にしたいと、ただいま鋭意準備中です。まだ企画自体を調整中なので本当はフライング気味ですが、この連載をお読みいただいている皆さまにはぜひご参加いただいきたいのでお知らせしてしまいます。ご期待ください。

[MySQL]2019年8月の主な出来事

2019年8月はMySQLの製品アップデートはMySQL Notifier 1.1.8のみでした。このバージョンでMySQL 8.0への接続が可能となっています。日本オラクルのOracle Cloud関連イベント「Modern Cloud Days」においてMySQL Cloud Serviceの最新動向が紹介されました。また海外イベントになりますが、8月17, 18日に台北で開催されたオープンソースイベント「COSCUP」にて、MySQL事例セッションとして日本からLINEとスクウェア・エニックスのエンジニアの方々が登壇され、現地でも大きな反響を得ていました。

MySQL Notifierのご紹介

MySQL NoftifierはWindowsのシステムトレイのアイコンからMySQLサーバーの起動停止や動作状況の確認ができる小さなユーティリティーです。MySQL Noftifierの歴史は意外に古く、2012年にリリースされた1.0.3が最初のバージョンです。MySQL NotifierはMySQLサーバーのWindows用インストーラから他のツールと一緒にインストールすることや、単独のインストーラを利用することも可能です。ちなみにMySQL Notifier単独のインストーラはインストーラを含めても2.5MBしかないという非常に小さなプログラムになっています。

MySQL NotifierはローカルのMySQLサーバーだけではなく、Windows Management Instrumentation ⁠WMI⁠⁠ を使用してリモートホストのMySQLサーバーも管理できます。セットアップには管理する側、される側それぞれで設定が必要ですのでリファレンスマニュアルを参照してください。

[PostgreSQL]2019年8月の主な出来事

PostgreSQL関連は月初のイベント2つのレポートをお届けします。

「EDB Postgres Vision Tokyo 2019」レポート

「EDB Postgres Vision Tokyo 2019」は、PostgreSQLをベースとして機能やツールを拡張した、EDB Postgresのカンファレンスです。OSSデータベースがエンタープライズ用途に使われる機会が増えていることを表すように、事前エントリで満員となるセッションが多数ありました。昨年と比べての印象としては、異種DBMSからの移行話が数多く発表されていたことと、各社の説明内容や事例紹介の完成度が上がって説得力が高まったと感じました。

ここでは、この連載でも何回か紹介しているPostgreSQLエンタープライズ・コンソーシアム(PGECons)で一緒に活動しているメンバーのセッションをいくつか紹介します。

EDB Postgres Visionの様子(左上:セミナー会場全景、右上:アシスト高瀬さん、左下:富士通SSL小山田さん、右下:NECソリューションイノベータ黒岩さん)
EDB Postgres Visionの様子(左上:セミナー会場全景、右上:アシスト高瀬さん、左下:富士通SSL小山田さん、右下:NECソリューションイノベータ黒岩さん)

「なぜ、EDB Postgresは選ばれるのか ~採用傾向と最新事例から紐解く適用のポイント~」、高瀬洋子さん(株式会社アシスト)

筆者流にタイトルを勝手に付け替えさせていただくとすると、⁠どのように⁠EDB Postgresが選ばれているか」でしょうか。煙にまく技術論は持ち込まず、眉唾な誇張表現はせず、率直に事実を示すことが最大の武器だと感じられた、納得感がある内容でした。内容をいくつかピックアップします。

  • 2015~2016年にかけてはプライベートクラウドでの採用がグンと増えた。そして2017~2018年にはパブリッククラウドでの採用が一気に増えた。急伸の理由はライセンス形態がプライベートクラウドやパブリッククラウドでの仮想環境で利用しやすいことが大きい。
  • 他のDBMSからの移行ケースが多い。移行ケースの過半があるDBMSのEnterprise Editionからの移行。コストメリットが大きいことが移行の最大の動機。それに加えて、互換性が高く移行がちゃんと実現できていることも示している。
  • CPUは4コアのライセンスが大半。メニコアの実績はまだ多くはないが、事例は出始めている。
  • EDBはさまざまな可用性構成が可能だが、PostgreSQL標準のストリーミングレプリケーションを使った構成が最多。EDBが提供する死活監視機能である、EDB Failover Managerという機能もある。

その後の事例の紹介については本記事では詳細は省略しますが、大企業の標準DBMS化、IoT案件での大量トラフィック、クラウドサービス化に際して移行した複数の例など、事例のバリエーションも増えつつあるようです。

「DBMSの課題に振り回されないためのEDB Postgres活用術」、小山田政紀さん(株式会社富士通ソーシアルサイエンスラボラトリ)

このセッションは全部丸ごと技術の話です。テーマは「解決しないといけない厄介な課題にどう対応するか⁠⁠。取り上げられた課題は、主には次の2点です。

  1. DBサーバのバージョンアップ
  2. 性能問題への対応

今回の小山田さんが示した方法は、EDB PostgresだけでなくOSSのPostgreSQLにも共通するものも含まれています。

DBサーバのバージョンアップのテクニック

DBMSのバージョンアップは、昔も今も厄介な課題のひとつです。これはOSSか商用製品を問いません。なかなか厄介なので安定稼働しているバージョンを長く使い続けるケースも多くあります。しかし、いくら安定稼働しているとしても、古いバージョンを未来永劫使い続けるわけにはいかないのは、商用ライセンス製品でもOSSでも同じことです。

バージョンアップの方法として3種類(+1種類)が示されました。

  • (a)データをダンプしてリストア
  • (b)pg_upgradeを使う
  • (c)ストリーミングレプリケーションとpg_upgradeの併用

方法を選択する際には、元DB(古い方のDB)のバージョンによっては、使えない方法があることに注意が必要です。また、⁠d⁠⁠ ロジカルレプリケーション(postgreSQL 10以降)を使う方法もありますが、バージョン10自体がかなり新しいバージョンで、バージョン10からさらにバージョンアップするケースはまだ少ないでしょう。

性能問題への対応方法

性能問題もDBにまつわる古くて新しい大問題です。エンタープライズITのカスタムアプリケーションで直面するトラブルでは、大半がDBの性能問題ではないかと思うほどです(あくまで筆者の私見ですが⁠⁠。また、⁠目標に対して2割ほど悪い」といった穏やかなものならまだマシなのですが、⁠何10倍も悪い」といったなんとも豪気な大トラブルが起こるのもDBの性能トラブルの特徴でしょう。

小山田さんは、対処方法を3つのパターンに分類して示されました。いずれも、よくある、または、よく聞くパターンだと思います。

(a)想定した性能目標(性能要件)の未達成
道具=CPU使用率測定:その結果iowaitが高ければディスクIO待ちがボトルネックになっているので、データ配置を見直すなどを検討。
道具=DRITA ⁠EDBの拡張⁠⁠。PostgreSQLが保持している稼働状況のデータから、待機イベントがどこで発生しているのかを把握することが可能。このDRITA ⁠Dynamic Runtime Instrumentation Tools Architecture)は、OracleのStatspackのようなもの。
(b) 不定期に性能悪化が発生
道具= pg_stat_acitivity。統計情報を収集。
道具= Wait State拡張モジュール ⁠EDBの拡張⁠⁠。
(c) 特定のSQLの遅延
道具= Index Advisor ⁠EDBの拡張⁠⁠。どういうインデックスを張ったらいいかをアドバイス。
道具= Optimizer Hints ⁠EDBの拡張⁠⁠。ヒントコメントを書くことで実行計画を明示的に制御。

あたりまえですが、トラブルが起こる前に入念な準備をしておくことは現実的には難しいでしょう。だからこそ、自分が使いこなせる道具をある程度の数は持っていないと、トラブルと戦いようがありません。DB分野に限ったことではありませんが、そのことを改めて感じます。

ところで、小山田さんの発表は、短時間の枠に納めるように丁寧に発表内容を選択されていましたが、もっとたくさんお話ししたいことがありそうな雰囲気でした。実は事前に用意したコンテンツは倍ほどもあったらしいのです。OSS界隈で活躍するエンジニアは、自らの知見を惜しみなく公表されますが、この特徴をよく示す例でしょう。今世紀のIT企業とITエンジニアはこういう姿勢でありたいと思います。

「初めてでもできた!EDB Postgresでかんたんマイグレーション」、黒岩絵美子さん(NECソリューションイノベータ株式会社)

「PostgreSQL初心者による⁠やってみた⁠系のセッション」と、紹介するのはちょっと雑すぎるかもしれませんが、間違いではないでしょう。既存のアプリケーションを他のDBMSからEDB Postgresに移行するプロジェクトを、初心者が自力で、アドバイスを受けながらも完遂した体験談です。移行可否の結論としては、⁠完全に自動移行はできなかったものの、かなりの部分がツールを使って移行することができた」とのこと。この結果については、率直に書いてしまえば「まぁそうでしょうね」というものではあります。けれど、このセッションの価値は別のところにもあります。

PostgreSQLに限らず、伸び盛りの分野や製品では、新しく取り組み始める/始めたいと思っている人材を増やすことが、常に熱い議論になります。PostgreSQL関連では、ベテランが高度な難しい解説をする場は、ほどほどにあると思いますが、初心者向けのコンテンツと機会がまだまだ不足しているように感じられます。今回の黒岩さんのセッションは、新しい仲間たちの背中を押してくれる良いきっかけになるのではないかと思います。この業界にいる私たちとしても、こういう発表をしてもらう機会をもっと増やしていくべきでしょう。

「オープンソースカンファレンス2019 Kyoto」と、PostgreSQL 12の良質な情報

京都で行われる「オープンソースカンファレンス」⁠OSC)は、東京以外では唯一の2日間フル開催です。8月2日~3日は両日とも気温が38度と酷暑の中、事務局によると約760名もの来場者があったそうです。

データベース関連では、日本PostgreSQLユーザ会(JPUG)からデータベースリファクタリングという興味深いテーマの発表があり、MySQLとPostgreSQLの最新情報のセッションもありました。そのPostgreSQLのセッションですが、本連載の第47回で紹介したPostgreSQL 12について、SRA OSS近藤さんがコンパクトかつ丁寧にまとめられて発表されました。第47回の記事やリンク先の情報だけではわかりにくかったと思います。今回のOSC京都での発表資料は既に公開されていますので、参照されることをお奨めします。

その他の情報

PostgreSQL本体のアップデート
8月8日にマイナーバージョンアップがリリースされています。セキュリティ修正を含むバグ修正リリースです。バージョン12のべータ3も対象に入っています。

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

MySQLバージョンアップ対策セミナー 名古屋/福岡/東京/大阪

日時 名古屋:2019年9月3日(火)
福岡:2019年9月9日(月)
東京:2019年9月12日(木)
大阪:2019年9月18日(水)
場所 名古屋:日本オラクル株式会社 中日本支社 東海オフィス
福岡:日本オラクル株式会社 西日本支社 九州オフィス
東京:日本オラクル株式会社 本社
大阪:日本オラクル株式会社 西日本支社 関西オフィス
内容 今回のセミナーでは、MySQL8.0へのバージョンアップ方法だけでなく、バージョンアップを実施する上での注意事項や、MySQL 8.0での主要な仕様変更点についても解説します。また、バージョンアップ作業を実施する際に必要となる、MySQLのバックアップ取得方法についてもしっかり解説します。MySQL8.0へのバージョンアップを検討している方には必見のセミナーです。
主催 日本オラクル MySQL GBU

OSS-DB Exam Gold Ver.2.0 技術解説無料セミナー@東京

日時 2019年9月7日(土)13:30~16:30
場所 コンベンションホール AP浜松町 B1F
内容 PostgreSQL技術者認定試験のOSS-DB Exam Gold に向けた技術解説セミナーです。試験対策ではなく、試験概要の説明およびポイント解説です。 OSS-DB の上位資格であるGoldの無料セミナーは頻繁には開催されませんので、この機会を活用されるといいでしょう。
主催 特定非営利活動法人LPI-Japan

PostgreSQL / PowerGresハンズオンセミナー

日時 2019年9月12日(木)15:00~17:00、
場所 SRA グループ池袋オフィスビル
内容 PowerGres の全体像を理解しつつ、実際に機能を体験できるコースで、ノートPCを持参すればインストール・設定までを行うことができます。
主催 SRA OSS Inc.

オープンソースカンファレンス 2019 広島/島根/徳島/福岡

日時 広島:2019年9月15日(日)
島根:2019年9月28日(土)
徳島:2019年10月19日(土)
福岡:2019年11月9日(土)
場所 広島:サテライトキャンパスひろしま(広島県民文化センター 5F)
島根:松江テルサ 4F 大会議室 ⁠島根県松江市・JR松江駅前)
徳島:四国大学交流プラザ ⁠JR徳島駅 徒歩3分)
福岡:九州産業大学 12号館
内容 広島ではMySQLやPostgreSQLに関する講演が予定されており、OSSコンソーシアムも出展します。島根・徳島・福岡のプログラム発表は少々お待ちください。
主催 オープンソースカンファレンス実行委員会

db tech showcase Tokyo 2019

日時 2019年9月25日(水⁠⁠~27日(金)
場所 秋葉原UDXカンファレンス(東京都千代田区外神田4-14-1)
内容 国内最大規模のデータベース技術カンファレンスです。今年は、これまでのデータベースの技術セッションに、AI/機械学習、クラウド、IoTなどのセッションが加わっています。
主催 株式会社インサイトテクノロジー

ゲーム業界向け MySQL事例&最新動向セミナー(仮)

日時 2019年10月3日(水)
場所 日本オラクル株式会社 本社
内容 MySQLをご利用中のゲーム企業各社による事例講演と、Oracle OpenWorld 2019で発表されたMySQLの最新の開発動向をゲーム業界の関係者様向けご紹介するセミナーです。詳細はWebにて近日発表予定。
主催 日本オラクル MySQL GBU

オープンソースカンファレンス 2019 .Enterprise

日時 2019年10月10日(木)
場所 AP渋谷道玄坂渋東シネタワー【OSC受付13F】⁠JR渋谷駅ハチ公改札口より徒歩約1分)
内容 オープンソースカンファレンス(OSC)の企業向け開催です。本記事冒頭でお知らせしたとおり、OSSコンソーシアムでは『OSSデータベース比較セミナー』⁠仮称)を、本イベントの中で実施予定です。
主催 オープンソースカンファレンス実行委員会

PostgreSQL Conference Japan 2019 ~ PostgreSQL は生き残れるか? ~

日時 2019年11月15日(金)
場所 AP品川(東京都港区)「品川駅」高輪口より徒歩3分
内容 PostgreSQL の総合カンファレンスとして、PostgreSQL 自体の進化とコンピューティング環境の変化への対応をディスカッションできるイベント。チュートリアルトラックもあります。
主催 日本PostgreSQLユーザ会 ⁠JPUG)

おすすめ記事

記事・ニュース一覧