我使用的是Node.js,不想用每次更新都覆盖整个实体,而且大多数时候只需要更新一个特定的属性,比如计数器。
关于如何在文档中这样做,没有明显的参考。
Node.js版本是否支持像Mongodb $set那样的部分更新?
发布于 2016-03-09 00:18:54
除了put()和putmulti之外,没有任何DataStore API可以更新实体,所以这是不可能的。
阅读一下从这里开始说明了原因。
在内部,App将实体存储在协议缓冲区中,这是序列化结构化数据的有效机制;有关详细信息,请参阅开放源代码项目页面。不将每个实体属性存储为相应Bigtable行中的单个列,而是使用一个列,该列包含一个二进制编码协议缓冲区,其中包含给定实体的每个属性的名称和值。
简而言之,Datastore中的实体行是底层存储方案中的单个二进制值,这就是为什么不存在用于部分更新的API。
https://stackoverflow.com/questions/35884724
复制相似问题