获取多个用户的最后位置?

西摩

用户始终将其位置(经度,纬度)发送给Cassandra,以将其位置存储到时间序列表中。

CREATE TABLE locations (
    organization_id int,
    user_id int,
    date text,
    unix_time bigint,
    lat double,
    long double,
    PRIMARY KEY ((organization_id, user_id, date), unix_time)
) WITH CLUSTERING ORDER BY (unix_time DESC); 

检索多个用户的最后位置有什么建议?

正如我将要使用的LIMIT那样:

SELECT * from myapp.locations WHERE organization_id=1 and user_id in (15,16, 17, 18, 19, 20)  and date='2017-2-23' LIMIT 6;

如果最后6条记录属于同一用户怎么办?因此,不会获得其他用户的最后位置。

是否应该创建另一个仅保留每个用户一个位置的表?并不断更新其中每个用户的位置?

有什么建议吗?

灰烬的伊斯兰教

您应该使用executeAsync查询每个用户,然后合并结果。

对于每个用户,请使用以下查询来获取他的最新位置:

SELECT * from myapp.locations WHERE organization_id=1 and date='2017-2-23' and user_id = ? LIMIT 1

并使用executeAsync执行此操作,然后合并结果

如果创建单独的表,则需要按用户ID对其进行分区,然后需要使用用户ID进行查询,这比较慢,为了更快,您还必须为此表上的每个用户使用executeAsync进行单独的查询。

另外还有另一件事是位置会更频繁地更新,因此每一次更新cassandra都需要做更多的压缩工作,这可能会降低性能

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获取设备的最后位置?

来自分类Dev

PyQt4获取用户最后一次从多个QTableWidgets中单击的QTableWidget的名称

来自分类Dev

当多个用户以php和oracle的形式输入详细信息时,如何获取最后插入的值

来自分类Dev

获取多个用户

来自分类Dev

从用户获取多个输入

来自分类Dev

从多个表获取每个用户的最后一条记录时,SQL语法错误,也未获取输出

来自分类Dev

获取用户指示的位置

来自分类Dev

快速获取用户位置

来自分类Dev

高速获取用户位置

来自分类Dev

获取Flutter Web的用户位置

来自分类Dev

快速获取用户位置

来自分类Dev

获取用户位置附近的位置

来自分类Dev

获取用户点击位置的圆圈位置?

来自分类Dev

获取整数的最后设置位位置

来自分类Dev

如何在googlemap上获取最后的位置?

来自分类Dev

从日期(事件的用户日志)排序的多个表中获取最后n条记录的有效方法

来自分类Dev

MySQL从多个获取最后日期记录

来自分类Dev

MySQL从多个获取最后日期记录

来自分类Dev

建议多个用户使用的存储位置

来自分类Dev

Google API获取用户的位置记录

来自分类Dev

获取php中用户的国家/地区或位置?

来自分类Dev

获取php中用户的国家/地区或位置?

来自分类Dev

如何获取用户的Documents目录的位置?

来自分类Dev

Swift 2 Mapkit从用户位置获取城市

来自分类Dev

如何获取用户的桌面位置

来自分类Dev

流星试图获取Twitter用户位置

来自分类Dev

在后台获取用户位置

来自分类Dev

点击按钮时获取用户位置

来自分类Dev

获取许多用户的最新位置