Jump to Content
Wilson C. Hsieh

Wilson C. Hsieh

Authored Publications
Google Publications
Other Publications
Sort By
  • Title
  • Title, descending
  • Year
  • Year, descending
    Spanner: Google's Globally Distributed Database
    Michael Epstein
    Andrew Fikes
    Christopher Frost
    J. J. Furman
    Andrey Gubarev
    Christopher Heiser
    Sebastian Kanthak
    Eugene Kogan
    Hongyi Li
    Sergey Melnik
    David Mwaura
    David Nagle
    Rajesh Rao
    Lindsay Rolig
    Yasushi Saito
    Michal Szymaniak
    Christopher Taylor
    Ruth Wang
    Dale Woodford
    ACM Trans. Comput. Syst., vol. 31 (2013), pp. 8
    Preview
    Spanner: Google's Globally-Distributed Database
    Michael Epstein
    Andrew Fikes
    Christopher Frost
    JJ Furman
    Andrey Gubarev
    Christopher Heiser
    Peter Hochschild
    Sebastian Kanthak
    Eugene Kogan
    Hongyi Li
    Sergey Melnik
    David Mwaura
    David Nagle
    Rajesh Rao
    Lindsay Rolig
    Dale Woodford
    Yasushi Saito
    Christopher Taylor
    Michal Szymaniak
    Ruth Wang
    OSDI (2012)
    Preview abstract Spanner is Google's scalable, multi-version, globally-distributed, and synchronously-replicated database. It is the first system to distribute data at global scale and support externally-consistent distributed transactions. This paper describes how Spanner is structured, its feature set, the rationale underlying various design decisions, and a novel time API that exposes clock uncertainty. This API and its implementation are critical to supporting external consistency and a variety of powerful features: non-blocking reads in the past, lock-free read-only transactions, and atomic schema changes, across all of Spanner. View details
    Bigtable: A Distributed Storage System for Structured Data
    Fay Chang
    Deborah A. Wallach
    Mike Burrows
    Andrew Fikes
    7th USENIX Symposium on Operating Systems Design and Implementation (OSDI), {USENIX} (2006), pp. 205-218
    Preview abstract Bigtable is a distributed storage system for managing structured data that is designed to scale to a very large size: petabytes of data across thousands of commodity servers. Many projects at Google store data in Bigtable, including web indexing, Google Earth, and Google Finance. These applications place very different demands on Bigtable, both in terms of data size (from URLs to web pages to satellite imagery) and latency requirements (from backend bulk processing to real-time data serving). Despite these varied demands, Bigtable has successfully provided a flexible, high-performance solution for all of these Google products. In this paper we describe the simple data model provided by Bigtable, which gives clients dynamic control over data layout and format, and we describe the design and implementation of Bigtable. View details
    Bigtable: A Distributed Storage System for Structured Data (Awarded Best Paper!)
    Fay Chang
    Deborah A. Wallach
    Michael Burrows
    Tushar Chandra
    Andrew Fikes
    Robert Gruber
    OSDI (2006), pp. 205-218
    The KaffeOS Java runtime system
    Godmar Back
    ACM Trans. Program. Lang. Syst., vol. 27 (2005), pp. 583-630
    Splice: Aspects That Analyze Programs
    Sean McDirmid
    GPCE (2004), pp. 19-38
    Aspect-oriented programming with Jiazzi
    Sean McDirmid
    AOSD (2003), pp. 70-79
    Restructuring Computations for Temporal Data Cache Locality
    Venkata K. Pingali
    Sally A. McKee
    John B. Carter
    International Journal of Parallel Programming, vol. 31 (2003), pp. 305-338
    A Cost Model For Integrated Restructuring Optimizations
    Bharat Chandramouli
    John B. Carter
    Sally A. McKee
    J. Instruction-Level Parallelism, vol. 5 (2003)
    Computation regrouping: restructuring programs for temporal data cache locality
    Venkata K. Pingali
    Sally A. McKee
    John B. Carter
    ICS (2002), pp. 252-261
    Maya: Multiple-Dispatch Syntax Extension in Java
    Jason Baker
    PLDI (2002), pp. 270-281
    Runtime aspect weaving through metaprogramming
    Jason Baker
    AOSD (2002), pp. 86-95
    The Impulse Memory Controller
    Lixin Zhang
    Zhen Fang
    Michael Parker
    Binu K. Mathew
    Lambert Schaelicke
    John B. Carter
    Sally A. McKee
    IEEE Trans. Computers, vol. 50 (2001), pp. 1117-1132
    Optimistic Active Messages: A Mechanism for Scheduling Communication with Computation
    Deborah A. Wallach
    Kirk L. Johnson
    M. Frans Kaashoek
    William E. Weihl
    5th Symposium on Principles and Practice of Parallel Programming, Santa Barbara, California (1995), pp. 217-226
    Optimistic Active Messages: Structuring Systems for High-Performance Communication
    M. Frans Kaashoek
    William E. Weihl
    Deborah A. Wallach
    Kirk L. Johnson
    ACM SIGOPS European Workshop (1994), pp. 23-28