`

GitHub网站究竟可不可靠?谷歌工程师教你用BigQuery一探究竟

阅读更多
以独特方式组织的可视化数据往往能够为我们提出一些有趣的观点。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聚合函数来统计每分钟对应的事件数量。将查询结果简单可视化即可得到下图:

9a26e9f745bea2c293acd60f823df35236e30f64
在上图中我们可以发现一些很有趣的数据点,这些数据点对应的事件数量格外得低,但是,仅通过上图我们很难准确判断每一分钟究竟是"正常的"还是"异常的"。因此,我们可以根据查询结果创建事件数据直方图,使判断的过程变得更加清晰。

b4346e1a391eedfaee31ff66c2d9bc79172d69be
这幅图很明显地表明,对于GitHub,当每分钟内处理的事件总数低于200时,网站处于异常的状态,这一结论至少在2016年7月份是成立的。我们假设每分钟极少数的事件与异常少的终端用户请求无关,而是由于网站自身服务器问题所导致的。在这个前提下,有两种可能的解释:用户请求未达到服务器,或者服务器无法成功响应用户请求。这为我们提供了一个标志来近似地判断GitHub当前的状态是"健康"还是"不健康"。
阅读全文直接点击:http://click.aliyun.com/m/10252/
分享到:
评论

相关推荐

    github使用教程github使用教程

    github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程github使用教程...

    github 访问失败,怎么办??

    国内正常访问github教程

    教你如何用Github找开源项目(保姆级教程)

    教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你...

    GITHUB镜像网站表

    表格中的几个网站是github的同步镜像网站,均从网络搜集。下面是镜像网站的优点: 一:速度快,能节省打开github网页的时间和下载程序资源的时间。 二:同步性高,提供几乎和github官网一样的内容。 三:部分网站已...

    GitHub镜像网站表

    《GitHub镜像网站表》是一份详尽的清单,列出了多个可用的GitHub镜像网站。这些镜像站点旨在提供与原版GitHub相同的功能,但访问速度可能更快,特别是在地理位置较远的地方。这份表格为开发者、研究人员和任何经常...

    github-action-lambda:如何使用github操作部署lambda函数?

    如何使用github操作部署lambda函数? 视频存储库: :

    GitHub 使用手册 入门教程

    提交你的第一个修改 Fork 一个仓库 Fork 一个示例仓库 同步你的 Fork 仓库 检索其他仓库来 Fork 社会化 Follow 一个人 Watch 一个项目 其他你可以做的事 图形化工具 GitHub for Windows GitHub for Mac

    github镜像网站.pdf

    Github 镜像网站是指提供与 Github 官方网站相同内容的第三方网站,用户可以通过这些镜像网站来访问 Github 的内容,而不需要直接访问 Github 官方网站。下面是 Github 镜像网站的优点和使用注意事项。 首先,...

    黑客入门(超级详细版)

    黑客,同样也有正邪之分,本书中详细介绍了计算机的系统安全,及网络安全攻防知识,可以让读者更加了解黑客的技巧及网络攻击的防范措施等。

    GitHub上最励志的计算机自学教程

    但就是这样目标坚定的 8 个月,作者成功获得了大厂(虽然不是谷歌,但亚马逊软件工程师的平均年薪也超过百万人民币了)认可。 这是我在 GitHub 看到的最励志的故事,也是我希望让更多人看到的原因,并且由衷地希望...

    GitHub使用教程分享

    github使用教程GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub使用教程分享GitHub...

    Github使用教程.zip_zip压缩包

    Github使用教程.zip 身为程序员,怎么能不会使用github呢

    meltface.github.io:网站?

    "暗示我们讨论的是一个基于GitHub托管的个人或项目网站。GitHub是一个面向开源及私有软件项目的托管平台,而".github.io"域名通常用于个人或组织在GitHub上搭建的静态网页。这个描述没有提供太多具体信息,但我们...

    超详细Github Desktop教程.pdf

    超详细Github Desktop教程.pdf,高清实用,需要的伙伴可以看看

    Rime键道输入法-github使用教程

    6RimeRIME github使用教程 github使用教程 github使用教程 github使用教程 github使用教程

    最新Git与Github首篇巨作课程 Git&Github极速入门与攻坚实战结合课程 一次搞定Git.txt

    最新的Git与Github巨作课程,课程内容主旨分成了Git&Github极速入门与攻坚实战课程两部分,可以理解为一个是课程的详细教学篇,和一个精华缩减的集合。Git与Github教程详细介绍了Git的工作机制,Git命令行的基础学习...

    如何用git将本地项目push到GitHub上?

    如何用git将本地项目push到GitHub上?如何用git将本地项目push到GitHub上?

    GitHub入门指南:一步一步教你使用GitHub

    GitHub入门指南:一步一步教你使用GitHub

    github个人使用笔记

    1. 完整流程:Github 的项目—>fork 到自己的 Github 网站分支—>clone 到自己的本地版本—>修改后 push 到自己的 Github 网站分支—>将自己 Github 网站分支 pull request 到 Github 的原项目 2. 将原项目的修改...

    github使用教程

    github使用教程以及操作简介

Global site tag (gtag.js) - Google Analytics