来自印第安纳大学的2.5TB的Click数据集,包含535亿余次HTTP请求

原创
2017/01/19 17:23
阅读数 51

时至今日,对于任何人来说,借助云服务或者开源软件,技术已不能成为研究大数据的门槛,往往困扰大家更进一步的是真实数据的缺乏。而INDIANA UNIVERSITY BLOOMINGTON近日公布的一组数据集或许能帮助一定领域的同事。

以下为译文

为促进网络流量结构和动态变化研究的进展,我们团队开发了一个大型数据集Click Dataset,其内包含印第安纳大学用户贡献的535亿余次HTTP请求。不同于查看服务器日志和浏览器工具的收集方式,我们直接从网上收集匿名请求,这样做既能检查大量数据,同referrer外,Click数据集提供了许多有价值的referrer信息,使用者可以藉由这些信息重构出用户访问网络图的子图。这样,我们就对用户的浏览行为有了更深的认识,可以设计出更真实的流量模型。Click数据集还有希望应用于改进网络、网站和服务器软件设计;精确预测流量趋势;依据激励用户的机制对网站归类;改进搜索结果分级算法等领域。

我们获取这些数据方法是先复制流经印第安纳大学边界路由器的流量,再对得到的镜像文件使用Berkeley Packet Filter处理。该过滤器过滤出所有流向TCP80端口的流量。而在长期收集的过程中,通过pcap library来集中收集到的包,并用正则表达式判断其有效载荷是否包含HTTP GET请求。如果包中确实包含此请求,收集系统将写下一条记录,记录包括以下内容:

  • 时间戳
  • 请求的URL
  • referrer的URL
  • 用户代理(浏览器或bot)的布尔类型
  • 表示该请求产生于IU(Indiana University,下同)内部或外部的布尔标识

补充说明:

  1. IU外部产生的数据只包含校外访问校内网的请求,而IU内部产生的数据只包含校内用户对外网资源的请求(校内用户约十万)。值得一提的是,这两组请求的取样误差差异很大。
  2. 来路不明的流量会被拦截:缺少MAC、IP地址及其它唯一标识的流量会被记录。
  3. 收集过程不会试图对request流重组,也不会分析服务器应答。

在收集过程中,该系统日处理6000余万条请求,日生成原始数据约30G。这些数据收集于2006年9月至2010年5月期间,其中275天的数据丢失。数据集分两部分:

  1. 原始数据:约250亿条请求,其中只有referrer的主机名被保留下来。数据收集于2006年9月26日至2008年3月3日,共98天数据丢失,其中包括2007年6月整月的数据。这部分数据压缩后约占0.85TB。
  2. 原始URL:约286亿条请求,且referrer的完整URL被保留下来。数据收集于2008年3月3日至2010年5月31日,共179天数据丢失,其中包括2008年12月,2009年2月和11月整月数据。这部分数据压缩后约占1.5TB。

Click数据集中的数据以小时为单位存储在不同文件。所有文件的起始行都有一串可被忽略的标识。格式如下:

XXXXADreferrer
host
path

这里的XXXX为时间戳(采用32位Unix以秒计时的新纪元时间,按小端字节排序),A是指用户代理标识(“B”代表浏览器,“?”代表bots或其它),D是流向标识(“I”代表流入IU的流量,“O”代表流出IU的流量),referrer是指引用页的主机名或URL(以换行符结尾),host是指目标主机名(以换行符结尾),最后,path是指目标路径(以换行符结尾)。欲了解更多详情,请见下文。

 

常见问题

我该如何声明自己使用了这些数据?

  • 这些数据由Mark Meiss在印第安纳大学的支持下收集。我们为这些数据的收集和公开化付出了诸多努力。如果你使用了这些数据,请在你的发表文章中引述下文。

阅读全文直接点击:http://click.aliyun.com/m/9552/

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部