每日最新頭條.有趣資訊

GitHub啟動代碼永久保存計劃,至少一千年!

作者丨趙鈺瑩

近日,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

獲得更多的PTT最新消息
按讚加入粉絲團