データベースの種類にはどんなものがあるのか?|図解を使って3分でわかりやすく解説します【データベース初心者向け】

用語解説

こんちには。キノコードです。
このレッスンでは、データベースの種類について説明をします。

▼YouTube動画はこちらからどうぞ。

この記事の執筆・監修

キノコード
キノコード    

テクノロジーアンドデザインカンパニー株式会社のCEO。
日本最大級のプログラミング教育のYouTubeチャンネル「キノコード」や、プログラミング学習サービス「キノクエスト」を運営。
著書「あなたの仕事が一瞬で片付くPythonによる自動化仕事術」や、雑誌「日経ソフトウエア」や「シェルスクリプトマガジン」への寄稿など実績多数。

データベースとは?

データベースとは、収集したデータを、検索や追加などが簡単にできるように整理したものです。
Webアプリケーション、業務用システム、Webサービスとデータベースは切っても切れない関係にあります。
例えば、ログイン機能は登録時に入力したIDやメールアドレス、パスワードなどをデータベースに保管します。
ログインの際に入力された情報とデータベース内に保管した登録情報が一致するかを確認しています。

データベースの種類

データベースの種類には、リレーショナル型データベース、階層型データベース、ネットワーク型データベース、key-value型データベースなどがあります。

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

リレーショナル型データベースとは、行と列からなる「表」でデータを保管するデータベースです。
表の列には関連度の高い項目を設定し、そこに行としてデータが登録されていきます。
データを検索する際は必要な列や行を指定したり、表と表をつなぎ合わせて新しい表を作り、そこから検索することもできます。
最もスタンダードなタイプのデータベースで、リレーショナルデータベースを管理する製品をRDBMS(リレーショナルデータベース管理システム)と言います。
RDBMSの代表例としては、MySQL、PostgreSQL、OracleDatabase、SQLserverなどがあります。
RDBMSは、SQLと呼ばれる言語を使って、データの登録・検索・更新・削除をすることができます。

階層型データベース

階層型データベースとは、1本の幹から複数の枝に分かれながら枝葉を作っていくタイプのデータベースです。
このような構造をツリー構造といい、階層型データベースはツリー構造でデータを保管します。
親データと子データの関係が「1対複数」で、1つのデータまでのルートが必ず1つなのが特徴です。
この特徴のおかげで、ある特定のデータを検索する場合とても高速に動作します。

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

ネットワーク型データベースとは、ツリー構造でデータを保管するデータベースです。
階層型データベースに似ていますが、ネットワーク型データベースは親データと子データの関係が「複数対複数」なので、柔軟にデータを格納できる特徴があります。

key-value型データベース

key-value型データベースとは、データを識別するための「key」とデータの「value」を1つの組みにして保管するタイプのデータベースです。
key-value型データベースは、NoSQLです。NoSQLは、Not only SQLの略で、SQLを使わなくてもデータベースを使うことができます。
NoSQLというと、key-value型データベースのことを指すことが多いです。
key-value型データベースの代表的なものとして、Redis(レディス),Riak(リアック), Hibari(ひばり)などがあります。
リレーショナル型データベースは、データの正確さに重点を置いたデータベースなので、検索スピードが遅いです。
一方、key-value型はデータの構造が非常にシンプルなので、検索スピードが早く、かつ少ない容量でデータを保管できるのが特徴です。
その特徴から、リレーショナル型では扱えない大規模なデータを保管する場合に活用されています。

MySQL、PostgreSQL、OracleDatabaseについては別で解説します。

ぜひご参考ください。

KinoCode チャンネル

YouTubeで毎日動画配信しています。
動画は3分間なので、
 ・通勤時間
 ・お昼休み
 ・お手すきのとき
 ・寝る前
など手軽に視聴できます。
 
ちょっとしたインプットにどうぞ!
 
▼チャンネル登録はこちらからどうぞ。
未経験からはじめるPython学習「キノクエスト」 キノクエスト
  • スキルアップしたいけど何からはじめればよいかわからない…
  • プログラミングスクールに入りたいけど料金が高い…
  • プログラミングを学んでも業務やキャリアに活かせるか不安…

キノクエストは、このような悩みを持つ方にぴったりのプログラミング学習サービスです。
国内最大級のプログラミング学習系YouTubeチャンネル「キノコード」が提供しているから、未経験者にもわかりやすく質の高い学習体験を実感していただけます。

キノクエスト