【发布时间】:2018-10-04 03:11:42
【问题描述】:
你好,我有一个应用程序来学习歌曲成语。我使用 Firestore 作为我的数据库。
实际数据结构:
- 用户
- (用户数据)
- 歌曲
- (宋数据)
- 歌词(短语数组 [phrase:'', startTime: ...])
- Plays(存储用户每次播放歌曲的数据)
- 得分
- 歌曲ID
我想增加每个用户在玩时可以知道所学单词的功能。
- Users
-Vocabulary
-Word1
-wordId
-timesPlayed
-lastTimeAt(unix)
-translation
- Words
-Word
-translation
(more word data)
我以为每次添加一首歌曲时,都会触发一个 Firebase 功能,将歌曲中的所有单词分开,并验证该单词是否存在于应用程序的通用词汇表中,是否没有添加。 每次用户播放一首歌曲时,都会将其歌词添加到他们自己的语言中(仅限已播放的歌曲),如果它已经存在,则有练习的次数以及练习的日期最后一次练习。
用户的词汇表只保留通用词汇表中对 palbras 的引用,因为他们可以对所有用户进行协作编辑。
我遇到的问题是,在 Firestore 中为每个播放歌曲的用户制作了大约 300 个单词,而我目前在没有此功能的情况下所做的(2 篇文章)是 demadas,有一种方法可以优化这一点。
【问题讨论】:
标签: firebase database-design google-cloud-firestore