( a)我有1000000个域名
( b)每个域名大约有100000个站点。
( c)每个网站每天大约有10000次访问/(每天有5000次独特访问)
( d)作为所有这些网站的所有者,我想知道在选定的一段时间内,我在选定的网站上有多少访客,例如:
从1987年12月4日到2010年4月23日在mydomain.com/教程上有多少独特的访问者?
1996年8月30日至2009年7月16日期间,在yourdomain.com/reference上有多少位独特的访客?
对于传统的SQL数据库来说,这是一个痛苦的问题。
最聪明的方法是什么?使用什么存储引擎?
我只有SQL知识。任何额外的资源都非常感谢。
发布于 2010-10-24 12:28:22
有了与您所列出的类似的数字和潜在查询,我将非常愿意使用一个简单的SQL (PSQL/TSQL)数据库来满足您的需要。相反,您需要某种形式的OLAP处理,如SSAS ()或Oracle提供的类似产品。
发布于 2010-10-24 12:23:30
我认为DB是这个选项的最佳方法,您只需cr4eate几个表并在它们之间传播数据,例如:
Table: Domains [id, name]
Table: Sites [id, domain_id, name]
Table: Visits [id, site_id, date]所以您可以选择“让我们说:
SELECT COUNT(v.id)
FROM Visits AS v
RIGHT JOIN Sites AS s
ON v.site_id = s.id
RIGHT JOIN Domains AS d
ON s.domain_id = d.id
WHERE d.name = 'mydomain.com'
AND s.name = 'tutorials'
AND v.date BETWEEN startDate AND endDate startDate和endDate应该通过编程语言(PHP,ASP)传递,或者可以在选择中手动设置。
希望这能有所帮助。
https://stackoverflow.com/questions/4008129
复制相似问题