【データベースの種類比較表】RDB以外も違いがわかるよう徹底比較!

IT用語
joffiによるPixabayからの画像
スポンサーリンク

最近はRDB(リレーショナル・データベース)が主流になっている上に、DB(データベース)とDBMS(データベース・マネジメントシステム)はセットで使われるため、DB(データベース)の種類を解説と言いながら、もはやRDBMS(RDBのDBMS)のことを指しているサイトも少なくありません。

そうすると当然、それに伴い、RDBMSの種類を列挙(+NoSQL型の紹介)くらいにとどまってしまうのが必然なので、初めてAWSとか専門的な内容を学ぶ人にとっては「?」となると思います。まあ、通常webサイトを構築する際はRDBを知っていれば困らないことが圧倒的に多いかと思うので、今までなかったんだろうけども。

DB(データベース)の種類=「じゃあ、RDB以外のデータベースって何があるの?

この問いに真正面から答え、DBの全体俯瞰図を提供します。

そもそもDB(データベース)とは

そもそもデータベースとは?基礎から分かるデータベース入門から引用します。

「データベース」とは、ある特定の条件に当てはまる「データ」を複数集めて、後で使いやすい形に整理した情報のかたまりのことを表します。特にコンピュータ上で管理するデータをデータベースと呼ぶことが多いですが、紙の上で管理する「電話帳」や「住所録」なども、立派なデータベースです。

また、コンピュータ上でデータベースを管理するシステム(DBMS:Database Management System)のことや、そのシステム上で扱うデータ群のことを、単に「データベース」と呼ぶ場合もあります。

そもそもデータベースとは?基礎から分かるデータベース入門より

DB(データベース)の種類比較表(RDB, NoSQL, KVSなど)

DB(データベース)の種類の全体像を表形式でまとめてみました。
(私が今現在AWSを勉強している関係で、一番右の列も追加している点、ご了承ください。)

DBの形式特徴DBMS(一例)クエリ言語AWSで提供するサービス
1RDB
(リレーショナル型)
表・テーブル形式。
現代の主流。
データの種類を予め設定。
高度な操作が可能。
– SQLite
– PostgreSQL
– MySQL
– Oracle Database
– Microsoft SQL Server
SQL– Amazon Aurora
– RDS
2KVS
(キーバリューストア型)
すばやく構築。
アクセスも高速。
ただし、複雑なことはできない。
– Redis
– Memcashed
– Cassandra
– Hbase
?– DynamoDB
– ElastiCache
3ドキュメント指向型「BSON」形式。
ビッグデータ処理、
分散処理向け。
– MongoDBMongoクエリ言語Amazon DocumentDB
4グラフデータ型要素だけでなく、
要素間の関係も記述可。
– Property Graph
– W3CのRDF
– Apache TinkerPop
– Gremlin
– SPARQL
Amazon Neptune
5時系列型時間間隔で
取得することを
前提としたRDB。
IoT向け。
Amazon Timestream
6台帳型商取引や財務の記録、
監査を想定した
Amazonオリジナル
QLDB
DB(データベース)の種類比較表

2列目以降が、いわゆるNoSQL型(Not Only SQL)です。
NoSQL型と言っても、様々な種類があることがわかりますね! RDBしか使わない人にとっては、「世の中のDBにはRDBとそれ以外(NoSQL)がある」という理解で事足りるのかも知りませんが、DB(データベース)の全体を抑えようとすると、その理解では物足りないという気が致します。(人間誰しも、自分から遠い存在の解像度は低くなるものですね)

DB(データベース)は「階層型」「ネットワーク型」「リレーショナル型」の3種類と説明しているサイトも多く見ますが、前者2つのDBが現場で話に出てきたことがありません。このサイトでも、前者は今使われていないことが語られていますし、この分類に意味はないと考えています。

ストレージは見た目が「階層型」になっているものが多いですね。(中ではネットワーク型だったりするようですが。)「あれ?そもそもデータベースとストレージってどちらもデータを格納するけど、何が違うんだ?」と思った方、こっそりこちらの記事をチェックしておいてください。:【説明できる??】DB(データベース)とストレージの違い

この表があることで、

  • 「RDB以外にはどのようなDB(データベース)があるのか」
  • 「この初めて見たデータベースは、全体でどのような位置づけなのか」

という問いが出てきた際に、答えを出しやすくなれば嬉しいです。

私も、実際はRDBしか使ったことがないため、実務でNoSQLをやられている方からすると色々ツッコミどころがあるかもしれません。コメントでご指導・ご指摘いただけると嬉しいです。

参考文献

はるすと
はるすと

最後まで読んでくださってありがとうございました!

画像提供:joffiによるPixabayからの画像

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

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

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

twitterをフォローして、記事にならないちょっとした豆知識もチェック!
IT用語
スポンサーリンク
SNSでシェア/コメントして、自分のアウトプット/発信力を高めるのにお使いください。 ↓ 各ページへジャンプ ↓
twitterをフォローして、記事にならないちょっとした豆知識もチェック!
スポンサーリンク
「そんなか」サイト

コメント

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