  Replication is a key technique in the design of efficient and reliable
distributed systems. As information grows, it becomes difficult or even
impossible to store all information at every replica. A common approach to deal
with this problem is to rely on partial replication, where each replica
maintains only a part of the total system information. As a consequence, a
remote replica might need to be contacted for computing the reply to some given
query, which leads to high latency costs particularly in geo-replicated
settings. In this work, we introduce the concept of non-uniform replication,
where each replica stores only part of the information, but where all replicas
store enough information to answer every query. We apply this concept to
eventual consistency and conflict-free replicated data types. We show that this
model can address useful problems and present two data types that solve such
problems. Our evaluation shows that non-uniform replication is more efficient
than traditional replication, using less storage space and network bandwidth.
