データベースのイロハ:そもそもデータベースとは?

鈴木浩司(日本オラクル)
2007-08-27 17:00:00
  • このエントリーをはてなブックマークに追加

表計算ソフトとDBMS

 さて、皆さんの中には、「わざわざ難しいデータベースを利用しなくても、Excelのような表計算ソフトで十分!」と思っている方も多いのではと思います。もちろん、データを集計したり、グラフを作成したりというデータの操作という個人での作業ではExcelなどの表計算ソフトはとても使いやすいと思います。しかし、業務においては同じデータを複数の人が利用することが多くなります。ここでは、Microsoft Excelを例に挙げ、ファイルでデータを管理する場合とデータベースを利用する場合とを「ファイルの場所」と「ファイル共有」という2つの点から比べてみましょう。

ファイルの位置

 企業で扱うデータには、社員データ、顧客データ、在庫データ、売上データなど様々なものがあります。それらをそれぞれのMicrosoft Excelのファイルとして管理することができます。しかし、それらのファイルがどのマシンのどのフォルダに格納されているのか。また、どのシートのどのセルを見たら良いのかというのは、すべて利用するユーザーが予め知らなければ利用できません。Microsoft Excelではセルに自由にデータを配置できる為、あるユーザーには非常に利用しやすい形式で並んでいても、他のユーザーでは非常に利用しにくいということもあります。

 また、Microsoft Excelを使って社員の住所録データを、住所録.xlsとして保存していたとします。これをMicrosoft Wordで利用したいとした場合、Microsoft Wordで開こうと思っても開くことはできません。同じデータであっても、Microsoft Wordで扱うことができる形式でファイルを作成しなければなりません。このようにファイルを利用したアプリケーションでデータを管理すると利用するアプリケーションが制限されてしまうということもあります。

 それに対し、データベースでは複数のデータでも一元的に管理されるため、利用するユーザーはどこに格納されているかを意識する必要がありません。他のアプリケーションを利用する場合でも、そのプログラムがデータベースに対し必要なデータを要求するだけで、データベースがプログラムに代わってデータを取り出します。利用者やアプリケーションがデータの位置やどのように格納されているかを意識する必要がなくなります。

図2 データの位置や場所における違い 図2 データの位置や場所における違い

ファイルの共有

 次に1つのMicrosoft Excelのファイルを複数の人が利用する場合を考えてみましょう。Microsoft Excelでは、開こうとしたファイルを他のユーザーが使用している場合、Microsoft Excelが”他のユーザーがそのファイルを利用している”と教えてくれます。これは一見「親切だなぁ」って思いますが、それだけでは業務に支障が出てしまいます。「別にデータは変更しないから、参照さえできれば」と思いますよね?しかし、Microsoft Excelでは、最初にそのファイルを開いた人が加えた変更を他のファイルの利用者には教えてくれません。「同時に開いてしまった為に、更新前のデータで資料を作成してしまった」ということも起こってしまうのです。

 また、読者がそのデータを更新したいとしたらどうでしょうか?最初にファイルを開いたユーザーがファイルを閉じずに席を外してしまうと、新しいデータは更新できずに古いデータを利用されてしまうということが起こってしまいます。この様にデータをMicrosoft Excelのようなファイルに格納してしまうと「データの整合性」をとることが難しくなります。

 それに対してデータベースでは、複数のユーザーが同時に1つのデータを利用したい場合には、DBMSが制御してくれます。これにより、同時にデータを利用しているユーザーは、他のユーザーが変更した内容を即時に確認することができます。

図3 データの共有における違い 図3 データの共有における違い

 このようにデータを利用する際の「位置」や「共有」という場面で、データを格納するファイルとDBMSとの違いを説明してきましたが、たくさんのデータを扱う場合、複数の利用者がいる場合、DBMSを利用することで大きなメリットがあることが少しはご理解頂けたかと思います。

 次回は、DBMSの種類や構造についてお話したいと思います。

鈴木浩司
筆者紹介

鈴木浩司(すずき こうじ)
日本オラクル株式会社 システム製品統括本部
クロスインダストリービジネス推進本部

担当製品: Oracle Fusion Middleware
経歴: SI企業にて、約8年システム開発に携わる。日本オラクルに営業として入社。エンジニアにコンバートされ、Java,SOA,IDM製品を担当。現在に至る。
一言: 本連載を書くにあたり、最初に勤めた企業にて「ユーザーからの問い合わせをデータベース化しよう」と初めてデータベースの勉強をし挫折したことを思い出しました。もう10年近い昔の話です(笑)。そんな経験を元に、できるだけわかりやすく書いていきたいと思っています。今、日本オラクルでは開発者向けに多数のセミナーを実施しています。是非ご参加下さい!

  • コメント(2件)
#1 anonymous   2010-07-13 16:39:11
データの位置とファイルの共有の説明に使われている画像が逆ではないかと思います。
#2 とっしゅ   2013-01-25 17:38:08
図の2と3が逆です。
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]