このサイトのテーマ『SWELL』を見てみる >>

データベースをわかりやすく解説してみた【図解】

takabee
こんにちは。takabeeです。

今回は

初心者
データベースが何のことかイマイチよくわからない…。

という方向けの記事になります。

 

ITではよく聞く言葉ですよね。

初心者の方ははじめはよく分からないかもですが、一回イメージできてしまうとめちゃくちゃシンプルなので、図解でサクッと理解しちゃいましょう!

 

この記事で理解できること

・データベースとは?
・データベースの種類

ネコ大先生
この記事は【約5分】で見れるニャ!

 

目次

データベースとは?

めちゃくちゃ簡単にいうと、「データを大量に保存しておく場所」です。

まさに名前どおりって感じですよね。

 

例えばLINEに登録したユーザーのデータとか、Twitterに投稿したツイートもすべてデータベースに登録されています。

もちろんユーザーデータが流出したら大事件になるので、そういったデータは厳重に管理されています。

 

takabee
企業がデータ流出したら大体ニュースになりますよね。そのくらい重要。

データベースのタイプ

データベースのタイプは、「どういう方式でデータを保存するか」によって変わります。

なんでデータの保存の仕方にいろいろな方法があるかというと、ずばりアクセス速度がデータ構造によって変わってくるからですね。

 

もちろんアクセス速度が遅いとデメリットしかないので、保存するデータによって適切なデータ構造を持たせる必要があります。

とくに大規模なデータになってくると、データ構造が少し違うだけでもパフォーマンスが変わってくるのは想像できますね。

今回はとくにその中でも3つのデータ構造のみを取り上げました。

 

takabee
なんせ種類が多い…。

①階層型データベース

名前どおりデータを階層型に保存します。

 

例えば野球が好きなヤマダ君のデータを取ろうとすると、一意で決まるのでアクセス速度は速いです。

 

でもヤマダ君がサッカーも好きな場合は、こんな風に重複してしまい、何度も登録しなおすのは正直めんどくさいのがデメリットです。

 

takabee
データが増えるほど負担も相乗的に増えてきます。

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

ネットワーク型データベースは、階層型データベースの進化版です。

階層型データベースでは上から下へとのみつながってますが、ネットワーク型データベースは下から上へとつなげることも可能です。

 

例えば野球が好きなヤマダ君が、サッカーも好きとなると、階層型データベースではサッカーの下にヤマダ君をまた追加しました。

でもネットワーク型データベースなら、サッカーとヤマダ君をつなげるだけで解決です。楽チンですね。

 

ただデメリットとしては、自由度が上がったぶん、やっぱり複雑になりがちなことですね。

膨大なデータを上から下へ、下から上へとやたらに繋ぎまくったら、とんでもなく絡まったデータベースの完成です。

 

takabee
イヤホンのコードみたいになります。

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

これはExcelの表みたいな保存形式ですね。

データベースというと、一般的にリレーショナル型を指すような気がします。

 

リレーショナル型データベースに特有の名前として、「テーブル」「カラム」「レコード」があります。

データ全体をテーブル、テーブルの縦列をカラム、横列をレコードと言います。

・データ全体をテーブル
・テーブルの縦列はカラム
・テーブルの横列はレコード

 

メリットは拡張性が高かったり、データへのアクセスが速かったりがありますが、分かりやすいことも大きなメリットです。

慣れ親しんでいる表形式でデータを保存できるのは、やっぱり大きいですよね。

 

あとテーブル同士のつながりも、次のように対応付けができたりします。

 

デメリットは意外とコストが高かったりします。

ただ個人で使う分にはまったくコストはかからないので、安心してもいいかと思いますね。

 

データベースまとめ

まとめるとこんな感じですね。

・データベースは「データをまとめて保存しておく場所」
・データベースのタイプは保存する方法で決まる
・保存するデータによってタイプを決める

メリットデメリットは触っていくうえで感じるものなので、30分でも実際に触ってみるとまったく認識が変わってきます。

なので恐れず、実験する感じで触ってみるのがおすすめです。

 

takabee
ではまた次の記事でお会いしましょう!
ネコ大先生
最後まで読んでくれてありがとうニャ!
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Webエンジニア兼ブロガー。Nuxt.js, Wordpress, SEO対策などの案件を承っております。両感音性難聴3級持ち。
お仕事の依頼はこちらから。
https://www.lancers.jp/profile/takabeee

コメント

コメントする

目次
閉じる