PostgreSQLがいきなり“9.0”に飛んだ理由
2010/7/20
PostgreSQL 9.0でNoSQLへと進むか?
オープンソースの世界は動きが素早いです。商用データベース製品ですとバージョンアップは数年に1度という頻度ですが、オープンソースだとおよそ1年に1度、新バージョンを目にするということも珍しくありません。新しい技術やトレンドを素早く取り込もうとするコミュニティの熱意がそうさせるのかもしれませんね。
さて、次に新しいバージョンを出そうとしているのはPostgreSQLです。前の8.4のリリースが2009年7月なので、まだ1年しか過ぎていません。早いです。2009年11月のPostgreSQL Conference 2009 Japanでは次バージョンを「8.5」と呼んでいましたが、一挙に「9.0」にすると決まったようです。
6月19日に日本PostgreSQLユーザ会が開催した「JPUG 2010 年夏セミナー」では、PostgreSQLのコミッター(本体のソースコードを変更できる人)でもあるNTTオープンソフトウエアセンタの板垣貴裕氏が、PostgreSQL 9.0の特徴について解説しました。
PostgreSQL 9.0は6月4日にベータ2をリリースし、正式版リリースは2010年夏を予定しています。9.0の目玉は2009年12月号でも予告した通り、なんといってもホットスタンバイとストリーミング・レプリケーションです。
Database Watch 2009年12月版
「コミュニティ活動で人のリレーションを作ろう!」
http://www.atmarkit.co.jp/fdb/rensai/dbwatch2009/dbwatch200912_01.html
ホットスタンバイは、アーカイブリカバリ中の参照処理を許可するもので、ストリーミングレプリケーションはトランザクションログをストリーム的に転送するものです。これまではスタンバイ側はリードもライトもできませんでしたが、9.0ならリードが可能になります。また更新の伝播がWAL(Write Ahead Logging)のファイル単位からレコード単位となるので、遅延を減らすことが期待できます。
図1 ウォームスタンバイとホットスタンバイ(JPUG 2010夏セミナー板垣氏資料より引用)レプリケーション機能については、今回の本体に実装されるストリーミング・レプリケーションのほかにSlony-Iやpgpool-IIなどがすでに出ています。それぞれ特徴があるので、何を重視するかにより使い分けることになりそうです。
ほかにも9.0では排他制約やVACUUM FULLの高速化が特徴として挙げられます。排他制約は地理データ時間の範囲などで重複を避けるようにするものです。近年GPSや地図を活用したアプリケーション、またはスケジュールを調整するアプリケーションなどで役に立ちそうです。VACUUM FULLについては仕様が変わり高速化しましたが、ほとんどの場合は通常のVACUUMで十分だそうです。
ところで「9.0」というバージョン番号が目を引きます。板垣氏によると、9.0にした大きな理由としては、「要望の多かったレプリケーション機能を取り入れたこと」の「記念」の意味があるようです。また開発者として「自信作」の証しでもあるとのこと。
私感ですが、この9.0はこのデータベースの転換点になる可能性も秘めているのではないでしょうか。8.0ではPostgreSQLはWindows対応し、エンタープライズ環境での利用を想定し性能を飛躍的に伸ばしてきました。そして昨今ではクラウドやNoSQLが注目されています。そうした背景もあり、新しいステージへとステップアップしようという狙いがあるように感じます。
それと少し関連して、JPUGのセミナーで板垣氏が「PostgreSQL is NoSQL!」と掲げる場面もありました。PostgreSQLがRDBMSからNoSQLへの転換か? とちょっとびっくり。
しかし違います。板垣氏は注目を集めるためにちょっと誇張表現したそうです。真意としては「PostgreSQLは9.0からNoSQLへと変わる!」というわけではなく「NoSQL的な側面も持つようになる」くらいのニュアンスです。
実際に9.0からはKVSなど非構造データにも対応します。SQLに限定せず、適材適所で異なるデータモデルやミドルウェアを使えるようになるとのこと。それに何よりもレプリケーション機能です。NoSQLの本当の良さとはスケールアウトできること。板垣氏は「そういう意味では、PostgreSQL 9.0 はレプリケーションによる参照分散でスケールアウトへの道の一歩目になるのではないかと思います」と話していました。
PostgreSQL 9.xが今後どう進化を遂げるのか、楽しみになってきましたね。
1/2 |
Index | |
PostgreSQLがいきなり“9.0”に飛んだ理由 | |
Page 1 PostgreSQL 9.0でNoSQLへと進むか? |
|
Page 2 オラクル性能向上のためのヒントを2つ NoSQLデータベースの本命となるか、Membase |
- Oracleライセンス「SE2」検証 CPUスレッド数制限はどんな仕組みで制御されるのか (2017/7/26)
データベース管理システムの運用でトラブルが発生したらどうするか。DBサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は、Oracle SE2の「CPUスレッド数制限」がどんな仕組みで行われるのかを検証します - ドメイン参加後、SQL Serverが起動しなくなった (2017/7/24)
本連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「ドメイン参加後にSQL Serverが起動しなくなった場合の対処方法」を解説します - さらに高度なSQL実行計画の取得」のために理解しておくべきこと (2017/7/21)
日本オラクルのデータベーススペシャリストが「DBAがすぐ実践できる即効テクニック」を紹介する本連載。今回は「より高度なSQL実行計画を取得するために、理解しておいてほしいこと」を解説します - データベースセキュリティが「各種ガイドライン」に記載され始めている事実 (2017/7/20)
本連載では、「データベースセキュリティに必要な対策」を学び、DBMSでの「具体的な実装方法」や「Tips」などを紹介していきます。今回は、「各種ガイドラインが示すコンプライアンス要件に、データベースのセキュリティはどのように記載されているのか」を解説します
|
|