【データベース入門】データベースとは

データベース
スポンサーリンク

データベースとは

データベースとは、コンピュータに格納したデータの集まりのことです。

また、データベースを操作するシステムを DBMS(DataBase Management System)と言います。

DBMS では CRUD と呼ばれる以下の機能が実装されています。

  • Create(生成)
  • Read(読み取り)
  • Update(更新)
  • Delete(削除)

データベースの種類

データベースには主に次の3種類の方法でデータを格納します。

データベースの種類説明製品例
リレーショナルデータベース(RDBMS)一般的に二次元の表形式のデータの集合
厳密にはここを参照
https://en.wikipedia.org/wiki/Relational_database
MySQL
PostgreSQL
SQL Server
Oracle Database
階層型データベース木構造のデータの集合
https://is.gd/QiDShY
DNS ※1
LDAP ※1
NoSQL(Not only SQL)二次元の表形式以外のデータの集合
非リレーショナルデータベースとも言われる※2
https://thinkit.co.jp/article/11882
MongoDB
DynamoDB
Elasticsearch
Redis
Neo4j
Cassandra

※1 諸説あり

※1 LDAPは階層型のデータベースと考えると理解しやすいでしょう。

https://software.fujitsu.com/jp/manual/manualfiles/M050000/B1WN4901/02/irep01/irep0010.htm

※1 Yes, definitely LDAP is hierarchical. So is DNS. In fact, DNS, LDAP, and common filesystems are by far the most widely used hierarchical databases. The topic's claim that IMS and Windows Registry are the most common is laughable.

https://en.wikipedia.org/wiki/Talk%3AHierarchical_database_model#LDAP

※2 NoSQLデータベース:NoSQLデータベース(非リレーショナル・データベース)では、非構造化データと半構造化データを格納し、操作できます

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

本記事では、現時点で主流のリレーショナルデータベースを中心に説明します。

データベースの用語

リレーショナルデータベースと SQL(データベースを操作するための言語)で利用する用語は以下のとおりです。

SQL 用語Relational database 用語説明
ロウ
(Row)
Tuple or record1行のこと
カラム
(Column)
Attribute or field1列のこと
行の要素にラベルをつけたもの
テーブル
(Table)
Relation or Base relvar行と列の集合のこと
共通のカラム(属性)を持つ集合
ビュー
(View) or
結果セット
(result set)
Derived relvarSQL によりテーブルから取得した行の集合
https://en.wikipedia.org/wiki/Relational_database#Terminology

データベースの構造

リレーショナルデータベースは以下の構造を持ちます。

構造名説明
テーブル2次元表のこと
スキーマテーブルの集合
「ディレクトリ(フォルダ)」に相当する
データベーススキーマの集合
「データベースユーザーが接続する」単位
インスタンスデータベースの集合
OS の「プロセス」単位

つまり、リレーショナルデータベースは複数のテーブルを持つ階層構造となっています。

なお、複数のテーブル(Relation)を結びつけることを Relationship と言います

なお、リレーショナルデータベースの構造は、以下のように製品によって異なります。

構造名インスタンスデータベーススキーマテーブル
MySQL
データベース=スキーマ ※1

データベース=スキーマ ※1
PostgreSQL○(サーバー)
Oracle△1つのインスタンスに1つまで
SQL Server

※1
CREATE SCHEMA is a synonym for CREATE DATABASE

https://dev.mysql.com/doc/refman/5.6/en/create-database.html

データベースの機能

リレーショナルデータベースは以下の機能を持ちます。

スポンサーリンク

参考資料

0

コメント