![]() |
| DATABASE |
| データモデリング(工事中) |
| Oracle(工事中) |
| 第1章 データベースの概要 |
| 1.1.データベースとは |
データベースとは、「様々な目的を考慮して整理整頓されたデータの集まり」である。 データベースはただ整理整頓されているだけでも役にたつが、データベースを管理する仕組みが 利用者に提供されることで更に快適にそのデータベースを利用できるようになる。 このデータベースを管理する仕組みをデータベース管理システムといい、データベースとデータベース 管理システムの総称をデータベースシステムと呼ぶ。(図1)
※尚、Oracle,SQLserverなどの各種製品は データベースシステムをデータベースとして扱っているため、今後特に断りのない場合は、データベースシステムを データベースという呼称で統一して呼ぶこととする。 |
|
![]() |
| 1.2.データベースの役割 |
| データベースには大きく5つの役割が存在する。 |
| 1 | データの整合性 | データに一貫性を持たせて管理し、整合性をもたせる |
|---|---|---|
| 2 | データの非重複 | データの重複を排除する |
| 3 | データアクセスの標準化 | データ利用の標準化を行い、各種プログラムへのインターフェイスを提供する |
| 4 | データの機密性 | データへのアクセス制限を管理する |
| 5 | データの障害回復 | データベースに何らかの障害が発生した場合でも、DBMS はこれを回復するための手段をあらかじめ講じている。 |
| 1.3.データベースの機能 |
| 1.2.で記したデータベースの役割を満たすため、データベースは大きく6つの機能を有する。 |
| 1 | データベース定義操作言語 | データベースのオブジェクト(テーブル、ビューなど)を定義し、操作するための言語。RDBはSQL、XMLDBはXQUERYがW3Cで勧告されている。 |
|---|---|---|
| 2 | 整合性管理機能 | データの整合性を保持するための機能(RDB:参照整合性制約、CHECK制約…) |
| 3 | セキュリティ管理機能 | データベースの機密保護をするための機能(RDB:ロール、アクセス権…) |
| 4 | トランザクション管理機能 | データの一貫性を保持するための機能(ACID特性、ロック) |
| 5 | 障害回復機能 | 障害発生時にデータベースを復旧するための機能(バックアップ、リカバリ…) |
| 6 | データベース管理機能 | データベースの起動、停止などの管理を行うための機能 |
| 1.4.データベースの種類 |
| 現在の主要なデータベースは大きく以下の3つに分類できる。 |
| 1 | RDB(Relational Database) | データを2次元の表の集合として扱うデータベース |
|---|---|---|
| 2 | OODB(Object Oriented Database) | オブジェクト指向言語で作成したオブジェクトを格納できるデータベース |
| 3 | XMLDB(XML Database) | データをXML形式で格納するデータベース |
| またこれらのデータベースは以下のような特徴を持つ。 |
| 1 | データ処理速度 | RDB → OODB → XMLDB |
|---|---|---|
| 2 | データ構造の柔軟性 | XMLDB → OODB → RDB :RDBは正規化が必要なため、データ構造の変化の影響が大きい |
| 3 | 開発ノウハウ | RDB>OODB≒XMLDB :RDBは数十年の開発実績がある |
| 4 | 堅牢性 | RDB>OODB≒XMLDB :RDBは数十年の運用実績がある |
|