跟踪定制广告系统中的展示次数/点击次数的最佳方式?

时间:2010-05-10 15:36:36

标签: php mysql database-design advertising

我被要求创建一个定制的广告系统,尽管建议使用OpenX和DFP广告管理系统(以前的Google广告管理系统)等开源替代方案。

我已经掌握了系统设置的基础知识,即上传广告素材,创建职位以及将广告素材置于职位内的机制;然而,我所困扰的领域是展示和点击跟踪。

目前,广告素材和点击与广告素材一起存储,但这意味着无法查询展示次数/点击次数。例如,我们无法在日期 y 和日期 z 之间找到 x 位置的展示次数。

我如何存储这类数据?我的理论是将创意ID,位置ID和时间戳存储在数据库表中,但考虑到站点拥有的流量,这将非常快速地生成一个非常大的数据库。

如果有人可以给我一两个指针,那就太好了。

1 个答案:

答案 0 :(得分:1)

你对'一个非常大的数据库很快'是什么意思?每个4字节用于两个int无符号,一个时间戳字段为1200万字节,用于一百万行。

如果您关注的是数十亿或数亿的行数,那么请提出一些建议:

  1. 不要在id字段上设置完整性限制 - 确保应用程序的完整性
  2. 您可以编写存储过程以将旧数据存档(并删除)到主数据库或辅助报告数据库中的存档表中
  3. 不要对主要跟踪表中的数据进行更新
  4. 如果你要存档(如第2点),干这种移动/的方式一次删除一行
  5. 我不会想象尝试以任何其他方式执行此操作而不是数据库表。即使你生成一个日志文件,您仍需要将其导入到数据库中,以便能够做任何有意义的分析吧。

    btw - 添加唯一的ID字段和IP地址字段。这需要你可达20万个字节一百万行