データベースとは

Image from Gyazo

データベースとは

データベース(DB: Database) とは何でしょうか. 広義の意味では単に「データの集まり」がデータベースであると言えます. 意識したことはあまりないかもしれませんが,身の回りにデータベースは多く存在しています. 例えば,スマートフォンで管理しているアドレス帳も,氏名電話番号, メールアドレス を管理するためのデータベースと言えます. その他にも,Amazonや楽天などのショッピングサイトは顧客情報,商品情報,また,皆さんが所属する大学は学生情報,科目情報などをデータベースとして管理しています. このように考えると,皆さんは日常的にデータベースに囲まれながら生活していると考えることができますね.

データベースで管理されるデータとは

次にデータベースで管理されるデータについて考えてみましょう. 一般に,データベースは,何かしらの目的を持って構築されます. 例えば,スマートフォンのアドレス帳は,氏名電話番号, メールアドレス を収集することで, 特定の相手への電話やメールでのコンタクトを可能にしています. このように,データは目的に合わせ,一定の規則に従って収集されることになります. また,これらをまとめたデータの基地(ベース)が データベース と言えます.

氏名 電話番号 メールアドレス
高谷舞衣 0786857519 mai@mctp.tubcn.pml
福岡豊樹 0265723899 toyoki@fhixe.lg
西村朱音 0178189244 akane@dpqknirhzo.sn

データベースの管理方法

さて,このようなデータベースを管理するにはどのような方法があるでしょうか. 古くは手帳などの紙媒体で記録していましたが,現代はコンピュータを用いて管理するのが一般的です(もちろんスマートフォンも含む). 皆さんがコンピュータでデータを管理する時はどんなソフトウェアを用いるでしょうか. 最も身近なソフトウェアは Excel ではないでしょうか. それでは,Excelで上記のアドレス帳のデータを作成してみましょう.

Image from Gyazo

このようにExcelで作成したファイルもデータベースと言えます. この例では,たった3件のデータしか含まれておらず,データ入力や検索は容易に行うことができます. しかし,現代のデータベースでは,より多くのデータ(いわゆるビッグデータ)を対象とする必要があり, Excel で管理するには無理がありそうです.

データベースの種類

Excelなどでは扱いが難しい大量のデータを管理するために, データベースのための専用のソフトウェアが存在します. これらを データベース管理システム(DataBase Management System: DBMS) と呼びます. まずは,記録するデータの構造に合わせて,データベース管理システムを分類してみましょう.

階層型データベース

階層構造(木構造)でデータを管理するデータベースです. データは親と子の関係で結び付けられており,階層のトップ(根)から下に向かってデータを検索します. 階層構造で管理されるコンピュータのフォルダやファイルを想像すると良いでしょう, 初期のデータベースであり,現代ではあまり用いられることはなくなりました, 代表的なDBMSにはIMS(Information Management System)があります.

Image from Gyazo

ネットワーク型データベース

階層型データベースとは異なり,データに親子関係は存在せず, 任意の個数のデータと関係を持つことができます. これによりデータは網目状に繋がりを持つことになります. リンクで相互に関連付けられたウェブページを想像すると良いでしょう. 後述のリレーションデータベースの台頭により,現代ではあまり用いられていません. 代表的なDBMSにはIDMS(Integrated Database Management System)があります.

Image from Gyazo

リレーショナルデータベース

二次元の表形式でデータを管理するデータベースです. 上述のアドレス帳も,リレーショナルデータベースと言えます. Edgar Frank Codd氏が, 1970年に論文「A Relational Model of Data for Large Shared Data Banks」を発表したことが始まりとされています. ポピュラーで信頼性の高いデータベースであり, この授業で取り上げる内容の多くは,このリレーショナルデータベースです. 単に「データベース」と表現する場合も多く,デファクトスタンダードなデータベースと言えるでしょう. 最初のリレーションデータベースの実装はIBMが開発したSystem Rであり, 現在は,Oracle DatabaseMicrosoft SQL ServerMySQLPostgreSQLなど様々なDBMSがあります.

NoSQLデータベース

リレーショナルデータベース以外のデータベースの総称です. リレーショナルデータベースへの問い合わせには SQL という言語を用いるため, このSQLを用いないという意味で NoSQL と呼ばれます. リレーショナルデータベースでも対応が難しい ビッグデータ の管理を目的としていることが殆どであり, シンプルな構造で,高速にデータを処理することが可能です. 代表的なDBMSには,Key-Valueストア型データベースのMemCachedRedis,また, カラム指向データベースのHBaseCassandraなどがあります.

例題1

リレーショナルデータベースを最初に提唱した人は誰か. また,リレーショナルデータベースを最初に実装したデータベース管理システム(ソフトウェア)は何か.

データベースの歴史

参考書籍

愛知県名古屋市にある椙山女学園大学 文化情報学部 向研究室の公式サイトです. 専門は情報科学であり,人工知能やデータベースなどの技術要素を指導しています. この公式サイトでは,授業で使用している教材を公開すると共に, ベールに包まれた女子大教員のミステリアスな日常を4コマ漫画でお伝えしていきます. サイトに関するご意見やご質問はFacebookまたはTwitterでお問い合わせください.