1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

NoSQL DB(特にfirestore)とRDBの違いをざっくり理解

Posted at

動機

NoSQLの定義って? RDBとの違いは? ってところがわかってなかったので、ざっくり理解レベルですが調べたのでまとめてみました。

##RDB

レコード(行)とフィールド(列)でできたテーブルと呼ばれる表にデータを格納する。テーブルの各行はテーブル内で一意なキーを持っており、このキーと外部キーの関係を設定することで新しいテーブルを作ることができる。
CAP定理(Consistancy:一貫性、Availability:可用性、Partition tolerance:分断体制 の3つを同時に満たす分散システムは存在しない)のなかのCとAを保証する。Pは保証されていない。つまりデータは単一のサーバー内にある。

メリット:一貫性が保証されている。複雑なクエリを書ける
デメリット:大規模データになると処理が遅くなる事がある

CAP定理
CAP定理.png

参考
https://www.teracloud.co.jp/special_cap-theorem.html
https://tech-blog.rakus.co.jp/entry/20180919/nosql/bigdata
https://www.geekly.co.jp/column/cat-technology/1904_005/

NoSQL DB

No only SQLの略でSQL以外の技術を使ったDBのこと。キーバリュー型、カラム思考型、ドキュメント指向型などがある。
CAP定理のうち、Pを重視している。つまり、データを複数サーバーに分散して保管でき、1つのサーバーに障害があっても別のサーバーからデータを参照できることを重視する。これにより、1つのサーバーでは収容できない膨大なデータを扱うことができるなどのメリットが有る。

メリット:複数のサーバーに処理を水平分散できるため処理が早い。拡張しやすい。
デメリット:一貫性が保証されていない。複雑なクエリは書けない。

firestoreはドキュメント指向のデータベース

Cloud Firestore は NoSQL ドキュメント指向データベースです。SQL データベースとは違い、テーブルや行はありません。代わりに、データは「ドキュメント」に格納し、それが「コレクション」にまとめられます。

参考
https://firebase.google.com/docs/firestore/data-model?hl=ja

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?