Irene Zhang
University of Washington
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Irene Zhang.
symposium on operating systems principles | 2015
Irene Zhang; Naveen Kr. Sharma; Adriana Szekeres; Arvind Krishnamurthy; Dan R. K. Ports
Application programmers increasingly prefer distributed storage systems with strong consistency and distributed transactions (e.g., Googles Spanner) for their strong guarantees and ease of use. Unfortunately, existing transactional storage systems are expensive to use -- in part because they require costly replication protocols, like Paxos, for fault tolerance. In this paper, we present a new approach that makes transactional storage systems more affordable: we eliminate consistency from the replication protocol while still providing distributed transactions with strong consistency to applications. We present TAPIR -- the Transactional Application Protocol for Inconsistent Replication -- the first transaction protocol to use a novel replication protocol, called inconsistent replication, that provides fault tolerance without consistency. By enforcing strong consistency only in the transaction protocol, TAPIR can commit transactions in a single round-trip and order distributed transactions without centralized coordination. We demonstrate the use of TAPIR in a transactional key-value store, TAPIR-KV. Compared to conventional systems, TAPIR-KV provides better latency and throughput.
ACM Transactions on Computer Systems | 2016
Simon Peter; Jialin Li; Irene Zhang; Dan R. K. Ports; Doug Woos; Arvind Krishnamurthy; Thomas E. Anderson; Timothy Roscoe
Recent device hardware trends enable a new approach to the design of network server operating systems. In a traditional operating system, the kernel mediates access to device hardware by server applications, to enforce process isolation as well as network and disk security. We have designed and implemented a new operating system, Arrakis, that splits the traditional role of the kernel in two. Applications have direct access to virtualized I/O devices, allowing most I/O operations to skip the kernel entirely, while the kernel is re-engineered to provide network and disk protection without kernel mediation of every operation. We describe the hardware and software changes needed to take advantage of this new abstraction, and we illustrate its power by showing improvements of 2-5x in latency and 9x in throughput for a popular persistent NoSQL store relative to a well-tuned Linux implementation.
symposium on cloud computing | 2016
Brandon Holt; James Bornholt; Irene Zhang; Dan R. K. Ports; Mark Oskin; Luis Ceze
Distributed applications and web services, such as online stores or social networks, are expected to be scalable, available, responsive, and fault-tolerant. To meet these steep requirements in the face of high round-trip latencies, network partitions, server failures, and load spikes, applications use eventually consistent datastores that allow them to weaken the consistency of some data. However, making this transition is highly error-prone because relaxed consistency models are notoriously difficult to understand and test. In this work, we propose a new programming model for distributed data that makes consistency properties explicit and uses a type system to enforce consistency safety. With the Inconsistent, Performance-bound, Approximate (IPA) storage system, programmers specify performance targets and correctness requirements as constraints on persistent data structures and handle uncertainty about the result of datastore reads using new consistency types. We implement a prototype of this model in Scala on top of an existing datastore, Cassandra, and use it to make performance/correctness tradeoffs in two applications: a ticket sales service and a Twitter clone. Our evaluation shows that IPA prevents consistency-based programming errors and adapts consistency automatically in response to changing network conditions, performing comparably to weak consistency and 2-10× faster than strong consistency.
european conference on computer systems | 2015
Brandon Holt; Irene Zhang; Dan R. K. Ports; Mark Oskin; Luis Ceze
Out of the many NoSQL databases in use today, some that provide simple data structures for records, such as Redis and MongoDB, are now becoming popular. Building applications out of these complex data types provides a way to communicate intent to the database system without sacrificing flexibility or committing to a fixed schema. Currently this capability is leveraged in limited ways, such as to ensure related values are co-located, or for atomic updates. There are many ways data types can be used to make databases more efficient that are not yet being exploited. We explore several ways of leveraging abstract data type (ADT) semantics in databases, focusing primarily on commutativity. Using a Twitter clone as a case study, we show that using commutativity can reduce transaction abort rates for high-contention, update-heavy workloads that arise in real social networks. We conclude that ADTs are a good abstraction for database records, providing a safe and expressive programming model with ample opportunities for optimization, making databases more safe and scalable.
operating systems design and implementation | 2014
Simon Peter; Jialin Li; Irene Zhang; Dan R. K. Ports; Doug Woos; Arvind Krishnamurthy; Thomas E. Anderson; Timothy Roscoe
operating systems design and implementation | 2010
Dan R. K. Ports; Austin T. Clements; Irene Zhang; Samuel Madden; Barbara Liskov
operating systems design and implementation | 2014
Irene Zhang; Adriana Szekeres; Dana Van Aken; Isaac Ackerman; Steven D. Gribble; Arvind Krishnamurthy; Henry M. Levy
usenix conference on hot topics in storage and file systems | 2014
Simon Peter; Jialin Li; Doug Woos; Irene Zhang; Dan R. K. Ports; Thomas E. Anderson; Arvind Krishnamurthy; Mark Zbikowski
operating systems design and implementation | 2016
Irene Zhang; Niel Lebeck; Pedro Fonseca; Brandon Holt; Raymond Cheng; Ariadna Norberg; Arvind Krishnamurthy; Henry M. Levy
IEEE Data(base) Engineering Bulletin | 2016
Irene Zhang; Naveen Kr. Sharma; Adriana Szekeres; Arvind Krishnamurthy; Dan R. K. Ports