Our friends at Tricycle will push through a zero-based karma system (no self-voting possible) sometime this evening. At present this will only cover future posts/comments - they may go back and revise history some time in the indefinite future (or not), but apparently that would be overly complicated for now. We'll see how this works.
I just finished going through the source, and while it's still Postgres-based, the schema just uses five tables: type, rel_type, thing, data, rel. So yes, it's fundamentally just a key-value store. I bet I could still whip up some SQL that would do the trick, though it would be a good deal uglier than the above.
This is pretty much right, it uses a big key value store. The issue with karma is that the Account record maintains the karma value but the vote is stored as a separate relationship between the Account and the Link (article). Generally is is not safe to update the database directly as it is necessary to keep the separate memcache coherent. Thus any changes must be done via Python code. Whilst such a change is possible and relatively straightforward I'm not sure its worth it. From what I've seen there are no truly obnoxious users on less wrong that need to be dealt with by such a change.