データベース入門:DBMSとコスト

デジタル時代において、データは企業の成長を左右する重要な資産です。データを効率的に管理・活用するためには、データベース管理システム(DBMS)が欠かせません。しかし、DBMSの導入には多くの費用がかかり、その内訳は一度きりのイニシャルコストだけでなく、長期的なランニングコストも含まれます。本記事では、DBMSの導入時にかかるコストの詳細を明らかにし、どのようにして最適な選択をすべきかを解説します。

* データベースの基礎概念についてはこちらの記事こちらの記事を参照

代表的なDBMS

データベースの機能を提供するソフトウェアのことを「DBMS(Data Base Managemenr System)」と呼びます。様々な企業がDBMSを提供しています。ここでは代表的なDBMSを特徴とともに紹介します。

Oracle

特徴
Oracle Databaseは、特にエンタープライズレベルでの高いパフォーマンスと信頼性を誇る、商用DBMSの代表格です。トランザクション処理や大規模なデータ処理に優れ、また充実したセキュリティ機能とバックアップ機能を備えており、データの高い整合性が求められる業界で重宝されます。さらに、高度なクラスタリング機能「Real Application Clusters(RAC)」により、負荷分散と高可用性を実現しています。
用途
大規模な企業システム、金融、保険、製造業のバックエンドシステムなど

SQL Server

特徴
SQL ServerはMicrosoftが提供するリレーショナルDBMS(RDBMS)で、Windowsとの統合が非常に強力です。GUIを活用した管理がしやすく、データベース開発においてもSQL Server Management Studio(SSMS)を使用することで効率的な管理が可能となります。OLTP(オンライン取引処理)やBI(ビジネスインテリジェンス)など、多様なビジネス要件に対応しており、また、他のMicrosoft製品(AzureやPower BI)とのシームレスな統合が可能で、クラウド環境でも強みを発揮します。
用途
企業のERP, CRMシステム, データ分析, Windows環境下での基幹業務システム

DB2 (Db2)

特徴
DB2(Db2)は、IBMが提供する高性能なリレーショナルDBMS(RDBMS)で、大量データを高速に処理するために設計されています。パフォーマンスチューニングがしやすく、データ分析における効率性が高いことが特徴です。近年ではクラウド対応が進み、ハイブリッドクラウドやマルチクラウド環境での利用が増加しています。
用途
大規模な金融システム、データウェアハウス、政府機関や医療業界のデータ管理

MySQL

特徴
MySQLは、オープンソースDBMSの代表格で、軽量かつ高速な処理が特徴です。特にウェブアプリケーションやスタートアップ企業に広く利用されており、LAMPスタック(Linux, Apache, MySQL, PHP/Python/Perl)の一角を担っています。データセキュリティに加えて、高度なアクセス制御、クエリ最適化、レプリケーション、スケーラビリティなどの機能を提供し、多数のプログラミング言語に対応しています。
用途
中小規模のウェブサービス、ブログプラットフォーム、Eコマースサイト、スタートアップ向けのアプリケーション開発

PostgreSQL

特徴
オープンソースのリレーショナルDBMSで、ACID(Atomicity, Consistency, Isolation, Durability)準拠の高い信頼性を誇ります。複雑なクエリやトランザクションに強く、エンタープライズレベルのアプリケーションでも利用されています。また、標準SQLの大半に準拠していることから他のデータベースシステムとの親和性が高く、基幹システムの商用データベースとの連携や移行がしやすくなります。さらに、業務や事業拡張に伴う、多種多様な形式のデータ(システム)と連携するための機能も備えており、IoTやビッグデータ活用を視野に入れた機能開発も進んでいます。
用途
エンタープライズアプリケーション、地理情報システム(GIS)、高度なデータ分析を必要とするプロジェクト

Firebird

特徴
Firebirdは、オープンソースのリレーショナルDBMS(RDBMS)で、比較的小規模なシステムや埋め込み型データベースとしての利用が多いことが特徴です。トランザクションの一貫性を保証しつつも、軽量でリソース消費が少ないため、組み込みシステムやデスクトップアプリケーションに向いています。高度なセキュリティ機能と安定性が特徴で、SQL準拠のクエリを提供しています。
用途
中小規模の業務システム、デスクトップアプリケーション、組み込みシステム

これらのDBMSは、それぞれ異なる用途や目的に適しています。どのDBMSを選択するかは、プロジェクトの規模、必要なパフォーマンス、コスト、スケーラビリティ、データの一貫性など、さまざまな要素を考慮する必要があります。次章以降ではデータベース構築と運用に係るコストについて解説していきます。

DBMSのイニシャルコスト

DBMS(データベース管理システム)を導入する際に最初に考慮すべき要素の一つが、イニシャルコストです。DBMSにおけるイニシャルコストとは、DBMSを選定・設置するために必要な初期投資であり、ソフトウェアのライセンス料、ハードウェアの購入費用、システム設計やインストール作業にかかるコストなどが含まれます。また、既存のデータベースからの移行や、運用スタッフへのトレーニングコストも重要な要素です。これら初期費用をしっかりと見積もることが、後々の運用をスムーズに進めるための鍵となります。
では、イニシャルコストはどのように見積もる必要があるのでしょう。そこについて、「ライセンス料」主軸をおいて解説したいと思います。

そもそも「ライセンス料」とは、簡単にいえば「ソフトウェアの使用許可料」のことです。要はソフトウェア製品を作った会社なり個人に対してお金を払って、その製品を使わせてもらうわけです。こう聞くと、ライセンス料は、そのソフトウェアの「値段」と考えることもできそうですが、一般に我々が日常生活でものを買う時の「値段」とソフトウェアのライセンス料には、以下の2点において大きな違いがあります。

  1. 販売単位が特殊
  2. ランニングコストも払わないと現実的に引用できない (2に関しては次章で解説)

我々が何かものを買う場合、例えば「1個300円」「1台3万円」など販売単位は「物理的な数量」です。しかし、DBMSを含むソフトウェア製品には「物理的実体」がないため、物理的な単位ではなく、論理的な単位で販売されています。代表的な販売単位は以下の2つです。

  1. プロセッサライセンス:
    DBMSをインストールして作動させるハードウェア(DBサーバ)のCPU性能に応じて値段が決まるライセンス体系
  2. ユーザライセンス:
    DBMSを利用するユーザ数に応じて価格が決まるという価格体系

これら両者に共通するのが「DBMSが動作するシステムの規模が大きくなればなるほど、ライセンス料も高くなる」という特徴を持っていることです。システムの規模が大きくなれば、DBサーのプロセッサ数は増えますし、利用するユーザ数も多くなります。そのようなわけで、多くのDBMSが、プロセッサ性能とユーザ数を基準にライセンスを決めているのです。なお実際は、ある程度の規模をもった商用システムでは、ユーザ数を把握することは難しくなるため、プロセッサライセンスを使用することがほとんどです。

DBMSのランニングコスト

ライセンス料さえ払っていればDBMSが利用できるかというと、そうではありません。前章でも触れた通り、商用システムにおいては「ランニングコスト」が発生することになります。「ランニングコスト」とは、期間が定められたコストです。したがって「月あたりいくら」や「年あたりいくら」のように、必ず「一定期間で〇〇円」という数え方をします。これはつまり、「データベースの利用期間が長いほどかかる料金も増えていく」ということを意味します。
では、データベースのランニングコストとはなんでしょうか。それは「サポート料」です。データベースを利用する中でバグや不可解な動作が起こった場合には、技術的なQ&Aのレベルから緊急修正プログラムリリースまで、データベースの開発元の支援がなくては問題の解決が困難であることもあります。こうしたサポートサービスには、一般的に以下のような項目が含まれます。

  • 技術的なQ&A
  • バグ修正のプログラム(パッチ)リリース
  • 最新バージョンへのアップグレード権
  • 新しいOSやハードウェアへの対応
  • 専門の技術者やコンサルタントによる問題解決
  • ノウハウやバグ情報といった技術データベースへのアクセス権

イニシャルコストとランニングコストの組み合わせ

イニシャルコストとランニングコストの組み合わせとしては、大きく3つの場合が考えられます。

  1. イニシャルコストあり+ランニングコストあり
  2. イニシャルコストあり+ランニングコストなし
  3. イニシャルコストなし+ランニングコストあり

「イニシャルコストあり+ランニングコストあり」

OracleやSQL Serverなど通常のベンダ製のデータベースを使用する場合のモデルであり、商用システム向けでは最も一般的です。

「イニシャルコストあり+ランニングコストなし」

こちらは、保守契約を結ばずに「ノーガード」でいくことを意味するので現実的な選択肢とは言えません。

「イニシャルコストなし+ランニングコストあり」

このパターンとして考えられるケースは、オープンソースのソフトウェア(OSS)を利用するケースです。代表的なところでは、MySQLがあります。

まとめ

DBMS導入には、初期投資となるイニシャルコストと、運用を支えるランニングコストが重要な要素です。特に、システムの規模や用途に応じて最適なDBMSを選択することが、長期的な運用の成功に繋がります。費用対効果を見極め、最適なバランスを保った導入を心がけることが、企業の成長を支える鍵となります。

関連記事

カテゴリー:

ブログ

情シス求人

  1. チームメンバーで作字やってみた#1

ページ上部へ戻る