据我了解,Google Cloud Datastore允许我在没有任何时间限制的情况下编写新条目,但限制了我更新实体的频率。此外,索引不是很一致。
我正在快速将与单个气象站相关的新传感器数据写入数据存储区。该实体还包含时间戳。气象站和时间戳有一个索引分类传感器读数。
现在的目标是始终将最新值返回给请求特定气象站当前值的用户,但由于索引最终是一致的,因此返回值可能不是最新值。
架构在Google App Engine上的外观是什么样的,它总能返回最近的值,而不会有单个实体达到写入限制的风险?
答案 0 :(得分:3)
将单个实体组中的一个站点的所有数据写入并使用祖先查询的替代方法是将传感器读数写为单独的新实体,并重写一个包含最多密钥的(小)知名实体最近的读物实体。
要获得最新的测量结果,您只需从知名实体获取其密钥,然后通过密钥查找获取实体 - 始终保持一致。
你仍然只能以不超过每秒一次(平均)的速度编写样本,但至少采用这种方法:
如果你真的需要每秒写入超过1个传感器读数,你可以尝试:
答案 1 :(得分:0)
尝试阅读:
基本上,使用祖先查询,然后您的查询将非常一致 - 您将能够查询最新的更新。
Google Cloud Datastore支持每个实体组每秒写入一次。只要每个气象站每秒写入不到一次的实体组,你就可以了。