6 ms·
Clocks are meaningless under load. The higher frequency the transactions the more you get into quantum physics. In reality, nobody cares if T-Mobile debited y
by socmag 9y ago
Clocks are meaningless under load.
The higher frequency the transactions the more you get into quantum physics.
In reality, nobody cares if T-Mobile debited your account 0.01ms before WalMart.
[edit] what is important is isolation and consistency of the transactons.
- socmag 9y agoInstead of just downvoting, how about refuting my claim? I'm seriously curious what is the disagreement. These guys already established atomic clocks are unnecessary. Very interested in which use cases require them.
- deleted 9y ago[deleted]
- theptip 9y agoRead and learn: https://research.google.com/archive/spanner.html https://research.google.com/archive/spanner.html Serializability is all about ensuring a single consistent ordering of events. Lots of algorithmic shortcuts you can take if all your nodes' clocks are precisely in sync.
- socmag 9y agoI'm very familiar with the literature since I'm a distributed database developer. If you investigate high frequency trading you will understand that the quantum phenomena that I'm talking about is not just me high on mushrooms but a real world thing. The only "time" relevant is the time when the cluster agrees an atomic, isolated transaction is time to commit from its own perspective.
- nocman 9y agoAm I wrong in remembering that the HN guidelines used to say that you should not downvote someone's comment simply because you disagreed with it? I went looking, and I don't see that in the current guidelines. I could be wrong about it being there before, but I was almost certain that it was at one point. Seems like it used to say that you should only downvote comments that you think don't contribute anything of value to the conversation. Just curious, because it seems to me that for quite a while now there have been a lot of comments that appear to get downvoted just because people don't agree with what the person said (and often there are no responses to counter, the person just gets downvoted).
- dec0dedab0de 9y agoI think you're thinking of somewhere else. The up/down votes are a way of agreeing or disagreeing without cluttering up the comments with a bunch of "me toos" or "nuhuhhs"
- nocman 9y agoI'm certain that I'm not thinking of somewhere else. I'm completely open to the possibility that I just remember it wrong, but I'm sure that it was HN that I was thinking of, and not another site.
- tw04 9y agoYou're thinking of Reddit.
- cachvico 9y agoReddit, we did it again.
- nocman 9y agoNo, you did not "do it again". I almost never read anything on Reddit. So that was not the source of confusion.
- nocman 9y agoNope, I know I'm not thinking of Reddit (as I said in reply to another comment, I've spent almost no time on Reddit, and would not have seen their guidelines at all).
- tyleraldrich 9y agoDoes this seem familiar? https://www.reddit.com/wiki/reddiquette https://www.reddit.com/wiki/reddiquette
- 9y ago
- johnhenry 9y agoActually, WalMNart cares and so does T-mobile. You probably care too if you stop and think for a bit... The concern here isn't just order of transactions, but also synchronization. For instance, WalMart might charge you twice for a transaction if it appears to have happened at different times when it arrives in different data centers. Also, the comment "The higher frequency the transactions the more you get into quantum physics." isn't relevant here. This is more in the realm of relativity than quantum physics. Even so, we aren't currently at a point where we need to worry about transactions happening at relativistic speeds.
- socmag 9y agoNo I disagree since you left out atomicity from your argument. WalMart cannot commit if someone else committed previously, they have to try again. Atomicity is precisely what it is. There is no fuzziness there, you either do it or you don't. The problem with current database designs is the idea of BeginTransaction, that function is the core of the problem. "Transactions" in the real world are NOT completed until everyone agrees. Consider you yourself enter into a transaction with your landlord, you BeginTransaction.. However during the negotiation you choose to disagree and back away from the deal. That transaction, even though it took three months to decide was rejected (by either party). The only "transaction" is the committed transaction.
- johnhenry 9y agoAh, I think I see where you are confused -- your arguments seem to make more sense when dealing with a single, local database. The idea here is that you want to achieve atomicity, but you need to do it across multiple distributed databases and you want to have a system who's components have exactly the same time in order to ensure consistence across each database. Attempting to extend the landlord example... let's say that I'm your landlord and you have to pay me £1000 each month. You send the bank a message telling the to pay me the money. The bank may make several copies of that message and keep it around for their own reasons. Now, let's say that there are employees at that bank whose job it is to do go through all copies of all messages and make sure what they say is done. If they find a message from several months ago saying "transfer £1000 from you to me this month" and are somehow oblivious to which month it is, they may transfer an additional one thousand pounds even if it's already happened. It's not an exact analogy, but...
- dang 9y agoWe detached this subthread from https://news.ycombinator.com/item?id=14308521 https://news.ycombinator.com/item?id=14308521 and marked it off-topic.