你不該錯過的計算機會議

這個會議不是 InfoQ 那種技術會議或者各種技術團體的 Meetup,而是計算機學術領域的會議,也就是全是論文的會議 —— SOSP (Symposium on Operating Systems Principles), 你可能會覺得自己又不是搞學術的,沒事看論文幹什麼(如果你是搞學術的應該早就知道這個會議的量級了),我就來簡單介紹一下這個會議的論文,為啥搞 IT 技術的都該去看看,看完後你會發現這個會議真的離你很近。

第一屆 SOSP 在 1967 年舉辦,主要是操作系統領域的會議,算是計算機領域歷史相當悠久的會議了,並且每兩年才開一次,不像現在很多水會一個季度開一次,過分的期刊可能一個月就一次。 SOSP 每次大概不到 10 個 session,每個 session 只有 3 到 4 篇論文甚至更少,每兩年也就二三十篇的錄取量。對比下來,現在大熱的機器學習,人工智慧領域頂級會議可能一年都會錄上百篇。由於 session 開的少,錄取量又特別少,基本上 SOSP 只要開一個 session 這個領域內這兩年里最好的論文都會投這個會議。儘管 SOSP 最早是作為操作系統的會議,但他只要開軟工,安全,分散式相關的 session,儘管這些方向都有各自的頂級會議但是各自方向最好的工作都會保留到這個會議上發表。甚至 SOSP 幾乎不涉及的機器學習和人工智慧,只要開這個方向,那麼肯定也是當年最好的論文。因此在這個會議上匯聚了計算機各個領域最好的工作,很多工作都對之後的學術界以及工業界產生了翻天覆地的影響,開創了一個又一個火熱的產業。

由於錄取量實在太少於是 94 年又開了新的一個會議 OSDI(Operating Systems Design and Implementation) 和 SOSP 性質基本一樣,都是以操作系統起家的頂級會議,都是以錄取難聞名於圈內,而且評審和能參加這兩個會的基本都是一撥人,唯一的區別就是一個在奇數年開,一個在偶數年開,所以基本大家也把他們看成是一樣的。下面我會列舉一下這兩個會議的工作,也都以 SOSP 代稱了,讓你看一下有哪些你已經習以為常的東西其實是源於這個會議。

MapReduce, GFS, Bigtable : 這是 Google 的老三篇了,也可以說是名氣最大的幾篇,全部出於這個會議。這三篇開啟了大數據處理的時代,解決了如何對海量數據進行計算,存儲,以及高可用,故障處理等工程問題。這三篇的後果就是直接把大數據炒火了,因為有了可行的技術方案,誰都覺得自己能做了。同樣也開啟了 Apach 基金會的以個黃金時代,仿造的開源作品 Hadoop,HDFS,HBase 成為了幾乎所有公司需要處理大數據的標配,無數公司因此誕生並發展。對學術圈的衝擊就是由於 Google 的老三篇和數據關聯很近,直接把很多和資料庫相關的頂級會議搞水了,一時間所有資料庫的會議都在優化 hadoop。同樣這個勢頭也慢慢延伸到了其他計算機領域,安全、軟工、通信幾乎所有的領域都被大數據佔據了。

Chubby:依然是 Google 的產品,直接催生了 Zookeeper 的誕生,成為了分散式一致性服務的一個工程標準,在 raft 協議和 etcd 誕生之前,Zookeeper 幾乎是能找到的最好的開源分散式一致性服務的一個實現。

Dapper: 還是 Google 的分散式 trace 跟蹤系統,為分散式系統的監控提供了一個技術方案,現在很多 APM 的公司,包括一些大公司內部的探針,阿里的鷹眼,美團點評的 CAT 系統,都從中有所借鑒。

Spark:內存計算和流式計算目前最主流的開源產品,也被人給予厚望認為能顛覆 hadoop 的大數據處理的模式,依然來自這個會議。值得提一下 Spark 出身 UC Berkeley,他們組花了很多年時間做這個系統,從最早的一個 poster,到 short paper 最後終於發到了頂級會議上。而之後 Spark 的成功大家應該也都知道了。

Parameter Server: 最早說了 SOSP 基本上和機器學習的關係不大,而且也不像其他會議狂開機器學習相關的 session 但是,一旦開了那就會有最好的工作來。基本上 Parameter Server 已經成為了各個公司處理分散式深度學習的標配。

Tensorflow: 可能是當下最火的機器學習框架了,同樣出自這個會議。

列舉了這些知名的產品,你心裡大概就有點概念了,這個會議儘管是學術圈的但是基本上很多工作還是會影響的工業界的進程。還有很多別的知名工作,比如 Google 的新三篇,Spanner, Amazon 的 DynamonDB,VMware 早期的一些虛擬化技術,P2P 的早期技術等等也都源於這個會議。

儘管時下最流行的是人工智慧,深度學習,大數據,雲計算這些概念,但是這些概念都是要有底層系統的支撐才能實現的。以深度學習為例,深度學習這些年的發展很大程度還是由於硬體可以更快的進行計算,軟體系統又可以很好的處理大規模的存儲和分散式的計算。可以想一下沒有上面提到的這些底層的系統產品,人工智慧、大數據這些概念應該如何實現。

能入選 SOSP 的論文一般都有這麼兩個特點:

  1. 工程量特別大:一般系統的實現沒個一兩年根本達不到門檻,像 Google 都是運行了近十年的才能拿出來,學校里的基本也是這個方向積累了很多年才拿出來。
  2. 解決的問題特別難:基本上都是超出常規想像能力的問題,或者基本認知是不可能達到的事情,這種事情居然做出來了,才有可能中。

這是這兩個原因導致這個會議幾乎沒有辦法灌水,大家也都會拼勁全力往裡擠,每一篇論文都是值得反覆精讀,從中獲取營養的。不過讀完也經常會感嘆,要麼我沒有這麼大規模的量,要麼沒有這麼苛刻的需求,要麼就是這個對我很有用可是實在是實現太難了,我做不到呀!

現在你應該有衝動去看這個會議的論文了吧?接下來我也會花一段時間來看,一些心得體會也會記錄下來,不過畢竟不在學術圈很多年,很多東西不會涉及了。感興趣的可以看一下這個專欄 SOSP 2017 論文 裡面已經記錄了一些人的新的和體會。

推薦閱讀:

TAG:计算机 | 操作系统 | 大数据 |