Concurrency control and recovery in database systems
Concurrency control and recovery in database systems
Linearizability: a correctness condition for concurrent objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
Data caching issues in an information retrieval system
ACM Transactions on Database Systems (TODS)
A critique of ANSI SQL isolation levels
SIGMOD '95 Proceedings of the 1995 ACM SIGMOD international conference on Management of data
Towards robust distributed systems (abstract)
Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing
Distributed Algorithms
Don't Be Lazy, Be Consistent: Postgres-R, A New Way to Implement Database Replication
VLDB '00 Proceedings of the 26th International Conference on Very Large Data Bases
Improving Performance in Replicated Databases through Relaxed Coherency
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
Architectural styles and the design of network-based software architectures
Architectural styles and the design of network-based software architectures
Ganymed: scalable replication for transactional web applications
Proceedings of the 5th ACM/IFIP/USENIX international conference on Middleware
Caching with "good enough" currency, consistency, and completeness
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Database Replication Using Generalized Snapshot Isolation
SRDS '05 Proceedings of the 24th IEEE Symposium on Reliable Distributed Systems
Relaxed-currency serializability for middle-tier caching and replication
Proceedings of the 2006 ACM SIGMOD international conference on Management of data
Dynamo: amazon's highly available key-value store
Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles
Communications of the ACM - Rural engineering development
Scalable query result caching for web applications
Proceedings of the VLDB Endowment
PNUTS: Yahoo!'s hosted data serving platform
Proceedings of the VLDB Endowment
Benchmarking cloud serving systems with YCSB
Proceedings of the 1st ACM symposium on Cloud computing
Feeding frenzy: selectively materializing users' event feeds
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
The case for determinism in database systems
Proceedings of the VLDB Endowment
Feed following: the big data challenge in social applications
Databases and Social Networks
One-copy serializability with snapshot isolation under the hood
ICDE '11 Proceedings of the 2011 IEEE 27th International Conference on Data Engineering
Hi-index | 0.00 |
Typical social networking functionalities such as feed following are known to be hard to scale. Different from the popular approach that sacrifices consistency for scalability, in this paper we describe, implement, and evaluate a method that can simultaneously achieve scalability and consistency in feed following applications built on shared-nothing distributed systems. Timing and client-side processing are the keys to this approach. Assuming global time is available at all the clients and servers, the distributed servers publish a pre-agreed upon schedule based on which the continuously committed updates are periodically released for read. This opens up opportunities for caching and client-side processing, and leads to scalability improvements. This approach trades freshness for scalability. Following this approach, we build a twitter-style feed following application and evaluate it on a following network with about 200,000 users under synthetic workloads. The resulting system exhibits linear scalability in our experiment. With 6 low-end cloud instances costing a total of no more than $1.2 per hour, we recorded a peak timeline query rate at about 10 million requests per day, under a fixed update rate of 1.6 million new tweets per day. The maximum staleness of the responses is 5 seconds. The performance achieved sufficiently verifies the feasibility of this approach, and provides an alternative to build small to medium size social networking applications on the cheap.