存储用户移动位置的最佳数据库,优先考虑读写速度?
Best database to store locations of users as they move, priority given to read & write speed?
嗨,Stack Overflow 社区,在我们非常关心读写速度的环境中,做出一些架构决策并试图找出最佳策略来存储四处移动的 5 万用户的位置,但不不介意偶尔丢失数据。
应该一个
- 使用内存数据存储,例如 Redis 或 Memcached,或
- 使用 Postgres,在 user_id 上使用索引以便快速插入 &
删除,或
- 直接使用文件系统,每个都有一个文件
user_id,并对其写入或读取以存储新位置,或
- 只需将位置 存储在内存中 ,在 Python 程序中
维护 (user_id, location) 元组
的有序列表
每个优点/缺点是什么?
我在 MySQL 和 SQLAlchemy 方面非常幸运。每天 50k 写入不算什么。我将我的日志写入其中,记录我的 线程 (考虑一下,我将日志写入其中并记录每个线程)并且我每天处理 250 万条记录,每条记录生成大约 100 条日志每个。
嗨,Stack Overflow 社区,在我们非常关心读写速度的环境中,做出一些架构决策并试图找出最佳策略来存储四处移动的 5 万用户的位置,但不不介意偶尔丢失数据。
应该一个
- 使用内存数据存储,例如 Redis 或 Memcached,或
- 使用 Postgres,在 user_id 上使用索引以便快速插入 & 删除,或
- 直接使用文件系统,每个都有一个文件 user_id,并对其写入或读取以存储新位置,或
- 只需将位置 存储在内存中 ,在 Python 程序中 维护 (user_id, location) 元组 的有序列表
每个优点/缺点是什么?
我在 MySQL 和 SQLAlchemy 方面非常幸运。每天 50k 写入不算什么。我将我的日志写入其中,记录我的 线程 (考虑一下,我将日志写入其中并记录每个线程)并且我每天处理 250 万条记录,每条记录生成大约 100 条日志每个。