java - 实体 google 数据存储是否可以具有 "empty"属性?

标签 java google-app-engine google-cloud-platform google-cloud-datastore

如果我有一个具有 A、B 和 C 属性的员工实体,并且存在某种具有属性 D 的员工实体。哪种做法更好

  1. 创建两个实体“employee”和“d_employee”。
  2. 将属性 D 添加到实体员工中。

如果我遵循第二种解决方案,我担心的是所有员工实体可能都有一个冗余属性D(从关系数据库的角度来看:空行)这是真的吗?我在文档中寻找答案,但不清楚在这种情况下到底会发生什么。

最佳答案

  1. add the property D into the entity employee.

Google 的数据存储区不是基于表的关系数据库。它将实体存储为单独的“文档”,并且除了具有相同的 id 类型之外,不要求这些文档彼此相似。

没有表模式还意味着您可以执行其他有趣的操作,例如有选择地为每个实体的属性建立索引。没有可以设置索引的列。

Objectify's polymorphism该功能允许在同一个“表”(或者如果你找到一个更好的词)中实现不同类型的数据。如果您不使用 objectify,请看一下。它也适合存储具有“可选”字段的简单实体(也没有表约束,因此只需使用 null 即可)。

关于java - 实体 google 数据存储是否可以具有 "empty"属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37642302/

相关文章:

java - 嵌入式Java对象的Jackson反序列化

java - 处理数据存储最终一致性的技术

python - Google Speech API 不适用于嘈杂的音频

python - 在 App Engine 上部署 Python 应用程序导致错误 500

android - 上传图像时在google vm中调用python脚本

java - 如何知道 ScheduledExecutorService 何时完成

java - 在类之间传递数据

google-app-engine - 谷歌应用引擎中的最小实例和最小空闲实例有什么区别?

java - 如何在 jSTL 中使用三元运算符编写 if else 条件?

google-app-engine - AppEngine 错误代码 202 - 任务队列