mysql - rails 将 geoip 资源保存在同一个数据库或分离的数据库中哪个更好?

标签 mysql ruby-on-rails database multiple-databases

我需要从 http://www.maxmind.com/app/geoip_resources 迁移城市/国家/地区资源到我的应用程序。

我有两种方法: 1.创建一些表并在那里保存数据 2.创建另一个数据库并有多个数据库连接。

问题:geoip 可能会更新,性能。 它应该经常使用此资源。

保存 geoip 数据的最佳方法是什么?

感谢提前!

最佳答案

我会仔细研究将内容放在主数据库之外的原因。

如果这是唯一应该使用此数据的应用程序,我会采用更简单的方法,将其简单地放在您的常规 Rails 应用程序数据库中(多个数据库连接不是 Rails 可以很容易处理的事情,您可能会失去一些好处例如 AR 查询缓存等)。

一般经验法则:如果您真的不需要它 - 省去麻烦并将它放入您的应用程序已经使用的一个数据库中。如果需要,您仍然可以稍后将其从该数据库移到共享数据库。

请注意,将 GeoIP 数据库复制到所有这些系统也可能是一种选择,因为用户不会更新 GeoIP 数据库,但只会在新数据集出现时以特定时间间隔更新。

关于mysql - rails 将 geoip 资源保存在同一个数据库或分离的数据库中哪个更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11307333/

相关文章:

ruby-on-rails - 多态关联和嵌套属性

如果我使用 'after update' 但不使用 'after insert',MYSQL 触发器是否有效?

MySql 查询连接 3 个空行的表

MySQL 如何检索表名作为字段

ruby-on-rails - Rails 图像消失并出现错误:无法加载资源:net::ERR_CONTENT_LENGTH_MISMATCH

ruby-on-rails - 如何将已存储在 s3 上的文件添加到由同一数据存储支持的carrierwave?

python - Django + Heroku 数据库

python - 使用 python 抓取谷歌精选片段

mysql - MySQL 准备语句中的多个查询(无过程)

php - Laravel 用例更新查询