【问题标题】:Traffic exchange script database design suggestions流量交换脚本数据库设计建议
【发布时间】:2011-12-24 09:17:28
【问题描述】:

我想设计一个流量交换脚本来计算传入流量并尝试返回 n:m(例如 1in:2out)比率的流量。在数据库中,我想要站点信息 (SITE),然后按站点和 ip 跟踪流量 (DAILY-HITS),然后我想要每小时或每天计算交易 - 还不确定 (SITE-TOTAL-HITS )。对于设计一个精心设计的数据库来处理流量交易,我很乐意得到任何建议。

现在我担心跟踪传入的点击,然后担心返回。所以基本上我真正的问题是,我如何设计一个数据库,可以有效地用于返回过去 24 小时内的完美流量。我遇到的问题是,在编程方面,我希望拥有设计最好的数据库来获取过去 24 小时的信息,并确保我保持在 n:m 的范围内。这是我迄今为止为数据库设计的内容:

网站(只是基本信息):

身份证

网址,

标题,

说明。

每日热门:

身份证,

site_id,

IP,

日期(包括时间 - 将按小时细分),

数量(计算这一小时内来自该 ip 的点击次数)。

SITE-TOTAL-HITS(可能通过脚本每小时更新一次 - 稍后用于计算过去 24 小时):

身份证,

site_id,

年,

月,

一天,

小时。

任何提示、建议或指出我正确的方向将不胜感激。提前致谢。

【问题讨论】:

    标签: mysql sql database design-patterns


    【解决方案1】:

    这是我对它的价值的看法:

    网站:

    Same as what you have
    

    交通:

    id,
    site_id,
    ip,
    request_DateTimeStamp <- this is a date and time for the url request
    

    这里没有计数,只是在这里记录是原因:

    assume you do have a count column
    - url is requested
    - lock up a record in the database with the same date and hour and ip
    - Found, update the account
    - Not Found, Create a new record and set the count to 1
    

    对于一个可能会被大量更新的表来说,这是一个漫长的过程,在一小时内,来自同一 ip 的多个请求将尝试更新同一记录,并且它们将不得不相互等待。

    取出该计数列,您的过程只是通过始终创建新记录来记录传入流量。

    就数据分析而言,您可以通过以下几种方式进行:

    您可以尝试构建立方体:http://datacharmer.blogspot.com/2010/01/multi-dimensional-cubes-in-mysql.html

    或者您可以创建像 site_total_hits 这样的信息聚合表,然后使用夜间作业更新它们,或者经常根据它们的准确性来运行它们。

    这是我的 2 美分:D

    【讨论】:

    • 太棒了,感谢您的意见,这对我很有帮助,给了我一些思考。
    【解决方案2】:

    您可以使用HitLeap 来执行此操作。

    什么是 HitLeap? HitLeap 是一个流量交换,也称为自动点击服务我们帮助您提高网站点击率、排名(alexa、google)等等。我们的联盟计划提供高达 50% 的现金和流量佣金。它是如何工作的?注册后,您将提交所有要向其发送流量的网站。然后,您将通过查看其他人的网站获得免费流量。或者,您可以向我们购买流量包。

    Go tho this link to sign up

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-27
      • 1970-01-01
      • 2011-08-05
      • 2014-10-22
      相关资源
      最近更新 更多