【发布时间】:2018-12-05 18:17:41
【问题描述】:
这两者有什么区别
key := datastore.NameKey("user", userID, nil)
client.Put(ctx,datastore.IncompleteKey("session",key),&sessionUser)
和
key :=&datastore.Key{Kind:"session",Parent:nil,Namespace:userID}
client.Put(ctx,key,&sessionUser)
如果它们都具有相同的写入/读取可能会导致contention,为什么它们会有所不同? 从这个article
Cloud Datastore 将命名空间和根实体组的种类添加到 Bigtable 行键。如果您开始写入一个新的命名空间或种类而不逐渐增加流量,您可以点击一个热点。
我真的很困惑我应该如何支撑我的数据, 顺便问一下,哪个阅读速度更快?
【问题讨论】:
-
您没有使用
datastore.NewKey或datastore.NewIncompleteKey方法是否有原因? -
既不完整的键也不 nameKey 在其参数中接受命名空间,所以这就是我直接使用它的原因
标签: go google-cloud-datastore datastore