Firebase Realtime Database
Firebase Realtime Databaseは一貫性を犠牲にすることで、可用性と分断耐性に優れたクラウドシステムである。
一貫性を犠牲にすると言っても、トランザクションの機能は提供されている。
Firebaseは緩やかな一貫性の上に成り立っている
冗長になってしまうのは割り切る
相互参照の構造
ウェブとMobileの性質の違い
firebaseMobileの性質 | ソリューション |
ネットワークは不安定 | Realtime・AutoSync・Offline |
リソースに制限がある | Realtime・AutoSync |
表示領域に制限がある | Realtime・AutoSync |
開発速度が速い | Realtime・AutoSync・Schemaless |
設計のコツ
Modelは並列に構成する
Model名は単数形の名詞にする
ModelのKeyはSortできるキーをセットする
Modelは_updatedAt _createdAtを保持する(バグ解決に役立つ)
Model内に配列を保持しない
Model内のプロパティにAccessKeyを含める