GitHub网站究竟可不可靠?谷歌工程师教你用BigQuery一探究竟
来源:互联网 发布:程序员保密费 编辑:程序博客网 时间:2024/06/06 00:17
以独特方式组织的可视化数据往往能够为我们提出一些有趣的观点。Felipe Hoffa最近使用BigQuery结合Reddit近八年来的网站活动以及上线时间数据进行了可视化分析,我们从中看到了一些非常有趣的信息。作为一名刚入门的负责任务控制的网站可靠性工程师,我总是会这样问自己,"如果我是负责这项服务的可靠性工程师,我会采用什么方法解决这个问题?"
这次,Felipe将从可靠性工程师的角度出发,对GitHub的一些历史数据展开分析。首先,我们需要先确定,使用BigQuery对GitHub Archive上关于GitHub的部分事件数据进行分析是否足以推断出GitHub网站的健康状况。GitHub为开发者定义了很多种不同的活动事件类型,但在本篇文章的分析中,我们仅关注成功向GitHub发出请求的事件。
我们可以使用这个查询语句:
#StandardSQL SELECT TIMESTAMP_TRUNC(created_at, MINUTE) minute, COUNT(*) FROM `githubarchive.month.201607` GROUP BY 1 ORDER BY 1
我们可以找到在2016年7月中GitHub在每一分钟发生的事件数量。created_at字段记录了一个以微秒为单位的时间戳,查询语句将其按分钟进行截取。这使得我们将查询结果按时间戳分组时,可以使用COUNT聚合函数来统计每分钟对应的事件数量。将查询结果简单可视化即可得到下图:
在上图中我们可以发现一些很有趣的数据点,这些数据点对应的事件数量格外得低,但是,仅通过上图我们很难准确判断每一分钟究竟是"正常的"还是"异常的"。因此,我们可以根据查询结果创建事件数据直方图,使判断的过程变得更加清晰。
这幅图很明显地表明,对于GitHub,当每分钟内处理的事件总数低于200时,网站处于异常的状态,这一结论至少在2016年7月份是成立的。我们假设每分钟极少数的事件与异常少的终端用户请求无关,而是由于网站自身服务器问题所导致的。在这个前提下,有两种可能的解释:用户请求未达到服务器,或者服务器无法成功响应用户请求。这为我们提供了一个标志来近似地判断GitHub当前的状态是"健康"还是"不健康"。
阅读全文直接点击:点击打开链接
- GitHub网站究竟可不可靠?谷歌工程师教你用BigQuery一探究竟
- 一探究竟之PullZoomView
- FromHandle临时对象一探究竟
- Expedition 10.1是什么东东? 一探究竟
- Android Support 包一探究竟
- 看看这个Lock可不可靠
- js函数形参、实参、arguments[]的一探究竟
- 一探究竟“后代选择器与子选择器的区别”
- MVC一探究竟之Hibernate原理与实践
- 当我想深入遗留代码一探究竟的时候
- [py]python面向对象__str__一探究竟
- Google BigQuery带你走进大数据
- 教你用github pages搭建个人网站
- 教你看懂aidl究竟怎么用?
- 使用BigQuery分析GitHub上的C#代码
- 客户可不管你用什么,看编程语言排行榜
- Android Activity生命周期一探究竟 及 主Activity里带Thread跳转时的注意事项
- Kotlin对比Java——高效Android开发语言,值得一探究竟......
- 百度机器人对战人类最强大脑,赢在了小数点后第二位
- HDU-4283 You Are the One(区间dp)
- Apache Kylin Cube构建算法
- YOLO windows 配置
- Nginx实现负载均衡的反向代理
- GitHub网站究竟可不可靠?谷歌工程师教你用BigQuery一探究竟
- hibernate criteria中Restrictions的用法
- 灵魂项目 , 深入.NET ------- 员工打卡项目
- 一个前端小白的渐进之路
- 使用openssl生成私钥和公共证书
- Python序列——列表
- Sticky footers解决方案总结
- 变态的网页加载进度条实现思路
- Java JDK、JRE?JVM的区别与联系