It depends on what 'serializable' means... for example take HBase row locks, they operate within a single JVM and use the Java synchronization primitives. These are probably some of the cheapest synchronization locks you can have, apart from having none. So having full serialization on a single row is not expensive, apart from making clients wait. Replication operates at a different level, so sync