【説明できる??】DB(データベース)とストレージの違い

プログラミング
Michael SchwarzenbergerによるPixabayからの画像

どちらもデータをCRUD(保存・読み出し(閲覧)・更新(編集)・削除)できるという点では同じです。

では違いは何なのか?

データベースは目録、ストレージは倉庫のようなもの、とかは出てきたのですが(Yahoo!知恵袋「データベースとストレージの違いについて」)、イマイチピンとこず・・・ググっても明確な答えにたどり着かなかったので、ここに私の理解を記しておきます。



対象読者

この記事は、こんな読者を想定しています。

  • IT業界初心者で、データベースとストレージの違いが理解できない。
  • IT業界中級者だけど、後輩に聞かれたときにうまく言語化できない。なんか、そもそも比較するようなものではないような気がするけど、いざ説明しろと言われるとバシッと言えない・・・
  • IT業界ではないけど、気になった。
  • ストレージとメモリの違いは理解できる。(ぐぐったらたくさん出てくる)
  • ストレージとサーバの違いも理解できる。(これもぐぐったらたくさん出てくる)

ちなみに、データベースは通常「DB」と表記するのが一般的ですが、IT業界ではない人やまだ浅い方も対象読者とするため、わかりやすく「データベース」と表記していきたいと思います。
私は初めて「DB」の表記を見た時、某有名漫画「ドラゴ◯ボール」しか思いつきませんでしたので(笑)

 



データベースとストレージの相違点(結論)

データベースとストレージはここが違う!

まず結論から。

データベースは、それ自体もデータ。ストレージはデータではなく、装置。

データベース自体をストレージに格納することができる。

です! この答えに辿り着くのに少々時間がかかりました・・・

もしかしたら、重要なことはこの観点ではないのかもしれませんが、本質的な相違点は、

「それ自体がデータであるか否か」

と言えるでしょう。

どちらもデータを入れておくための箱であることに変わりはないのですが、

  • データベースは、データと入っているその名のとおり、データ(ソフト)としてメモリまたはストレージに保存される。
  • ストレージは、補助記憶装置という別名のとおり、装置(ハード)としてマザーボードに直接、あるいは、クラウド上に直接設置されている。

この関係をおさえておけば、スッキリするのではないでしょうか?
(私は「データベース自体が、ストレージに保存できる」という例文で得心しました。)

そもそも、データベースとストレージって、あまり同じ文脈で出てくる言葉ではないんですよ。だから、そもそも違うものだから、普段あまり気にならない。

おそらく、風呂入ったことない人が、「風呂と桶って、どちらもお湯を溜められるけど何が違うの?」と言っているのと同じようなことなんだと思うんです。

けど、業界に造詣のない人にとっては、似ているもののような気がする。桶だって、大きければ人が入ったりもできるじゃん?みたいなことを考えてしまう。そんな感覚だと思うんです。(というか、私がそうでした)

その他の相違点(補遺)

もちろん、他にも性質の違いはたくさんあります。(というか、実際に使う上ではこちらのほうが重要。特に赤字部分。)

データベースストレージ
要するに(広義での)テキスト「データ」補助記憶「装置」
格納できるデータ数字や文字列、日付など、軽い(広義での)テキストデータに限る。拡張子とかはない。容量内であれば、テキストデータに限らず、画像や動画、exeファイルなど、重いデータを保存可能。拡張子付きのファイルとして保存されることが多い。
格納データへのアクセス(クエリ)SQLに代表されるクエリ言語を用いることで、非常に高速。特に検索能力が高いGUIでもCUIでも操作できることが多いが、基本的に低速、特に検索能力はあまり高くない
それ自体はどこに格納されているか?メモリの場合も、ストレージの場合もある。”.db”などという拡張子がつく。内部ストレージなら、ハードウェアとしてマザーボードに直接乗っている装置。
外部ストレージなら、USBや外付けハードディスクなどデバイス内の装置。
クラウド上に直接格納のパターンもある。
具体例
(種類)
リレーショナル・データベース
NoSQLデータベース
HDD(ハードディスク)
USBメモリ
CD / DVD / ROM
外付けハードディスク
クラウドストレージ
例えるなら1目録倉庫
例えるなら2風呂(浴槽)
データベースとストレージの違い

実用上は、こちらの方が重要な相違点だと思いますが、「データベースとストレージをうっかり間違えて使う」ようなことは考えにくいので、補遺としました。

以上、ふと疑問に思った方のお役に立てれば幸いです〜間違いなどありましたらコメントかお問い合わせフォームより教えていただけると学びになります!!

写真提供:Michael SchwarzenbergerによるPixabayからの画像

この記事を書いた人
こもれびエンジニア

自然と自由を愛するエンジニア。2021年1月に、大手製造業設計からプログラマ(Rails, AWS)へ転職。動物や自然との触れ合いや、汗を流すのが好き。

/HSP(繊細さん)/18デリケートな象/ストレングスファインダー(1分析思考/2親密性/3学習欲/4調和性/5収集心)、テニス、合気道、登山、あいだみつを、ジブリ、ワンピース、ドラゴンボール、Ruby on Rails、アイミング

はるすとをフォローする
プログラミング
スポンサーリンク
はるすとをフォローする
「そんなか」サイト

コメント

タイトルとURLをコピーしました