見出し画像

SQLとNoSQLの違い

そもそも比べるものではない。というのが結論です。

SQLはRDBMSを操作するための言語。
NoSQLはSQL言語以外でもデータベースの扱いを可能にしたデータ構造

なのでまずはデータベースの4種類を紹介して、

RDBMSとNoSQLの違いを話そうと思います。

データベースの種類

データベースとは検索や追加ができるようにデータを整備したもの

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

  • 階層型データベース

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

  • key-value型データベース

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

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

行と列からなる「表」でデータを保管するデータベース

行がデータで、列で関連度が高いものが追加されていく

リレーショナルデーベースを管理する製品=RDBMSという

RDMBSの代表例

  • MySQL

  • PostgreSQL

  • OracleDatabase

  • SQLsever

RDMBSはSQLと呼ばれる言語を使用してデータの登録/検索/更新/削除を行うことが可能。

階層型データベース

1本の幹から複数の枝に分かれながら作っていく

親データと子データは1対多数

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

親データと子データは多数対多数

key-value型データベース

keyとvalueの棲み分け

key:データを識別
valueデータ

これを一つの組にして保管

key-value型データベース=NoSQL

Not only SQLの略で、SQLを使わなくてもデータベースを使える

製品例:Redis,Riak,Hibari

リレーショナル型とkey-value型の違い

2種類のデータ構造違い

RDBMS:
決済サービス等が絡む処理、ECサイトの決済と配送の処理等。

製品例:MySQL、Oracle DB

NoSQLの例:
Googleアナリティクス等の大量のデータを整合性は二の次にして処理を行いたいとき

製品例:MongoDB


この記事が気に入ったらサポートをしてみませんか?