【问题标题】:Rails - Saving Daily MetricsRails - 保存每日指标
【发布时间】:2014-10-20 02:31:37
【问题描述】:

我目前正在 PostgreSQL 之上开发一个 Rails 应用程序,用于存储我们公司的日常数据。我们在 Facebook 上投放广告,我们随时都有数百个广告投放。我每天都提取指标,然后导入我的应用程序,然后根据它是否存在来创建或更新。但是,我希望能够看到一周或一个月的日常表现。实现此目的最简单的方法是什么?

我的 facebook_ad 模型有 X 行,每个广告活动 1 行。每列表示一个特定指标,即花费金额、点击次数等。我应该为每个日期创建一个新表吗?有没有办法给每个条目加上时间戳并在我的查询中包含时间?到目前为止,我已经取得了不错的进展,并且没有多少搜索使我找到了我可以使用的策略。 旁注,我们希望访问他们的 API,这可能会解决大部分问题。但我们希望在此期间构建一些东西,以便在此之前尽可能高效,这可能需要 6 个月或更长时间。

已编辑::

我想根据每日数据查询和绘制数据。例如,抓取一个广告从 10/01/14 - 10/08/14 的指标,并能够看到 10/01/14:MetricA = 1,MetricB = 2; 2014 年 10 月 2 日:公制 A = 4,公制 B = 5; 2014 年 10 月 3 日:MetricA = 6,Metric B = 3,等等。我们希望能够看到趋势并了解变化如何影响性能。

【问题讨论】:

    标签: mysql ruby-on-rails postgresql


    【解决方案1】:

    我绝对建议为每个日期创建一个新表——那将是数据管理的噩梦。根据您上面所说的,您应该没有任何理由不能将每个广告系列放在同一个表格中。您可以在表中有一个createdupdated 列,默认为now(),如果您出于任何原因对其进行更新,请再次将updated 列设置为now()。 (我喜欢将这些列添加到我创建的几乎每个表中——它通常对各种查询很有用)。

    然后,您可以根据所需的时间范围查询该表以获取您的性能统计信息。根据您要查询的确切性质,Window Functions 可能会非常有用。

    【讨论】:

      猜你喜欢
      • 2013-01-26
      • 1970-01-01
      • 1970-01-01
      • 2021-04-03
      • 1970-01-01
      • 1970-01-01
      • 2016-03-16
      • 1970-01-01
      • 2017-02-17
      相关资源
      最近更新 更多