  Multiversion Concurrency Control (MVCC) is a widely adopted concurrency
control mechanism in database systems, which usually utilizes timestamps to
resolve conflicts between transactions. However, centralized allocation of
timestamps is a potential bottleneck for parallel transaction management. This
bottleneck is becoming increasingly visible with the rapidly growing degree of
parallelism of today's computing platforms. This paper introduces Visibility
based Concurrency Control (ViCC), a series of CC mechanisms that allow
transactions to determine their timestamps autonomously, without relying on
centralized coordination. As such, ViCC can scale well, rendering it suitable
for various multicore and MPP platforms. Extensive experiments are conducted to
demonstrate its advantage over existing approaches.
