Live data from Hacker News

Distributed Systems Classics (2017)

nvartolomei.com

51–60 of 61 posts

Re: Distributed Systems Classics (2017)

#51

Earlier quoted context omitted.

Yes, but it is boring telecom projects... so most people aren't interested. Scala is kind of a more modern alternative. If doing a twitter like platform, elixir with Phoenix channels could handle around >20k users per host. Very few other options work for that use case. =3

goroutines?

How the OTP handles Erlang/Elixir parallelism is kind of interesting. =3

https://blog.stenmans.org/theBeamBook/#_concurrency_parallel...

Re: Distributed Systems Classics (2017)

#52
post #13

This is not a bad list for sure. Here are some deeper cuts for those looking for something a bit less mainstream: "The Maintenance of Duplicate Databases" https://datatracker.ietf.org/doc/html/rfc677 (AFAIK the genesis of the use of logical clocks in distributed systems). "Chain Replication for Supporting High Throughput and Availability" https://www.usenix.org/legacy/event/osdi04/tech/full_papers/... (Chain replicat…

> Chain replication is how a huge percentage of real-world cloud-scale data replication is done

Is this still true today? I know that Facebook does [1], but I don't have references for any other places which use it.

[1] https://engineering.fb.com/2022/05/04/data-infrastructure/de...

Re: Distributed Systems Classics (2017)

#53
post #41

Earlier quoted context omitted.

That forms a basis for the difficulty. But then there's additional layers of difficulty in real networks where the path between nodes is often asymmetric, and you may also observe that elapsed time (A -> B -> A) is sometimes greater than elapsed time (A -> C -> B -> C -> A) or (A -> C -> B -> A) or (A -> B -> C -> A)

Doesn't each node just need to know its exact path (or latency of same) to the time source each is synchronizing from? The path from node to node doesn't matter because we're ordering log entries from the timestamp of the receiving node. Imagine you take three atomic clocks, synchronize them, and move each within exactly 1 meter of one of those nodes, directly connected in an identical manner. Relativistic effects ar…

How do you know the latency of the path if you haven't synchronized the clocks...

You might be able to control the latency on a LAN, but once you have servers in different locations, good luck. (GPS helps a lot, of course...)

Re: Distributed Systems Classics (2017)

#55

Some other classics (applied dist systems): - DDB: https://www.allthingsdistributed.com/files/amazon-dynamo-sos... - MapReduce: https://www.cs.princeton.edu/courses/archive/fall13/cos518/p... - Spark/RDDs: https://www.usenix.org/system/files/conference/nsdi12/nsdi12... - BigTable: https://static.googleusercontent.com/media/research.google.c...

Worth mentioning that Dynamo (the classic 2007 paper) and DynamoDB (the modern AWS product) have fairly little in common architecturally.

For DynamoDB, check out https://www.usenix.org/conference/atc22/presentation/elhemal... https://www.usenix.org/conference/atc23/presentation/idziore... and my analysis of the differences here https://brooker.co.za/blog/2025/08/15/dynamo-dynamodb-dsql.h...

Re: Distributed Systems Classics (2017)

#56
post #52
post #13

This is not a bad list for sure. Here are some deeper cuts for those looking for something a bit less mainstream: "The Maintenance of Duplicate Databases" https://datatracker.ietf.org/doc/html/rfc677 (AFAIK the genesis of the use of logical clocks in distributed systems). "Chain Replication for Supporting High Throughput and Availability" https://www.usenix.org/legacy/event/osdi04/tech/full_papers/... (Chain replicat…

> Chain replication is how a huge percentage of real-world cloud-scale data replication is done Is this still true today? I know that Facebook does [1], but I don't have references for any other places which use it. [1] https://engineering.fb.com/2022/05/04/data-infrastructure/de...

Inside multiple AWS products (including DynamoDB, Kinesis, and Aurora DSQL) is a system called Journal that moves a ton of data. It uses a variant of chain replication.

EBS is also a chain replication variant at heart, and moves even more data.

Re: Distributed Systems Classics (2017)

#57
post #22

I am a Lamport admirer. I gradually realized that Lamport is more of the godfather of distributed system than Hinton is to deep learning. Lamport is less prominent than Shannon is to information theory. Shannon is the closest to any title of "gold-like" figure to a scientific discipline of universal relevance in modern society. Lamport specifically revealed a philosophical connections between computer systems and phy…

> the relations between events happening in a distributed system, is more fundamental than their absolute ordering The important thing in most distributed systems is having an order. Having a single observer serialize events as it receives them is so much more tractable than trying to use absolute order. Using absolute order requires very precise time synchronization which is hard; using absolute order requires knowi…

There is no such thing as a general order; if people accept this then the problem relaxes and we stop trying to design impossible things.

Nodes shouldn't be observers. End users should be the observers. The ordering of event only matters from the perspective of the "I'm adding this to my shopping cart and clicking the buy button and then it said I bought it" story being internally consistent. The observer here is the end user and the end user knows what happens-before relationships were.

Databases should flip this ordering inside out and let the observers (or proxies for them) report what they did in which order. And it just happens that protocols for doing this already exist: distributed tracing encodes these relations.

A meaningful global order doesn't exist and attempts to conjure one only conjure a meaningless one, or one that throws away a lot of turns trying to perfectly order everything from some arbitrary internal observer.

Re: Distributed Systems Classics (2017)

#58
post #55

Some other classics (applied dist systems): - DDB: https://www.allthingsdistributed.com/files/amazon-dynamo-sos... - MapReduce: https://www.cs.princeton.edu/courses/archive/fall13/cos518/p... - Spark/RDDs: https://www.usenix.org/system/files/conference/nsdi12/nsdi12... - BigTable: https://static.googleusercontent.com/media/research.google.c...

Worth mentioning that Dynamo (the classic 2007 paper) and DynamoDB (the modern AWS product) have fairly little in common architecturally. For DynamoDB, check out https://www.usenix.org/conference/atc22/presentation/elhemal... https://www.usenix.org/conference/atc23/presentation/idziore... and my analysis of the differences here https://brooker.co.za/blog/2025/08/15/dynamo-dynamodb-dsql.h...

Nice distinction, thanks!

Re: Distributed Systems Classics (2017)

#59
post #24

I am a Lamport admirer. I gradually realized that Lamport is more of the godfather of distributed system than Hinton is to deep learning. Lamport is less prominent than Shannon is to information theory. Shannon is the closest to any title of "gold-like" figure to a scientific discipline of universal relevance in modern society. Lamport specifically revealed a philosophical connections between computer systems and phy…

Hot take of the day: Computer scientists are in denial about it, but CS is a branch of theoretical physics, not mathematics. You can point to this or that model of computation, such as lambda calculus or mu-recursive functions and try to claim its abstracted well beyond the particular laws of physics for some specific universe, but they all have some kind of rate limit built into them... and where does the motivation…

A thought provoking leading question I have is (1) a space heater throws power into a coil and generates heat and nothing more in the world (2) an LLM into a GPU throws power into the GPU and generates heat and organized information.

Is (2) generating less heat so that the laws of thermodynamics account for the increased amount of "useful stuff" generated (the organized information)? Switch (2) for a bitcoin miner if you prefer.

Is the act of increasing order in the data, somehow costing some energy? Is there a fundamental minimum cost to flipping bits? Something about the switch of energy to matter and back, seems involved here.

I think the nature of computation is holding some secrets about the meaning of the universe, if there is any.

Post reply on HN