跳至主要內容
Data System School · 論文精煉

經典論文,精煉版

把資料系統時間軸上每一篇奠基性論文完整讀過,再濃縮成一頁你真的讀得完的重點。

33論文
5年代
14分類
2語言
時間軸
1960s–1970s · 奠基年代 3 篇
1980s–1990s · 打磨核心 10 篇
1970 年代末–1980 年代

The Transaction Concept: Virtues and Limitations

Transactions
Jim Gray(Tandem Computers Incorporated,加州 Cupertino)

把 atomicity、consistency、durability 立為交易的三大性質,再誠實指出巢狀與長時間交易會在哪裡撐不住。

第七屆 International Conference on Very Large Databases,1981 年 9 月;另發表為 Tandem 技術報告 TR 81.3,1981 年 6 月 閱讀 →
1970 年代末–1980 年代

Jim Gray 的八篇交易論文(Eight Transaction Papers by Jim Gray)

Transactions
Philip A. Bernstein(Microsoft Research)

回顧 Jim Gray 八篇交易論文,串起從 two-phase locking 到 Paxos Commit 的交易抽象建構史。

ACM 圖靈獎得主系列書籍章節(Curiosity, Clarity, and Caring);arXiv 預印本,2023 年 10 月 閱讀 →
1986 起

Looking Back at Postgres(回顧 Postgres)

Extensible DBMS
Joseph M. Hellerstein,加州大學柏克萊分校(UC Berkeley)

回顧柏克萊 Postgres:一套以可擴展性為核心的物件關聯式設計,孕育了 PostgreSQL 與整個世代的資料庫系統。

arXiv:1901.01973,2019 年 1 月;為 Stonebraker 的 Turing Award 紀念文集 Making Databases Work(Morgan & Claypool, 2019)邀稿而寫 閱讀 →
1986–1990s

GAMMA - A High Performance Dataflow Database Machine

Parallel DBMS
David J. DeWitt、Robert H. Gerber、Goetz Graefe、Michael L. Heytens 等(另有 Krishna B. Kumar、M. Muralikrishna)- University of Wisconsin 計算機科學系

第一台真正跑起來的 shared-nothing 平行資料庫:一顆處理器配一顆磁碟,關聯全部分割,查詢以自我排程的資料流執行。

VLDB 1986(第十二屆 Very Large Data Bases 國際會議論文集,京都,1986 年 8 月),頁 228-237 閱讀 →
1986–1990s

Parallel Database Systems: The Future of High Performance Database Processing

Parallel DBMS
David J. DeWitt(University of Wisconsin-Madison 資訊科學系)與 Jim Gray(Digital Equipment Corporation,San Francisco Systems Center)

以 shared-nothing 硬體、資料分割與 split/merge 資料流執行環境,讓關聯式查詢取得近乎線性的 speedup 與 scaleup。

CACM 35(6),1992 年 6 月 閱讀 →
1992

ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging

Transactions
C. Mohan、Don Haderle、Bruce Lindsay、Hamid Pirahesh 等(IBM Almaden Research Center 與 IBM Santa Teresa Laboratory)

ARIES 以「重演歷史」再搭配 redo-only 的補償日誌,讓細粒度鎖定下的當機復原同時做到正確與快速。

ACM Transactions on Database Systems 17(1),1992 年 3 月,第 94-162 頁 閱讀 →
1995–1997

Data Cube:一個一般化 Group-By、Cross-Tab 與小計的關聯式聚合運算子

Data warehouse / OLAP
Jim Gray、Surajit Chaudhuri、Adam Bosworth、Andrew Layman 等人(Microsoft Research,Redmond, WA),以及 Hamid Pirahesh 與 Frank Pellow(IBM Research,San Jose, CA)

CUBE 運算子:一個 SQL 子句就一次算完 N 個維度上所有的 group-by,而且結果仍是一個關聯。

Data Mining and Knowledge Discovery 1(1): 29-53,1997;Microsoft 技術報告 MSR-TR-97-32(延伸摘要發表於 ICDE 1996) 閱讀 →
1996

The Log-Structured Merge-Tree (LSM-Tree)

Storage engine
Patrick O'Neil、Elizabeth O'Neil(UMass/Boston 數學與資訊科學系),Edward Cheng(Digital Equipment Corporation),Dieter Gawlick(Oracle Corporation)

把索引插入延後並批次化,交給層層串接的排序合併處理,將磁碟臂成本壓低近兩個數量級的磁碟索引結構。

Acta Informatica 33,1996 閱讀 →
1989–2001

The Part-Time Parliament(兼職議會)

Distributed systems
Leslie Lamport(Digital Equipment Corporation, Systems Research Center),並附有 Keith Marzullo(University of California, San Diego)撰寫的投稿說明

Paxos:以多數決 quorum 讓複本日誌在節點故障與訊息遺失下維持一致,並在網路穩定時取得進展。

ACM Transactions on Computer Systems 16(2),1998 年 5 月(1990 年 1 月收稿,1998 年 3 月接受) 閱讀 →
1989–2001

Paxos Made Simple

Distributed systems
Leslie Lamport(Microsoft Research)

用白話重新推導 Paxos,說明容錯共識幾乎是從「多數派 acceptor 必須達成一致」這個要求無可避免地長出來的。

ACM SIGACT News 32(4),2001 年 12 月;手稿日期 2001 年 11 月 1 日 閱讀 →
2000s · 網路規模的斷裂點 7 篇
2000–2002

Perspectives on the CAP Theorem

Distributed systems
Seth Gilbert(新加坡國立大學)與 Nancy A. Lynch(麻省理工學院)

CAP 的權威重述:重點不是三選二,而是不可靠網路上安全性與存活性無法兼得的不可能性。

IEEE Computer 45(2), 2012 閱讀 →
2003

The Google File System

Distributed storage
Sanjay Ghemawat、Howard Gobioff、Shun-Tak Leung(Google)

一套把商用硬體故障視為常態、檔案視為巨大、並把並行 append 當成一級原子操作的叢集檔案系統。

SOSP 2003 閱讀 →
2004

MapReduce: Simplified Data Processing on Large Clusters

Big data processing
Jeffrey Dean、Sanjay Ghemawat,Google, Inc.

一個把平行化、容錯、資料局部性與負載平衡全部藏進函式庫的模型,使用者只需寫 map 與 reduce 兩個函式。

OSDI 2004 閱讀 →
2005

C-Store: A Column-oriented DBMS

Data warehouse / OLAP
Mike Stonebraker、Daniel J. Abadi、Adam Batkin、Xuedong Chen 等(MIT CSAIL、Brandeis University、UMass Boston、Brown University)

以重疊的排序投影、壓縮欄位與可更新寫入儲存打造的讀取最佳化欄式資料庫,並以 snapshot isolation 取代查詢鎖定。

VLDB 2005(第 31 屆 VLDB Conference,Trondheim, Norway) 閱讀 →
2005

The Vertica Analytic Database: C-Store 7 Years Later

Data warehouse / OLAP
Andrew Lamb、Matt Fuller、Ramakrishna Varadarajan、Nga Tran 等(Vertica Systems,HP 旗下公司,Cambridge, MA)

C-Store 商品化七年後的工程覆盤:哪些欄式儲存的研究構想撐過了真實客戶,哪些被丟掉。

PVLDB 5(12),VLDB 2012 閱讀 →
2008–2010

Cassandra - A Decentralized Structured Storage System(Cassandra:一套去中心化的結構化儲存系統)

Distributed storage
Avinash Lakshman、Prashant Malik,任職於 Facebook

把 Dynamo 的無主環狀分散架構接上 Bigtable 的 column family 資料模型,扛下每天數十億次寫入的生產級儲存系統。

LADIS 2009(ACM SIGOPS 大規模分散式系統與中介軟體研討會);後刊於 ACM SIGOPS Operating Systems Review 44(2), 2010 閱讀 →
2009

Hive - A Warehousing Solution Over a Map-Reduce Framework(Hive:建構於 Map-Reduce 框架之上的資料倉儲方案)

Big data processing
Ashish Thusoo、Joydeep Sen Sarma、Namit Jain、Zheng Shao 等人(Facebook Data Infrastructure Team)

把 SQL 式資料倉儲蓋在 Hadoop 上:HiveQL 編譯成 map-reduce DAG,並搭配系統目錄、分割、bucket 與可插拔 SerDe。

VLDB 2009,法國里昂(demonstration 論文) 閱讀 →
2010s · 雲端、串流與共識 8 篇
2010

Spark: Cluster Computing with Working Sets

Big data processing
Matei Zaharia、Mosharaf Chowdhury、Michael J. Franklin、Scott Shenker 等人,University of California, Berkeley

Resilient distributed dataset:可快取、能靠 lineage 重建的分散式集合,讓叢集把工作集留在記憶體中反覆重用。

HotCloud 2010(第 2 屆 USENIX Hot Topics in Cloud Computing 研討會) 閱讀 →
2011

Kafka: a Distributed Messaging System for Log Processing

Streaming
Jay Kreps、Neha Narkhede、Jun Rao,LinkedIn Corp.

一套面向大量事件資料的分散式 commit log:topic 切分成 partition、只做 append 的 segment 檔、由 consumer 自己保管 offset 的 pull 模式,加上 zero-copy 傳輸。

NetDB 2011(Workshop on Networking Meets Databases),希臘雅典,2011 年 6 月 閱讀 →
2012

Spanner: Google's Globally-Distributed Database

Distributed SQL
James C. Corbett、Jeffrey Dean、Michael Epstein、Andrew Fikes 等 23 人,Google, Inc.

第一個把時鐘不確定性攤在時間 API 上、再用等待把它耗掉,從而讓全球分散式交易具備外部一致性的資料庫。

OSDI 2012(第 10 屆 USENIX Symposium on Operating Systems Design and Implementation) 閱讀 →
2012

Calvin: Fast Distributed Transactions for Partitioned Database Systems

Distributed SQL
Alexander Thomson、Thaddeus Diamond、Shu-Chun Weng、Kun Ren 等人 — Yale University

先以決定性方式排定交易順序再執行,分割式資料庫就能完全捨棄兩階段提交。

SIGMOD 2012 閱讀 →
2012–2013

Presto: SQL on Everything

Query processing
Raghav Sethi、Martin Traverso、Dain Sundstrom、David Phillips 等人(Facebook, Inc.)

一套具適應性的分散式 SQL 引擎,同時支撐次秒級儀表板與長達數小時的 ETL,並可插接數十種資料來源。

ICDE 2019 閱讀 →
2012–2013

Evolution of Development Priorities in Key-value Stores Serving Large-scale Applications: The RocksDB Experience(服務大規模應用的鍵值儲存系統,其開發優先順序的演變:RocksDB 的經驗)

Storage engine
Siying Dong、Andrew Kryczka、Yanqin Jin(Facebook Inc.)與 Michael Stumm(多倫多大學)

RocksDB 在 Facebook 規模下運行八年的實戰報告:最佳化目標如何從寫入放大轉到空間放大,再轉到 CPU。

FAST 2021(第 19 屆 USENIX Conference on File and Storage Technologies),2021 年 2 月 閱讀 →
2014

In Search of an Understandable Consensus Algorithm (Extended Version)

Distributed systems
Diego Ongaro 與 John Ousterhout(Stanford University)

一套以可理解性為設計目標的 leader 式共識演算法,安全性與效率等同 multi-Paxos,但教得會也寫得出來。

Stanford 技術報告,2014 年 5 月 20 日發表;為 USENIX ATC 2014 論文的延伸版 閱讀 →
2014–2016

The Snowflake Elastic Data Warehouse(Snowflake 彈性資料倉儲)

Cloud data systems
Benoit Dageville、Thierry Cruanes、Marcin Zukowski、Vadim Antonov 等人(Snowflake Computing)

把資料倉儲拆成 blob 儲存、用完即丟的運算叢集,與共用的中繼資料大腦,讓彈性成為架構本身的性質。

SIGMOD/PODS 2016,美國舊金山 閱讀 →
2020–2026 · Lakehouse 與 AI 原生時代 5 篇
2016–2020,2020 年代成為主流

Delta Lake: High-Performance ACID Table Storage over Cloud Object Stores

Lakehouse
Michael Armbrust、Tathagata Das、Liwen Sun、Burak Yavuz 等(Databricks,另有 CWI、UC Berkeley 與 Stanford University)

在原生雲端物件儲存上做出 ACID 資料表:靠一份以 Parquet 做 checkpoint 的 WAL,完全不需要常駐的 metadata 服務。

PVLDB 13(12),2020(VLDB 2020) 閱讀 →
2016–2020,2020 年代成為主流

Lakehouse: A New Generation of Open Platforms that Unify Data Warehousing and Advanced Analytics(Lakehouse:統一資料倉儲與進階分析的新一代開放平台)

Lakehouse
Michael Armbrust、Ali Ghodsi、Reynold Xin、Matei Zaharia(Databricks;UC Berkeley;Stanford University)

一份設計藍圖:直接在雲端物件儲存的開放 Parquet 檔案之上,做出倉儲級的交易、索引與 SQL 效能。

CIDR 2021(第 11 屆 Innovative Data Systems Research 會議),線上舉行,2021 年 1 月 閱讀 →
2019–2020 年代

DuckDB: an Embeddable Analytical Database(DuckDB:可嵌入的分析型資料庫)

Query processing
Mark Raasveldt、Hannes Mühleisen(CWI,阿姆斯特丹)

一顆與應用程式同行程執行的 SQL 引擎,把向量化 OLAP 帶進 SQLite 空著的嵌入式位置。

SIGMOD 2019(demonstration 論文),荷蘭阿姆斯特丹 閱讀 →
2009;2018 年開源

FoundationDB: A Distributed Unbundled Transactional Key Value Store(FoundationDB:一套分散式、拆解式的交易型 key-value 儲存系統)

Distributed SQL
Jingyu Zhou、Meng Xu、Alexander Shraer、Bala Namasivayam 等 21 位作者,分屬 Apple Inc.、Snowflake Inc. 與 antithesis.com

把資料庫拆解成互不耦合的元件,在 NoSQL 規模上提供可序列化的 ACID 交易,並用確定性模擬驗證每一項功能。

SIGMOD 2021(ACM SIGMOD 國際資料管理研討會),2021 年 6 月 閱讀 →
2025

Disaggregated State Management in Apache Flink 2.0

Streaming
Yuan Mei、Zhaoqian Lan、Lei Huang、Yanfei Lei 等人(Alibaba Group;Boston University;KTH Royal Institute of Technology)

把串流狀態的主要儲存搬到遠端檔案系統,再用非同步、亂序的記錄執行模型把遠端延遲藏起來。

PVLDB 18(12),2025(VLDB 2025) 閱讀 →
沒有符合條件的論文。