HackerPapers

HN 二十年,最值得读的论文。

从 Hacker News 2006 年以来的全部投稿里,挑出链接本身就是论文的帖子:arXiv、期刊、会议论文、技术报告。每篇附中文标题,讨论最热的那些再加上中文导读和高赞评论翻译。

从必读开始
  • 8,000+篇被 HN 讨论过的论文

Essential

必读 30 篇

在论文库里看全部精选

编辑精选里 HN 讨论最热的 30 篇,每篇都有中文导读。不知道从哪读起,就从这里开始。

  1. 正在载入论文…

Archive

论文库

点柱子按年份筛选。注:源数据里 2023 年的帖子分数记录不全,2026 年尚未过完,这两年收录偏少。

难度
排序

    About

    这些论文是怎么挑出来的

    1. 01

      全量扫一遍

      读取 Hacker News 自 2006 年以来的全部 446 万条链接投稿,找出指向 arXiv、期刊、会议、技术报告和学术 PDF 的帖子。

    2. 02

      只留论文本身

      由 AI 逐条判断,剔除介绍论文的新闻、博客和幻灯片,同一篇论文的多次投稿合并计算,并统计它在评论区被引用的次数。

    3. 03

      写导读、译评论

      讨论最热的 1,500 篇配上中文导读,并精选、翻译 HN 高赞评论。导读由 AI 生成,可能有误,请以原文为准。

    系统与数据库2015cidrdb.org

    不可变性改变一切

    Immutability Changes Everything (2016)

    进阶 · 约 60 分钟读完前置知识:数据库系统基础、快照隔离、分布式系统基础

    读论文 HN 讨论
    208HN 得分
    67条评论
    2次投稿

    导读

    这篇 CIDR 2015 论文《Immutability Changes Everything》论证不可变性(immutability)是贯穿数据库、系统设计与分布式计算的核心原则:从记账员从不涂改账本这一古老实践出发,说明 append-only 数据加后台增量维护可以简化并发控制、容错与一致性处理。论文涵盖版本存储、快照隔离、增量 MapReduce、Git 式版本管理等多个场景,主张不可变数据让许多传统上复杂的工程问题变得简单。

    HN 关注点:HN 读者长期关注函数式编程、事件溯源和 append-only 架构,这篇论文把这些零散实践统一成一条设计原则,讨论焦点在于不可变性的适用边界与代价。

    关键词 不可变性append-only数据库事件溯源

    后来怎么样

    这篇论文使不可变数据/事件溯源理念在数据库与系统设计圈获得广泛认可,append-only 架构(如 Datomic、Kafka 日志、LSM-tree 设计)的讨论常引用其观点,成为不可变数据管理方向的代表性文献。

    HN 评论精选

    这几条评论里:质疑 1 补充 3

    补充推荐 Irmin 这个类 Git 分布式存储作为不可变数据结构的实践案例

    对不可变数据结构感兴趣的读者可以关注 Irmin——一个类 Git 的分布式存储(即将发布),它也是更大技术栈的一部分。

    amirmc查看英文原文

    Those interested in immutable data-structures might like to look into Irmin [1], git-like distributed storage (due to be released soon). It's also part of a larger stack [2]. [1] http://openmirage.org/blog/introducing-irmin -- prev discussion: https://news.ycombinator.com/item?id=8053687 [2] http://amirchaudhry.com/brewing-miso-to-serve-nymote/

    质疑质疑论文观点:append-only 系统同样存在更新异常,规范化并非多余

    论文说『规范化的目标是消除更新异常,不可变数据集不需要规范化』。但在 append-only 场景下仍可能有更新异常:教师改名(提交一份改名表单)后,你仍需要替换所有班级名单。

    talaketu查看英文原文

    > "Normalization’s goal is to eliminate update anomalies. Normalization is not necessary in an immutable data set. The only reason to normalize immutable DataSets may be to reduce the storage necessary." You can still have an update anomaly in an append-only setting. Teacher changes name (by submitting a change-of-name form) - now you need to replace all the class lists.

    补充借『会计不用橡皮』的比喻调侃不可变性与垃圾回收的关系

    『会计不用橡皮擦』——我本想说科学家也不用,但他们确实用黑板擦……不过只在那些不再被引用的内存单元上擦。

    agumonkey查看英文原文

    "Accountants Don’t Use Erasers" I was about to say 'scientist too' but they do use chalkboard erasers... only when cons cells aren't reachable anymore though.

    补充补充视角:数据最小化与不可变性在隐私保护上相关联

    事前的数据最小化同样重要,可参考相关隐私法律博客和 FTC 关于物联网安全的资料。

    walterbell查看英文原文

    Up-front data minimization is also important, http://privacylawblog.fieldfisher.com/category/data-minimisation & http://www.ftc.gov/system/files/documents/plain-language/pdf0199-carefulconnections-buildingsecurityinternetofthings.pdf

    相关资源

    从这篇论文所有 HN 讨论帖的全部评论里整理出来的链接。

    视频与演讲

    历次讨论

    同领域还值得读

    1. I/O 比 CPU 更快——让我们划分资源并消除操作系统抽象

      I/O Is Faster Than CPU – Let’s Partition Resources and Eliminate OS Abstractions

      指出在现代服务器硬件上 I/O 速度已接近甚至超过 CPU,传统操作系统抽象反而成为瓶颈。

      系统与数据库2019 · 817 分 · 277 评进阶 · 约 30 分钟编辑精选
    2. 使用 io_uring 的高效 I/O

      Efficient IO with io_uring

      由 Linux 内核开发者 Jens Axboe 撰写,介绍 Linux 新的异步 I/O 接口 io_uring。

      系统与数据库2019 · 426 分 · 96 评进阶 · 约 45 分钟编辑精选
    3. 线程对大多数用途而言是个坏主意(1995)

      Threads Are a Bad Idea for Most Purposes (1995)

      这篇 1995 年的文章由 John Ousterhout 撰写,讨论为什么线程对大多数用途而言是坏主意,并主张事件驱动编程通常更简单、更高效。

      系统与数据库2017 · 423 分 · 382 评进阶 · 约 25 分钟编辑精选
    4. 学习型索引结构之论证

      The Case for Learned Index Structures

      提出把索引看作一种"模型":既然 B-tree 等结构本质上是在学习数据的分布,就可以用机器学习模型(如回归模型、神经网络)来近似键到位置的映射,从而替代 B-tree、哈希索引…

      系统与数据库2017 · 398 分 · 66 评 · 引用 25进阶 · 约 60 分钟编辑精选
    5. FoundationDB:一个分布式、解耦的事务型键值存储

      FoundationDB: A distributed, unbundled, transactional key value store

      介绍 FoundationDB:一个分布式、解耦设计的事务性键值存储。

      系统与数据库2021 · 283 分 · 99 评进阶 · 约 90 分钟编辑精选

    打赏支持

    打赏二维码

    觉得有用,请作者喝杯咖啡。

    WeChat

    关注向阳乔木

    微信公众号「向阳乔木推荐看」

    微信公众号「向阳乔木推荐看」二维码

    微信扫一扫;在微信里打开本页时,长按二维码识别。