GreenplumDBの特徴
ANSI SQL準拠のRDB
1960年代後期、エドガー・F・コッド博士が発表した論文から始まったRDBという分野は、その後1970年代に入りSystemR プロジェクトの始まりとIBM社によるDB2としての製品化や Ingres プロジェクトの台頭とPostgreSQLプロジェクトとしての発展という形で変遷してきました。
GreenplumDB では、この過去40年に渡って培われてきたRDB分野における知恵を活用するため、PostgreSQLの技術も取り入れながら効率的に開発を進めてきました。従いまして、GreenplumDBはBizgres MPPの頃から、SQLの標準規格である ANSI SQL92 や99、そして、2003に準拠しています。この点は、同じくスケールアウトテクノロジーを活用しつつもRDBではないApache Hadoopプロジェクトと大きく異なります。
大規模並列処理
勘の良い方は Bizgres MPP という名前からお気づきかもしれませんが、GreenplumDBでは大規模並列処理(Massively Parallel Processing:MPP)という処理機構を採用しています。MPPはスケールアウトテクノロジーによって複数台設置したサーバを同時に並列処理させることによってクエリなどのデータウェアハウス処理の向上を狙うアプローチです。なお、RDBにMPPが初めて適用されたのは1984年のことでTeradata社が発表した DBC 1012 がそれでした。
オープンなテクノロジーとコモディティハードウェアによる構成
Greenplum社は設立当初からオープンなテクノロジーを最大限活用することを徹底して貫いてきました。ムーアの法則に沿って進むCPU性能の向上、低価格化が進むインタコネクトスイッチ、並列処理の発展が進むLinuxOS。コモディティサーバやスイッチでシステムを構成することでGreenplumDB は、これらの技術革新の流れをGreenplumDBの性能向上と低価格化に役立ててきました。
Yahoo! やGoogleのようなウェブテクノロジーの先端企業からすると当たり前だったこのような特徴は、それまで専用インタコネクトや専用CPUを必要としてきたデータウェアハウス業界にとっては非常に新しい考え方とされました。
拡張性
GreenplumDBでは大規模並列処理により、サーバの増設にあわせて性能を拡張することが可能ですが、これに加え構成しているコモディティハードウェアのためストレージのみの増設も可能です。このため、性能や容量どちらの要件にも柔軟にシステムを向上させることができるという優れた拡張性を誇っています。もちろんこのような拡張に際してもデータを一度外部システムへ退避させる必要はありません。
コミュニティエディションの紹介
GreenplumDBにはコミュニティエディションがありまして、商用サービスでの利用をしないことを前提に無償で利用することが可能です。コミュニティエディションのバイナリはこちらのサイトからダウンロードできますので是非お試し下さい。
次回は、企業におけるRDBMSの課題とGreenplumDBの用途について解説をしていきます。