Firestore(NoSQL)について
Firestore(NoSQL)について
個人開発でNoSQのFirestoreを利用することになりました。
ただ、RDBしか触ったことがなく、色々と調査したのでその備忘録を残します。
Firestoreとは?
Firestoreとはドキュメント指向NoSQLデータベースです。
RDBとFirestore(NoSQL)の比較
1. RDBでは基本的には、正規化を徹底するが、Firestoreでは、非正規化を許容する、むしろ活かす 2. RDBではテーブル結合(inner join, outer join)できるが、Firestoreではテーブル結合できない
Firestoreの利用メリット
1. 既存のDBと比較して、今からNoSQLを始める学習コストを考慮しても開発速度が早い 2. スケールするまでは無料で使える 3. グロースさせるまでをFirebaseで完結できる
FireStore構造について
■ コレクション データベースのルート要素で、ドキュメントの集合。 ドキュメントをまとめるフォルダのようなイメージです。
users: { userdocument1 userdocument2 userdocument3 }
■ ドキュメント データおよびサブコレクションの集合 データをまとめた紙のようなイメージ
key1 : value1 key2 : value2 key3 : value3
■ データ キーとバリューのセット ドキュメントに記載される最小単位のデータのイメージ
key1 : value1
データタイプ一覧
FireStore参照方法例
■ コレクション
usersコレクションを参照取得
var usersCollectionRef = db.collection('users');
FireStore CRUD処理
■ ドキュメント usersというコレクション内のalovelaceドキュメントへの参照取得。
var alovelaceDocumentRef = db.collection('users').doc('alovelace');