Live data from Hacker News

You Can’t Sacrifice Partition Tolerance (2010)

codahale.com

21–24 of 24 posts

Re: You Can’t Sacrifice Partition Tolerance (2010)

#21
post #6

Earlier quoted context omitted.

If you read the next sentence he says > But practically speaking these are rare; add remote clients to the monolithic Oracle server and you get a distributed system which can experience a network partition (e.g., the Oracle server becomes unavailable).

The theory in question addresses distributed database systems. A remote client connected to a monolithic database is not a distributed database system. If there is a network partition between the client and the server then you don't get C or A. You get nothing. The P refers to partitions between nodes of the database system. Not clients. So that point in the article doesn't seem to make sense.

At this point we're edging into a semantic argument, but I would consider client-server architecture to be a type of distributed system. For the record, wikipedia lists "Client server architecture" on their page of distributed systems too: https://en.wikipedia.org/wiki/Distributed_computing#Architec...

Re: You Can’t Sacrifice Partition Tolerance (2010)

#22
post #12

Liked everything up to this part; "When it comes to designing or evaluating distributed systems, then, I think we should focus less on which two of the three Virtues we like most and more on what compromises a system makes as things go bad." It seemed like the entire point was that really there are only 2 Virtues (Consistency, Availability) and given a partition you will chose one or the other. The only database that…

You can (and a shocking number of distributed database systems in widespread usage do) fail to guarantee either one.

Re: You Can’t Sacrifice Partition Tolerance (2010)

#23
post #6

Earlier quoted context omitted.

If you read the next sentence he says > But practically speaking these are rare; add remote clients to the monolithic Oracle server and you get a distributed system which can experience a network partition (e.g., the Oracle server becomes unavailable).

The theory in question addresses distributed database systems. A remote client connected to a monolithic database is not a distributed database system. If there is a network partition between the client and the server then you don't get C or A. You get nothing. The P refers to partitions between nodes of the database system. Not clients. So that point in the article doesn't seem to make sense.

> You get nothing.

You don't get nothing, you get inconsistency that could require even human intervention to fix. For example, if client lost connection right before the database was able to respond that his commit was successful. Client then retries and you get a typical double billing problem.

That's because monolithic database with a remote client is in fact a distributed system and strong consistency in a distributed system requires proper distributed algorithms and protocols, where clients are nodes too. You cannot guaranty consistency otherwise (to be precise, you will need clients to be able to wait indefinitely to guaranty strong total consistency, but if clients are used by humans they will not do that and the only consistency you can guaranty for a human is eventual consistency).

Re: You Can’t Sacrifice Partition Tolerance (2010)

#24

Maybe I'm missing something, but it seems like this is basically just glossing over this part: > Some systems cannot be partitioned. Single-node systems (e.g., a monolithic Oracle server with no replication) are incapable of experiencing a network partition. But practically speaking these are rare; I'm not sure how the writer came to the conclusion that these systems are rare. The website I'm working on now has a sin…

> The website I'm working on now has a single monolithic Postgres server, and the majority of systems I've worked on connected to single monolithic datastores, so at the very least these systems exist.

These systems do not guaranty neither consistency, nor availability during network partitions.

Post reply on HN