システム開発コラム集
システム開発に関するコラム集です。
20.データベースの種類
データベースと言っても、直接、みなさんが見たり触ったりするものではないのでピンとこないでしょう。
しかし、正しい選択をしないとセットアップの手間が増えたり、処理速度が遅くなったり、費用が高かったりする事も起こりえます。
みなさんの立場では、基本的には、システム会社に任せざるを得ないと思いますが、間違った選択をする技術者がいないとも言えません。
提案してきたシステム構成に対して確認できる程度の知識を付けておくと良いかもしれません。
Oracle(オラクル)
Oracle社が販売する世界のシェアNo.1の大規模システム向けデータベースです。
Unix系(Linux含む)、Windows系サーバでも動作し、豊富な機能と大量トランザクションに耐えられ高い信頼性を確保しています。
様々なプログラミング言語との組み合わせが可能で、データベースが持っているPL/SQL言語でのプログラミングも可能です。
ライセンス販売で価格も高めです。
SQL Server(エスキューエルサーバー)
マイクロソフト社が販売している大規模システム向けデータベースです。
Windows系のサーバでのみ動作するデータベースで、様々な機能があり、Transact-SQLと呼ばれるプログラミング言語が使用でき、それを使用したストアドプロシージャと呼ばれるプログラムは、データベース内で動作するため他言語(VB、Java、等)でクエリを実行させるよりも速く処理を行わせる事が出来ます。
大量トランザクションにも耐えられ信頼性は高いです。
ライセンス販売で、利用者数に応じてCALと呼ばれるアクセス権の購入が必要になります。
利用者数やCPU数によりますが価格は高めです。
Sybase(サイベース)
SQL Serverと分れたデータベースです。
機能的には、同じですが後に独自に追加された機能があります。
MySQL(マイエスキューエル)
Oracleが提供しているオープンソース系で最もシェアを持っているデータベースです。
現在、オープンソースは、無料版が基本ですが、商用利用の有料版もあります。
また、大抵のレンタルサーバにインストールされており、ほぼ何れのディストリビューションのLinuxにも入っています。 いくつかの形式のデータベースを選択でき特にMyISAMと呼ばれる形式は、世界で最速と呼ばれていますが、トランザクション、ロールバックと呼ばれる履歴操作は行えません。
速度は一般的ですが、トランザクション、ロールバックが行えるInnoDBと呼ばれる形式も使用が可能です。
MariaDB(マリアデービー)
>元々MySQLを開発していた技術者が独立して開発を行っているデータベースです。
MySQLと同様の機能で、同じくオープンソースです。
サポートや保守はありません。システム会社に依頼する必要があります。
Postgres(ポストグレス)
無料で使用できるオープンソース系データベースです。
MySQL同様に大抵のレンタルサーバにインストールされているデータベースで、何れのディストリビューションのLinuxにも入っています。
性能的には高く評価され、Oracleに匹敵する程の性能と機能を持っており大規模システムでの利用にも耐えるとの噂もあります。
ただ、オープンソースゆえに保証先が無い事、サポートを受ける事が出来ません。
システム会社、サポート代行会社に依頼する必要があります。
Jet(ジェット)
マイクロソフト社が開発したデータベースです。
Microsoft Accessで利用するデータベースで小規模システム向けのデータベースです。
同時にアクセス出来る人数や送信できるクエリが他のデータベースよりも低いですが、閉鎖的な環境での利用の場合には、費用もかからないため逆に有利です。
SQLite(エスキューライト)
ファイルを扱うかのような軽量型のデータベースです。
サーバとして利用するだけではなく、アプリケーション内で利用できる手軽な中小規模システム向きのデータベースです。
その他
Webシステム開発では、見かけない大規模向けのDB2(IBM)、HiRDB(日立)、Symfoware(富士通)、等の有名なデータベースもあります。