あらゆるITシステムの要(かなめ)といえるのが「データベース」です。エンジニアのみならず、企業システムに携わるビジネスパーソンにとって、その基礎知識の習得は不可欠です。新刊『データベースをなぜつくるのか』(矢沢久雄著)から、データベースの役割と必要な知識を抜粋・再編集して紹介します。その第1回。

 米国の経済雑誌であるフォーブスでは、毎年、業種ごとに、世界の企業のランキングを発表しています。このランキングは、売上高、利益、資産、市場価値などから総合的に評価されたものです。図1.1は、同誌が発表した2023年度の世界ランキングにおけるソフトウェア企業のトップ3です。

画像のクリックで拡大表示

 第1位がマイクロソフトであることには、納得できるでしょう。世界中のパソコンのユーザーが、マイクロソフトのWindowsやOfficeを使っているからです。第2位がアルファベット(グーグルの親会社)であることにも、納得できるでしょう。世界中のパソコンやスマホのユーザーが、グーグルのAndroidや多彩なアプリを使っているからです。それでは、第3位のオラクルは、何のソフトウェアを開発・販売しているのでしょうか?

 オラクルの主力製品は、「Oracle Database」という「DBMS(DataBase Management System=データべ-ス管理システム)」です。DBMSは、データベース・システムを実現するためのソフトウェアです。オラクルが、世界のソフトウェア企業のランキングで第3位に入るのは、それだけ多くのデータベース・システムが使われているからです。データベース・システムが、会計や物流など、社会のさまざまな業務を支えているのです。

「データベース」という言葉の意味

 「データベース」という言葉は、米国の軍事用語であり、「データ」の「基地(ベース)」という意味です。当初は、data baseという2つの単語でしたが、データベースが広く普及した現在ではdatabaseという1つの単語になっています。

 オラクルは、データベースのことを次のように定義しています※1

*1 https://www.oracle.com/jp/database/what-is-database/

 データベースとは、構造化した情報またはデータの組織的な集合であり、通常はコンピューター・システムに電子的に格納されています。データベースは通常、データベース管理システム(DBMS)で制御します。データとDBMS、およびそれらに関連するアプリケーションをまとめてデータベース・システムと呼びます。多くの場合は単にデータベースと呼んでいます。


 データベース・システムは多くの場合、サーバー上でDBMSが動作しデータは、サーバー上のファイルに格納されています。それをクライアントが直接利用するのではなく、DBMSを介して間接的に利用するのです。DBMSがデータを管理しているからです(図1.2)。

画像のクリックで拡大表示

データベースとワープロはどう違うのか

 ワープロや表計算ソフトなどでもファイルにデータを格納できますが、これらとデータベースは何が違うのでしょうか? ワープロや表計算ソフトのデータは多くの場合、1人のユーザーが利用します。データが比較的少量であり、特定のアプリだけから利用されます。それに対して、データベースのデータは、複数のユーザーが利用します。データが多量あるいは大量であり、さまざまなアプリから利用されます。

画像のクリックで拡大表示

 データベース・システムを作るには、まず「設計」、言い換えれば「どのようにシステムを作るかを図や文書で明確に示すこと」をして、次に「実装」、言い換えれば「実際に動作するシステムを作ること」をします。

 本書の主要なテーマは、「E-R図(イーアールず)」と「SQL(エスキューエル)」です。E-R図は、データベース・システムの設計で使われる図示技法です。SQLは、データベース・システムの実装で使われる言語です。次回、詳しく説明します。

(写真:tanakorn/stock.adobe.com)
(写真:tanakorn/stock.adobe.com)
画像のクリックで拡大表示
本書のテーマは、コンピュータ・システムで重要な役割を果たしている「データベース」。その基礎知識をイチから説明したうえで、データベースの設計で使われるE-R図と、データベースの実装で使われるSQLを詳しく説明します。Pythonを使って、データベースを利用するプログラムの作り方も示します。これらを知れば、データベースの仕組みが具体的にわかるだけでなく、その作り方も具体的にわかります。

矢沢久雄(著)、日経BP、2750円(税込み)