【3分ITキーワード】 PostgreSQL

f:id:PentaSecurity:20171120141215p:plain

PostgreSQL

 

PostgreSQLは、MySQLオープンソースDBMSで、同じエンタープライズレベルの機能と、多様な拡張機能があります。商用製品「Oracle」と機能が近いこともあり、主に企業情報システムのデータベースなどとして採用されています。

 

先週は世界中で最もよく利用されているオープンソースのデータベースであるMySQLを紹介しました。今週もま他の便利なオープンソースDBMSを紹介します。 PostgreSQL(http://www.postgresql.org)は、北米や日本ですでに高い認知度と人気を持っているRDBMSと評価されています。今日は、PostgreSQLがどのようにして作られたのかを含めて、その特長、最後にPostgreSQLのセキュリティ性について説明したいと思います。

 

PostgreSQLは、オブジェクト-リレーショナルデータベース管理システム(ORDBMS)で、エンタープライズレベルDBMSの機能と、次世代DBMSで見ることができそうな多くの機能を提供するオープンソースDBMSです。実際に機能的な面ではOracleに似ている点が多くて、Oracleユーザーが最も簡単に適応しやすいオープンソース という評価も多いです。

 

PostgreSQL誕生以前に様々な製品があったのですが、その中でもIngres(INteractive Graphics REtrieval System)はPostgreSQLの源流だと言っても間違いはないと思います。Ingresは、現在も活発に活動しているデータベース系の巨匠、Michael Stonebrakerが始めたプロジェクトです。

 

Ingresは1977年に米バークレー・大学で始まったプロジェクトで、その後、Ingresの後継ということでPostgres(Post-Ingres)という、新しいプロジェクトも進行されたのです。1991年、Postgresバージョン3が発売されて多くのユーザーを確保したものの、ユーザサポートに対する負担が増加して、結局プロジェクトは1993年に終了しました。

 

しかし、Postgresユーザや学生たちがプロジェクト終了とは別で、Postgresの開発し続けながらSQL支援や構造改善を通じて、初期Postgresよりも40%早い性能を持ったPostgres95が誕生しました。そして1996年、Postgre95がオープンソースになってから、1997年に最初バージョンを6.0に決めて、現在私たちが知っている「PostgreSQL」が発売されたのです。「PostgreSQL」という名は、Postgreを後継したことやSQLをサポートする(PostgresはSQLではなく、QUELという言語を支援しました)ことを反映して作られたそうです。その後もPostgreSQLオープンソースコミュニティによって今も活発に開発されています。

 

PostgreSQLのロゴは「Slonik」という名を持った象です。この象をロゴに使用するようになった正確な理由は見つからないですが、 PostgreSQLオープンソース化された直後、あるユーザがアガサ・クリスティの小説の「象は記憶する」からアイデアを得て、ロゴに決定されたのではないかという 推測があります。その後、すべての公式上では、常にこのロゴは使うようになりました。象は大きい同時に強くて、そして記憶力のいいという頼もしいイメージのを持っているので、PostgreSQLだけではなく、HadoopEvernoteも公式ロゴで像を使っています。

 

今からはPostgreSQLの特徴にかんして話したいと思います。以下は、多くの使用者が思うPostgreSQLの代表的な特徴だそうです。

 

1.'信頼度'はPostgreSQLの最優先事項

2.ACIDおよびトランザクションサポート

3.多様なインデクシン技法サポート

4.柔軟なFull-text search機能

5.同時性性能を高めるMVCC機能

6.多様で柔軟な複製方式の支援

7.多様なプロシージャ(PL/pgSQLPerlPythonRuby、TCL等)/インターフェース(JDBCODBCC/C++、Net、PerlPython等)言語

8.良質のコミュニティサポートや商業的な支援

9.よくできた文書および十分なマニュアル提供

 

そして、様々な拡張機能拡張機能開発の容易性などがあって、PostgreSQLだけの差別化された拡張機能で次のようなことがあります。

 

1.GIS add-onの支援(PostGIS)

2.Key-Valueストア拡張機能(HStore)

3.DBLink機能

4.Crypto、UUIDなど様々な関数、タイプ支援

 

まだMySQLの人気度や使用率がはるかに高いですが、PostgreSQLだけの進歩的で、差別化された機能拡張性とオープンソース開発者の持続的拡充につれ、より多くの人たちがPostgreSQLを使うことになりました。このように多くの人が利用することによって、オープンソースDBMS上でもデータセキュリティに対する深刻性が注目されていて、データ流出および偽変造防止のための暗号化が必要とされていますが、PostgreSQLの場合は適合した暗号ソリューションがなかったです。しかし先月、ペンタセキュリティDB暗号化ソリューションとしてMySQLMariaDB、PerconaDBに対応できるMyDiamo(マイ・ディアモ)に加え、PostgreSQL DBの暗号化を提供し始めました。ペンタセキュリティを通じると安全で、高いレベルのPostgreSQLを暗号化できます。PostgreSQL暗号化について詳しい内容は以下のイメージをクリックしてください。

 

出典

         https://www.ossnews.jp/oss_info/postgresql

 

f:id:PentaSecurity:20170707092557p:plain