Firebase数据库数据结构

时间:2017-03-06 13:30:20

标签: mongodb firebase firebase-realtime-database

我有一个非常新手的问题。 我对nosql数据结构很陌生,因此我很难在Firebase DB中创建一个简单的数据模型(我以后必须通过iOS应用程序访问)。 数据结构非常简单:

动词

  • verb1
  • verb2
  • verb3
  • 动词名词

形容词

  • adjective1
  • adjective2
  • adjective3
  • 形容词名词

名词

  • noun1
  • 名2
  • noun3
  • 名词名词

关键是Firebase要求我为每个值提供关键的一对,而我有一对多的关系。

感谢您的帮助!

编辑:

我觉得很清楚,但我最终错了。 每个动词,形容词,名词都像词典一样独特。

因此在"表"我们将拥有的动词:

  1. 有无
  2. 移动
  3. 运行
  4. 打开 [等等...]
  5. 在形容词之类的东西:

    1. 可爱
    2. 无用
    3. 可编辑 [等等...]
    4. 基本上我需要稍后从我的移动应用中检索所有动词 - 形容词 - 名词以形成句子。

1 个答案:

答案 0 :(得分:1)

不确定'关键夫妻'意味着什么 - 也许是关键:价值对?

如果是这样,这样的结构将是一个选项

Verbs
  -Y9j9j9jd9jd: verb1
  -Y8jsjjkksds: verb2
Adjectives
  -UY99jsiosij: adjective1
  -Y8hisi9jds9: adjective2
Nouns
  -Y78h9jsdjfd: noun1
  -Y8jsjosoos9: noun2

动词,形容词和名词的每个孩子现在都是一个关键:价值对,-Y ....是关键,动词,形容词或名词是价值。

-Y ...键由childByAutoId生成,是一个Firebase函数调用,用于创建唯一键。

使用此结构将允许您访问Y8jsjjkksds以获取verb2,这将启用一对多关系 - 尽管您的问题中未概述该关系,因此我不确定是否需要更多数据。

或者,根据下面的评论 - 一个非常好的观察 - 是这些词可能是谨慎的,所以这样的结构会起作用:

Verbs
  verb1: true
  verb2: true
Adjectives
  adjective1: true
  adjective2: true
Nouns
  noun1: true
  noun2: true