検索
連載

OSSデータベースのMySQLとPostgreSQLは「次の段階」へ進むDatabase Watch(2016年9月版)(1/2 ページ)

オープンソースデータベースの両雄、MySQLとPostgreSQLはどちらも近々大きく変化を遂げそうです。まだ公式発表前ですが、現在入手できる情報から「来たるべき進化」を考えます。

Share
Tweet
LINE
Hatena

連載バックナンバー

 かつて、新しい技術を生み、育てることは商用製品が主導していました。しかし近年では、すっかりオープンソースのコミュニティーが新技術をリードするようになっています。事実、先進的な考えを持つ多くの参加者が、オープンな場で議論や評価を重ねて技術を研ぎ澄ましていった結果、最終的に商用製品へ実装されていくケースが多数あります。

 2016年現在、「MySQL」と「PostgreSQL」は、そうしたオープンソースリレーショナルデータベースソフトウェア(RDB)の両雄です。お互いがいいライバルとして存在しているからこそ、両雄としてオープンソースのデータベースをけん引し続けていると感じます。

 その両雄が近々、大きな飛躍を遂げそうです。今回は、MySQLとPostgreSQLにおける、近い将来の「来たるべき進化」を現在入手できる情報からまとめました。

次のMySQLは「8.0」、NoSQLに大きく歩み寄り

 現在MySQLの最新版は2015年に発表された「MySQL 5.7」です。メジャーバージョンが「5.0」になった2005年から、バージョンアップごとに小数点第1位の数字を増やしてきました。この流れだと次のバージョン番号は「5.8」になりそうですが、どうも違うようです。

 次は、「MySQL 8.0」になります。米オラクルが2016年9月18日より開催する年次イベント「Oracle OpenWorld 2016」のMySQL関連セッション予定を見ると、「What's new in MySQL 8.0」など「MySQL 8.0」と銘打たれたセッションを多数確認できます。次のバージョン番号が8.0になるのは確実です。

 バージョン番号は進化の指標です。5.7から一気に8.0まで飛躍するということは、何か大きな意味が込められていると思ってしまいます。MySQL Clusterの現行版が7.4なので、今後数字を合わせやすいように8までワープするのかしらなどと思いつつも、MySQLとMySQL Clusterは別物なので合わせる必要はなさそうです。どんな新機能が発表され、今後どのように進化していくのでしょうか。

 現状から推測していきましょう。2015年に発表されたMySQL 5.7の特徴は2つ。「オプティマイザー改善による性能強化」と「JSON(JavaScript Object Notation)型のネイティブサポート」でした。中でもJSONのネイティブサポートはRDBであるMySQLとしては大きな変化です。ちなみに先日、マイクロソフトのクラウド型データベースサービス「Azure SQL Database」もJSONに正式対応しました。


 MySQLのJSONネイティブサポートは、WebやモバイルアプリなどでJSONデータを扱いたい開発者にとって、データベースの選択で「MongoDB」や「Apache CouchDB」といったドキュメント型(NoSQL)データベースだけではなく、RDBであるMySQLも有力な選択肢になります。視点を変えると、MySQLはSQLを扱えるなどRDBでありつつも、JSON型をネイティブサポートするというNoSQLデータベースの側面も持つことになります。RDBとNoSQLのハイブリッドだとも言えそうです。

 同じくオープンソースデータベースのPostgreSQLも早々にJSON対応を進めています。PostgreSQLでは、バージョン9.2からJSON型に対応し、9.4からはJSON-B型に対応するなど、JSON関連機能強化を続けています。つまり、MySQLとPostgreSQLのどちらもJSONでのネイティブ化が進んでいます。

 ちなみに、JSONデータはXMLと同様にテキストベースのデータ形式です。RDBで扱うならば、一般的にBLOB型を使います。あるいは、NoSQLデータベースとはそもそも役割を分担してしまうかもしれません。例えばOracle Databaseユーザーならば、JSONデータをBLOB型で扱うのか、それとも「Oracle NoSQL Database」や「Oracle Berkeley DB」といったNoSQLデータベースを併用するのか、などです。

 MySQLやPostgreSQLは、RDBでありながらも、ネイティブにJSON型を扱えるデータ型のサポートや関数を強化しています。RDBはRDBとして割り切って、JSONは別の製品に委ねるのか、あるいはXMLの時のようにJSONも飲み込んでしまうのか。今後、RDBがどういう方向へ進むのかを占う意味で、興味深いところです。

 MySQLに視点を戻すと、「JSON型のネイティブサポート」の方向性は今後も継続されそうです。むしろこれを1つのきっかけに、「8.0」という新しいステップでドキュメント型NoSQLへ大きく近づいていくと筆者は予想しています。

 実際にMySQL開発者のブログや記事を幾つか確認すると、「ドキュメントストア」というキーワードをよく見かけます。例えばMySQLのオフィシャルTwitterアカウント「@MySQL」で紹介されていた解説記事「InsideMySQL」では、MySQLをドキュメントストアとして使うための解説記事が続いており、力が入っているのが伝わってきます。

 MySQLの「ドキュメントストア」としての概念は次期版に限る話ではなく、現行版でも既にマニュアルに掲載されています。しかし、MySQL 8.0と無縁とは思えません。2016年のOracle OpenWorldではMySQL 8.0に向けたどんなビジョンが語られるのか、楽しみです。

photo Oracle OpenWorld 2015のMySQL基調講演に登壇した、米オラクル MySQL GBU シニアバイスプレジデント兼ゼネラルマネージャーのリッチ・マンソン氏

 MySQLに関して余談です。ITビジネスは東京や大阪などの大都市圏に集中しがちですが、OSSにおいては地方でも盛り上がっているのを最近、よく見かけます。OSSはコストメリットがあるだけではなく、OSS Conferenceなど、“取っつきやすい”と感じさせる地道な啓発活動の効果も大きいのだろうと思っています。

 ちなみに日本オラクルも2017年度の事業戦略会見で、クラウド時代の今だからこそ、「地域格差を是正し、地方活性も狙う」と地域ビジネスの重要性を提言していました。例えば、日本オラクルは徳島県と共催でMySQLイベントを何度か開催しています。県と共催というところに驚きませんか? 地域格差是正のためにも、こうした動きは広がるといいなと思います。


Copyright © ITmedia, Inc. All Rights Reserved.

       | 次のページへ
ページトップに戻る