【发布时间】:2015-07-28 01:34:11
【问题描述】:
我正在构建一个基于位置的“聊天”应用程序,并使用 Amazon 的 DynamoDB 来利用高吞吐量和自动扩展。
应用程序会频繁更新用户在数据库中的位置(我使用的是 PHP geohash 库)。它还将搜索特定地理半径内的用户。
我是 NoSQL 的新手(我有很多 MySQL 经验),并且希望对我的“用户”表建模提供一些意见。两个问题:
1) 如果用户的 geohash/longitude/latitude 属性频繁更新,会不会导致 DynamoDB 出现问题(表锁定?)?在 MySQL 中,我会为这些值创建一个单独的表,以防止锁定整个用户表。在 DynamoDB 中我需要担心这个吗?
2) 在地理范围内搜索用户?这只是在 geohash 属性上设置一个全局二级索引并对其执行查询吗?分片会导致这个问题吗?
【问题讨论】:
标签: php amazon-dynamodb database-schema geohashing nosql