State diagrams for Paxos made simple

I was reading through Paxos made simple and I really wished there were state diagrams to help explicate the protocol. So I wrote them up and share them below. Please keep in mind that the diagrams just explore naive Paxos, that is single value, no distinguished proposer or distinguished learner. So this version of Paxos is pretty useless in practice but it completely captures the core mechanisms that make Paxos work (with the exception of how to pick a distinguished learner). Please note that this article is intended to be used by someone going through Paxos made simple. It is an adjunct, not a replacement.
Continue reading State diagrams for Paxos made simple

Wrapped or Native Paxos?

So let's say I want to build a nice highly consistent multi-data center store, something like Megastore. Most everyone at this point has something like Bigtable already deployed in their data centers. What they typically don't have is a way to keep different instances of their table stores guaranteed consistent with each other across DCs. Megastore steps in to address this issue. But this begs a fundamental question - what's better, to wrap a Paxos coordinator on top of existing table stores or to build a new Paxos native storage service?
Continue reading Wrapped or Native Paxos?

Parallels 7 vs VMWare Fusion 4

I use a VM on my mac to run Windows for the sole purpose of using remote desktop to my work laptop. Yes, I know that Microsoft offers a free RDC client for the Mac. But the client doesn't support multiple monitors on a mac and that's a show stopper for me. I've been using VMWare Fusion 2 & 3 for a bunch of years now and I can't say I was ever really happy with it but it seemed to do the job. But I recently compared VMWare Fusion 4 to Parallels 7 and for my use case Parallels 7 is slightly better than VMWare Fusion 4 and with Parallel's upgrade offer for VMWare Fusion 3 users it's a no brainer in my opinion to switch to Parallels 7. So I have. More details below the fold.
Continue reading Parallels 7 vs VMWare Fusion 4