mysql - 我应该使用 SQL 还是 Ruby 处理大量数据?

标签 mysql sql ruby-on-rails ruby query-optimization

<分区>

我有一个 MySQL 表,其中包含数十万个条目。

我需要指定一个日期范围并选择这两个日期之间的所有条目。然后我需要按小时分割条目并获取特定字段。

用例: 我需要从 6 月 6 日到 6 月 12 日的条目按小时分割。因此,在 6 月 6 日,我需要从凌晨 12 点到凌晨 1 点、凌晨 1 点到凌晨 2 点、凌晨 2 点到凌晨 3 点等一系列条目。

哪个更快? (以及为什么!):

  1. SELECT device_id FROM entries WHERE updated_at >= sometime AND updated_at <= sometime+1.hour 运行 144 个 SQL 查询有时是中午 12 点到下午 1 点,然后是下午 1 点到 2 点,等等。

  2. 正在对 SELECT device_id FROM entries WHERE updated_at >= start_date AND updated_at <= end_date 运行 1 个 SQL 查询获取整个时间段内的所有条目,然后使用 ruby​​ 按小时对条目进行分组。

如果有人知道为什么 ruby​​ 或 MySQL 对于这种类型的东西可能更快,我们将不胜感激。想做一些阅读。

最佳答案

SQL 数据库是为此类操作而构建的。使用它们!您总是可以做一些基准测试,但结果对我来说似乎非常可预测。

关于mysql - 我应该使用 SQL 还是 Ruby 处理大量数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17072931/

相关文章:

php - 不更新 SQL 数据库

mysql - 论坛的规范化数据库结构

java - 如何通过Java或SQL获取数据库表中定义的Json顺序?

sql - 查找具有相同的记录

ruby-on-rails - 忽略事件记录 Rails 4 中为空的参数

ruby-on-rails - 在 Rails HABTM 嵌套表单中创建新记录

java - 如何连接mysql和eclipse?

sql - psycopg2 相当于 mysqldb.escape_string?

sql - 每个左连接返回 1 个结果

jquery UI 日期范围选择器错误 "Cannot read "属性“null 左侧”