如果我有一个有A,B和C属性的员工实体,并且有某种员工拥有财产D.哪个更好?
如果我遵循第二个解决方案,我关心的是所有员工实体可能都有冗余属性D(来自关系数据库预期:空行)这是真的吗?我在文档中搜索了一个答案,但目前尚不清楚在这种情况下究竟会发生什么。
答案 0 :(得分:4)
- 将属性D添加到实体员工中。
醇>
Google的数据存储区不是基于表格的关系数据库。它将实体存储为单独的“文档”,并且除了具有相同的id类型之外,不要求这些文档以任何方式彼此相似。
没有表模式也意味着您可以执行其他有趣的操作,例如按实体选择性地索引属性。没有列可以设置为索引。
Objectify's polymorphism功能允许在同一个“表”中实现不同类型的数据(或者如果找到一个更好的单词)。如果你不使用objectify,看看它。它也适用于存储具有“可选”字段的简单实体(也没有表约束,所以只需要使null
工作)。