GitHub启动代码永久保存计划,至少一千年!

2019 年 11 月 15 日 InfoQ

作者丨赵钰莹

近日,GitHub 年度开发者大会 GitHub Universe 2019 正式拉开帷幕。GitHub 在峰会现场宣布了一项永久保存代码计划——GitHub Archive Program,通过不间断的跨各种数据格式和位置存储多个副本的方式来保护开源软件代码,至少保存 1000 年。

代码永久保存计划

开源软件的出现为科技发展提供了动力,这也是全人类的共同遗产。GitHub Archive Program 的任务就是最大可能为后代保留这些开源软件。为了完成这项计划,GitHub 与 Long Now Foundation、the Internet Archive、the Software Heritage Foundation, Arctic World Archive、Microsoft Research、the Bodleian Library 和 Stanford Libraries 合作,通过不间断地跨各种数据格式和位置存储多个副本来保护代码,维持至少 1000 年的长期存档。

GitHub 表示,尽管发生全球性灾难的可能性很小,但所有存储在现代设备平台上的内容都可能会在几代后消失,跨多个组织和存储形式的归档软件将有助于确保其长期保存:在线归档员将其称为“ LOCKSS”,因为大量副本可以确保安全。

目前,大量的知识存储在临时媒体设备上:硬盘、SSD、CD 可以使用数十年,备份磁带名义上只有 30 年的寿命,还得严格控制热量和湿度。即便未来这些硬件还在,但运行在上面的软件可能早已被淘汰, GitHub Archive Program 计划有更长远的打算,以解决数据在未来丢失的风险。

与此同时,这一计划也为受到访问限制的开发者提供了选择,如果 GitHub 在某些地方不可用,受影响的开发人员可以使用 Internet Archive 和 Software Heritage Foundation 访问其项目的公共代码。

存哪?怎么存?  

在 Long Now 创始人 Steward Brand 的启发下,GitHub 采用“分层”策略来归档代码。通过提供从实时到长期存储的一系列解决方案,该方法旨在最大程度地提高灵活性和耐用性。存档程序分为三类:热门,一般和冷门。

热门:接近实时更新

一般:每月或每年更新一次

冷门:每 5 年以上更新一次

GitHub(以下各存储方案按热度排列,GitHub 为热门项目首选)

每次访问 GitHub,GitHub 都会将 Git 数据复制到世界各地的多个数据中心。此外,在 Git 的多个位置存储数据、问题、拉取请求以及数据备份,所有这些都可通过 GitHub API 实时获得。

GHTorrent

GHTorrent 监视 GitHub 公共项目的时间线,并进行归档,递归爬取归档内容和依赖性。这些存档每天或每月可供下载。

GH Archive

GH Archive 监视 GitHub 公共事件时间轴,将这些事件归档,并使用 BigQuery 使它们可查询。开发者可以按小时、天或月下载快照。

Wayback Machine

互联网档案馆 Wayback Machine 将检索 GitHub 的公共资料库(包括新的资料库、问题、拉取请求、Wiki 等),并将副本存储在旧金山和其他位置的硬盘上,这些档案将通过 git 和 https 公开提供。

Software Heritage Foundation

Software Heritage Foundation(软件遗产基金会)将定期抓取 GitHub,并将其公共存储库添加到存档中,并向其提供公共 API 访问权限。

Bodleian 图书馆

牛津大学的 Bodleian 图书馆将 GitHub 的 10,000 个最受关注和最依赖的存储库保留为 Piql 胶片格式,从而为 Arctic Code Vault 提供冗余。

GitHub Arctic Code Vault(北极)

2020 年 2 月 2 日,GitHub 会对每个活跃的公共存储库进行快照捕获,并保存在 GitHub Arctic Code Vault 中。存储所使用的胶片卷轴长达 3500 英尺,由专门负责研发超长期数据保存技术的挪威 Piql 公司提供并编码,其中的薄膜使用卤化银聚酯技术。根据 ISO 标准,这种介质的使用寿命长达 500 年;同时,老化模拟测试表明,其使用时长也能达到原来的两倍。

这是位于北极世界档案馆(AWA)中的数据存储库,位于北极山永久冻土区深 250 米。该档案馆位于斯瓦尔巴群岛的一个废弃煤矿中,比北极圈更靠近北极。GitHub 将在 2020 年 2 月 2 日捕获每个活动公共存储库的快照,并将这些数据保存在 Arctic Code Vault 中。

斯瓦尔巴群岛受国际《斯瓦尔巴群岛条约》的管制,属于非军事区,是世界上最北端的城镇所在地,地球上最偏远和地缘政治最稳定的人类居住地之一。AWA 是挪威国有采矿公司 Store Norske Spitsbergen Kulkompani(SNSK)与长期数字存储提供商 Piql AS 的一项联合计划。AWA 致力于永久保存档案,胶片卷轴将被存储在位于斯瓦尔巴群岛偏远群岛一座废弃煤矿密封室内的钢壁容器中。

尽管斯瓦尔巴群岛受到气候变化的影响,但在可预见的将来,可能只会影响到最外面几米的永久冻土,预计变暖不会威胁稳定性。矿山靠近著名的 Global Seed Vault(仅一英里之遥),这增强了斯瓦尔巴群岛作为人类集体知识的稳定且长期的档案馆地位。

存档在 GitHub Arctic Code Vault 中的 02/02/2020 快照将包括所有活动的公共 GitHub 存储库,此外还包括由星号、依赖项和咨询小组确定的大量休眠存储库。快照将由每个存储库的默认分支的 HEAD 减去任何大于 100KB 的二进制文件组成,每个存储库将打包为一个 TAR 文件。

为了提高数据密度和完整性,大多数据将以 QR 编码存储。易于阅读的索引和指南将逐项列出每个存储库的位置,并说明如何恢复数据。

微软研究院的 SILICA 项目

GitHub 存档计划与 Microsoft 的 Silica 项目合作,通过使用飞秒激光(目前科技条件下所能获得的最短脉冲激光)将所有活动的公共存储库写入石英玻璃片中,最终将其保存超过 10,000 年。

未来如何获取这些代码?  

GitHub 正在召集 GitHub Archive Program 咨询小组,其中包括人类学、考古学、历史学、语言学、档案科学、未来主义等方面的专家,就应该在归档中包含哪些内容以及如何与继承者进行最佳沟通提出建议。

存档的简介将包括 QR 解码、文件格式、字符编码和其他关键元数据的技术指南,以便可以将原始数据转换回源代码,以供将来其他人使用。该归档文件还将包括技术树 - 路线图和 Rosetta Stone,以供将来好奇的人继承该归档文件的数据。

关于存档及其使用方式的概述,“技术树”将作为软件开发和计算的快速入门手册,并与该存档的用户指南捆绑在一起。它将描述如何从原始数据向后处理到源代码,以及如何提取项目的目录、文件和数据格式。

受《长期文明手册》启发,该档案还将包括应用开源的信息和指南,以及当下开发者使用开源的情况,以防将来读者需要从头开始重建技术。在人类拥有可以运行的现代计算机但没有可在其上运行的软件的范围内,档案及其技术树可能会非常有价值。但是,该价值很有可能是历史性的。

一千年是很长的时间,一千多年前尚未建成吴哥窟等古代遗址。但是,GitHub 认为可以考虑并计划在未来 1000 年内实现各种可能性,主要任务是为后代开发者保留开源软件,并打算将 GitHub Archive Program 作为开源社区重要性的证明。希望这项计划现在和将来可以进一步宣传全球开源运动,促进在全球范围内广泛采用开源和开放数据政策并鼓励长期思考。


京东物流对内承载着零售电商物流“211”高时效高质量的服务要求,对外既为各行业商家提供全链条的企业级供应链服务,也拥有面向个人客户的快递、仓储等业务。12 月 6 日,我们邀请到京东物流首席数据分析官吴盛楠博士为大家分享一下“京东物流智能大脑系统建设”那些事。

9 折购票倒计时 3 天,限时立减 880 元,团购更优惠!可直接扫描下方图片二维码申请购票!

点个在看少个 bug 👇

登录查看更多
0

相关内容

GitHub.com 使用 Git 作为版本控制系统(version control system)提供在线源码托管的服务,同时是个有社交功能的开发者社区。 国外类似服务: Bitbucket.com
Gitlab.com
国内类似服务:
Coding.net
【ICML2020】小样本目标检测
专知会员服务
90+阅读 · 2020年6月2日
【CVPR2020-旷视】DPGN:分布传播图网络的小样本学习
专知会员服务
26+阅读 · 2020年4月1日
【2020新书】如何认真写好的代码和软件,318页pdf
专知会员服务
63+阅读 · 2020年3月26日
抢鲜看!13篇CVPR2020论文链接/开源代码/解读
专知会员服务
49+阅读 · 2020年2月26日
机器学习相关资源(框架、库、软件)大列表
专知会员服务
39+阅读 · 2019年10月9日
一箭60星,特朗普宣称的6G或已开始启动
全球人工智能
11+阅读 · 2019年5月27日
3月份Github上最热门的数据科学和机器学习项目
大数据技术
7+阅读 · 2018年4月23日
3月份GitHub上最热门的开源项目
大数据技术
3+阅读 · 2018年4月10日
噩耗再次传来!华为,挺住!
FinTech前哨
4+阅读 · 2018年2月4日
10个深度学习软件的安装指南(附代码)
数据派THU
17+阅读 · 2017年11月18日
这位程序员为什么要弃用Facebook?
CSDN
5+阅读 · 2017年7月14日
Arxiv
24+阅读 · 2020年3月11日
Arxiv
26+阅读 · 2020年2月21日
Arxiv
7+阅读 · 2018年12月10日
Arxiv
11+阅读 · 2018年4月8日
Arxiv
7+阅读 · 2018年1月24日
VIP会员
相关VIP内容
【ICML2020】小样本目标检测
专知会员服务
90+阅读 · 2020年6月2日
【CVPR2020-旷视】DPGN:分布传播图网络的小样本学习
专知会员服务
26+阅读 · 2020年4月1日
【2020新书】如何认真写好的代码和软件,318页pdf
专知会员服务
63+阅读 · 2020年3月26日
抢鲜看!13篇CVPR2020论文链接/开源代码/解读
专知会员服务
49+阅读 · 2020年2月26日
机器学习相关资源(框架、库、软件)大列表
专知会员服务
39+阅读 · 2019年10月9日
相关资讯
一箭60星,特朗普宣称的6G或已开始启动
全球人工智能
11+阅读 · 2019年5月27日
3月份Github上最热门的数据科学和机器学习项目
大数据技术
7+阅读 · 2018年4月23日
3月份GitHub上最热门的开源项目
大数据技术
3+阅读 · 2018年4月10日
噩耗再次传来!华为,挺住!
FinTech前哨
4+阅读 · 2018年2月4日
10个深度学习软件的安装指南(附代码)
数据派THU
17+阅读 · 2017年11月18日
这位程序员为什么要弃用Facebook?
CSDN
5+阅读 · 2017年7月14日
Top
微信扫码咨询专知VIP会员