我一直在阅读很多关于在数据存储上进行聚合查询的方法(通过stackoverflow和其他地方)。答案的优势在于它不能以愉快的方式完成。但是那些答案已经过时了,同样的人也倾向于声称你不能在数据存储上做order by
这样的事情。
如今,您实际上可以在datastore上指定ORDER BY
。所以我想知道聚合是否也可能。
考虑我有五个候选人Alpha,Brave,Charie,Delta和Echo的场景;和10,000名选民。我想检索候选人和每个按顺序收到的票数。我如何在数据存储区上执行此操作?我正在使用java。
另外,顺便说一句,如果答案仍然没有,并且扇入是我最好的选择:扇入线程安全吗?通过扇入,我的意思是保留一个明确的计数器来计算每个候选人收到的投票(在单独的table
中)。当多个用户同时投票时,我可以在数据中遇到竞争条件或其他一些错误吗?
答案 0 :(得分:1)
如果通过聚合来表示让数据存储区为您计算总投票数,那么数据存储区将不会这样做。
执行您所描述的内容的最佳方式是: