EDBT 2026 Demo / reviewers in the wild / expert
Mark Lillibridge
dblp:99/6098
· DBLP profile ↗
17ranked-venue papers
3as first author
0since 2021 · last 2018
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 9 · 3 first-authorDatabases, data management, data science and information retrieval · 7 · 2 first-authorSoftware engineering, systems software and programming languages · 5Computer networks · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Computer architecture, parallel and distributed computing, and storage systems
9 papers |
Storage systems · 79% Hardware reliability and fault tolerance · 14% Cloud and datacenter computing · 3% | |
| Databases, data mining, and information retrieval
2 papers |
Transaction processing and concurrency control · 67% Database system architecture and tuning · 33% | |
| Software engineering, system software, and programming languages
3 papers |
Program verification · 54% Programming languages and type systems · 38% Compilers and program optimization · 8% |
Topics — the 29 heaviest of 33, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Storage systems
storage reliability |
0.5 | 4 | 2017 | Torturing Databases for Fun and Profit · OSDI 2014 Improving restore speed for backup systems that use inline chunk-based deduplication · FAST 2013 Reliability Analysis of SSDs Under Power Fault · ACM Trans. Comput. Syst. 2017 |
Storage systems › flash and SSD
solid-state drive |
0.5 | 2 | 2017 | Reliability Analysis of SSDs Under Power Fault · ACM Trans. Comput. Syst. 2017 Understanding the robustness of SSDS under power fault · FAST 2013 |
Hardware reliability and fault tolerance
fault injection |
0.3 | 1 | 2017 | Reliability Analysis of SSDs Under Power Fault · ACM Trans. Comput. Syst. 2017 |
Storage systems › data reduction
data deduplication |
0.3 | 2 | 2013 | Improving restore speed for backup systems that use inline chunk-based deduplication · FAST 2013 Sparse Indexing: Large Scale, Inline Deduplication Using Sampling and Locality · FAST 2009 |
Database system architecture and tuning
pointer swizzling |
0.2 | 1 | 2014 | In-Memory Performance for Big Data · Proc. VLDB Endow. 2014 |
Transaction processing and concurrency control › concurrency control › locking
early lock release |
0.2 | 1 | 2013 | Controlled lock violation · SIGMOD Conference 2013 |
Transaction processing and concurrency control › concurrency control
locking |
0.2 | 1 | 2013 | Controlled lock violation · SIGMOD Conference 2013 |
Storage systems › storage management
backup systems |
0.2 | 1 | 2013 | Improving restore speed for backup systems that use inline chunk-based deduplication · FAST 2013 |
Storage systems
indexing and storage engines |
0.1 | 1 | 2009 | Sparse Indexing: Large Scale, Inline Deduplication Using Sampling and Locality · FAST 2009 |
Storage systems › data reduction › data deduplication
inline deduplication |
0.1 | 1 | 2009 | Sparse Indexing: Large Scale, Inline Deduplication Using Sampling and Locality · FAST 2009 |
Storage systems › file systems
versioning |
0.1 | 1 | 2007 | Jumbo Store: Providing Efficient Incremental Upload and Versioning for a Utility Rendering Service · FAST 2007 |
Transaction processing and concurrency control › contention management
lock contention |
0.0 | 1 | 2013 | Controlled lock violation · SIGMOD Conference 2013 |
Storage systems › data reduction › data deduplication
restore performance |
0.0 | 1 | 2013 | Improving restore speed for backup systems that use inline chunk-based deduplication · FAST 2013 |
Systems and software security
secure storage |
0.0 | 1 | 2003 | Block-Level Security for Network-Attached Disks · FAST 2003 |
Storage systems › storage management › backup and recovery
data backup |
0.0 | 1 | 2003 | A Cooperative Internet Backup Scheme · USENIX ATC, General Track 2003 |
Distributed systems
fault tolerance |
0.0 | 1 | 2003 | A Cooperative Internet Backup Scheme · USENIX ATC, General Track 2003 |
Storage systems
network-attached storage |
0.0 | 1 | 2003 | Block-Level Security for Network-Attached Disks · FAST 2003 |
Program verification › deductive verification
extended static checking |
0.0 | 1 | 2002 | Extended Static Checking for Java · PLDI 2002 |
Program verification › deductive verification
verification condition generation |
0.0 | 1 | 2002 | Extended Static Checking for Java · PLDI 2002 |
Memory systems
data locality |
0.0 | 1 | 2009 | Sparse Indexing: Large Scale, Inline Deduplication Using Sampling and Locality · FAST 2009 |
Storage systems › data reduction
sampling |
0.0 | 1 | 2009 | Sparse Indexing: Large Scale, Inline Deduplication Using Sampling and Locality · FAST 2009 |
Programming languages and type systems › module systems
higher-order modules |
0.0 | 1 | 1994 | A Type-Theoretic Approach to Higher-Order Modules with Sharing · POPL 1994 |
Programming languages and type systems
module systems |
0.0 | 1 | 1994 | A Type-Theoretic Approach to Higher-Order Modules with Sharing · POPL 1994 |
Automated reasoning and model checking
theorem proving |
0.0 | 1 | 2002 | Extended Static Checking for Java · PLDI 2002 |
Programming languages and type systems
control operators |
0.0 | 1 | 1993 | Explicit Polymorphism and CPS Conversion · POPL 1993 |
Compilers and program optimization › program transformation › source-to-source transformation
CPS translation |
0.0 | 1 | 1993 | Explicit Polymorphism and CPS Conversion · POPL 1993 |
Programming languages and type systems › type systems
polymorphism |
0.0 | 1 | 1993 | Explicit Polymorphism and CPS Conversion · POPL 1993 |
Programming languages and type systems
type theory |
0.0 | 1 | 1994 | A Type-Theoretic Approach to Higher-Order Modules with Sharing · POPL 1994 |
Programming languages and type systems › lambda calculus › typed lambda calculus
system f-omega |
0.0 | 1 | 1993 | Explicit Polymorphism and CPS Conversion · POPL 1993 |
Methods — techniques the papers use, named apart from their topics
experimental evaluation · 0.4workload stress testing · 0.3power fault injection · 0.3failure detection · 0.3block-level encryption · 0.1theorem proving · 0.1annotation language · 0.1type-theoretic analysis · 0.0type-preserving transformation · 0.0CPS conversion · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2018 | Memory-Oriented Distributed Computing at Rack ScaleabstractNo abstract available. Haris Volos 0001, Kimberly Keeton, Milind Chabbi, Se Kwon Lee, Mark Lillibridge, Yuvraj Patel, Wei Zhang 0052 |
SoCC | 6 |
| 2017 | Reliability Analysis of SSDs Under Power FaultabstractModern storage technology (solid-state disks (SSDs), NoSQL databases, commoditized RAID hardware, etc.) brings new reliability challenges to the already-complicated storage stack. Among other things, the behavior of these new components during power faults—which happen relatively frequently in data centers—is an important yet mostly ignored issue in this dependability-critical area. Understanding how new storage components behave under power fault is the first step towards designing new robust storage systems. In this article, we propose a new methodology to expose reliability issues in block devices under power faults. Our framework includes specially designed hardware to inject power faults directly to devices, workloads to stress storage components, and techniques to detect various types of failures. Applying our testing framework, we test 17 commodity SSDs from six different vendors using more than three thousand fault injection cycles in total. Our experimental results reveal that 14 of the 17 tested SSD devices exhibit surprising failure behaviors under power faults, including bit corruption, shorn writes, unserializable writes, metadata corruption, and total device failure. Mai Zheng, Joseph A. Tucek, Mark Lillibridge, Bill W. Zhao, Elizabeth S. Yang |
ACM Trans. Comput. Syst. | 4 |
| 2014 | Torturing Databases for Fun and Profit
Mai Zheng, Joseph A. Tucek, Dachuan Huang, Mark Lillibridge, Elizabeth S. Yang, Bill W. Zhao, Shashank Singh 0003 |
OSDI | 5 |
| 2014 | In-Memory Performance for Big DataabstractWhen a working set fits into memory, the overhead imposed by the buffer pool renders traditional databases non-competitive with in-memory designs that sacrifice the benefits of a buffer pool. However, despite the large memory available with modern hardware, data skew, shifting workloads, and complex mixed workloads make it difficult to guarantee that a working set will fit in memory. Hence, some recent work has focused on enabling in-memory databases to protect performance when the working data set almost fits in memory. Contrary to those prior efforts, we enable buffer pool designs to match in-memory performance while supporting the "big data" workloads that continue to require secondary storage, thus providing the best of both worlds. We introduce here a novel buffer pool design that adapts pointer swizzling for references between system objects (as opposed to application objects), and uses it to practically eliminate buffer pool overheads for memoryresident data. Our implementation and experimental evaluation demonstrate that we achieve graceful performance degradation when the working set grows to exceed the buffer pool size, and graceful improvement when the working set shrinks towards and below the memory and buffer pool sizes. Goetz Graefe, Haris Volos 0001, Hideaki Kimura 0001, Harumi A. Kuno, Joseph A. Tucek, Mark Lillibridge, Alistair C. Veitch |
Proc. VLDB Endow. | 6 |
| 2013 | Improving restore speed for backup systems that use inline chunk-based deduplication
Mark Lillibridge, Kave Eshghi, Deepavali Bhagwat |
FAST | 1 |
| 2013 | Understanding the robustness of SSDS under power fault
Mai Zheng, Joseph A. Tucek, Mark Lillibridge |
FAST | 4 |
| 2013 | Controlled lock violationabstractIn databases with a large buffer pool, a transaction may run in less time than it takes to log the transaction's commit record on stable storage. Such cases motivate a technique called early lock release: immediately after appending its commit record to the log buffer in memory, a transaction may release its locks. Thus, it cuts overall lock duration to a fraction and reduces lock contention accordingly. Goetz Graefe, Mark Lillibridge, Harumi A. Kuno, Joseph A. Tucek, Alistair C. Veitch |
SIGMOD Conference | 2 |
| 2009 | Sparse Indexing: Large Scale, Inline Deduplication Using Sampling and Locality
Mark Lillibridge, Kave Eshghi, Deepavali Bhagwat, Vinay Deolalikar, Greg Trezis, Peter Camble |
FAST | 1 |
| 2009 | Extreme Binning: Scalable, parallel deduplication for chunk-based file backupabstractData deduplication is an essential and critical component of backup systems. Essential, because it reduces storage space requirements, and critical, because the performance of the entire backup operation depends on its throughput. Traditional backup workloads consist of large data streams with high locality, which existing deduplication techniques require to provide reasonable throughput. We present Extreme Binning, a scalable deduplication technique for non-traditional backup workloads that are made up of individual files with no locality among consecutive files in a given window of time. Due to lack of locality, existing techniques perform poorly on these workloads. Extreme Binning exploits file similarity instead of locality, and makes only one disk access for chunk lookup per file, which gives reasonable throughput. Multi-node backup systems built with Extreme Binning scale gracefully with the amount of input data; more backup nodes can be added to boost throughput. Each file is allocated using a stateless routing algorithm to only one node, allowing for maximum parallelization, and each backup node is autonomous with no dependency across nodes, making data management tasks robust with low overhead. Deepavali Bhagwat, Kave Eshghi, Darrell D. E. Long, Mark Lillibridge |
MASCOTS | 4 |
| 2008 | Transaction Rate Limiters for Peer-to-Peer SystemsabstractWe introduce transaction rate limiters, new mechanisms that limit (probabilistically) the maximum number of transactions a user of a peer-to-peer system can do in any given period. They can be used to limit the consumption of selfish users and the damage done by malicious users. They complement reputation systems, solving the traitor problem. We give simple distributed algorithms that work over time frames as short as seconds and are very robust: they use no trusted servers and continue to work even when attacked by a large fraction of users colluding. Our algorithms are based on a new primitive we have devised, probably-anonymous queries, which guarantees anonymity with a specified probability. Marcos K. Aguilera, Mark Lillibridge, Xiaozhou Li 0001 |
Peer-to-Peer Computing | 2 |
| 2007 | Jumbo Store: Providing Efficient Incremental Upload and Versioning for a Utility Rendering Service
Kave Eshghi, Mark Lillibridge, Lawrence Wilcock, Guillaume Belrose, Rycharde Hawkes |
FAST | 2 |
| 2003 | Block-Level Security for Network-Attached Disks
Marcos K. Aguilera, Minwen Ji, Mark Lillibridge, John MacCormick, Erwin Oertli, David G. Andersen, Michael Burrows, Timothy P. Mann, Chandramohan A. Thekkath |
FAST | 3 |
| 2003 | A Cooperative Internet Backup Scheme
Mark Lillibridge, Sameh Elnikety, Andrew Birrell, Michael Burrows, Michael Isard |
USENIX ATC, General Track | 1 |
| 2002 | Extended Static Checking for JavaabstractSoftware development and maintenance are costly endeavors. The cost can be reduced if more software defects are detected earlier in the development cycle. This paper introduces the Extended Static Checker for Java (ESC/Java), an experimental compile-time program checker that finds common programming errors. The checker is powered by verification-condition generation and automatic theorem-proving techniques. It provides programmers with a simple annotation language with which programmer design decisions can be expressed formally. ESC/Java examines the annotated software and warns of inconsistencies between the design decisions recorded in the annotations and the actual code, and also warns of potential runtime errors in the code. This paper gives an overview of the checker architecture and annotation language and describes our experience applying the checker to tens of thousands of lines of Java programs. Cormac Flanagan, K. Rustan M. Leino, Mark Lillibridge, Greg Nelson, James B. Saxe, Raymie Stata |
PLDI | 3 |
| 1996 | Operational Interpretations of an Extension of Fomega with Control OperatorsabstractAbstract We study the operational semantics of an extension of Girard's System F ω with two control operators: an abort operation that abandons the current control context, and a callcc operation that captures the current control context. Two classes of operational semantics are considered, each with a call-by-value and a call-by-name variant, differing in their treatment of polymorphic abstraction and instantiation. Under the standard semantics, polymorphic abstractions are values and polymorphic instantiation is a significant computation step; under the ML-like semantics evaluation proceeds beneath polymorphic abstractions and polymorphic instantiation is computationally insignificant. Compositional, type-preserving continuation-passing style (cps) transformation algorithms are given for the standard semantics, resulting in terms on which all four evaluation strategies coincide. This has as a corollary the soundness and termination of well-typed programs under the standard evaluation strategies. In contrast, such results are obtained for the call-by-value ML-like strategy only for a restricted sub-language in which constructor abstractions are limited to values. The ML-like call-by-name semantics is indistinguishable from the standard call-by-name semantics when attention is limited to complete programs. Robert Harper 0001, Mark Lillibridge |
J. Funct. Program. | 2 |
| 1994 | A Type-Theoretic Approach to Higher-Order Modules with SharingabstractThe design of a module system for constructing and maintaining large programs is a difficult task that raises a number of theoretical and practical issues. A fundamental issue is the management of the flow of information between program units at compile time via the notion of an interface. Experience has shown that fully opaque interfaces are awkward to use in practice since too much information is hidden, and that fully transparent interfaces lead to excessive interdependencies, creating problems for maintenance and separate compilation. The “sharing” specifications of Standard ML address this issue by allowing the programmer to specify equational relationships between types in separated modules, but are not expressive enough to allow the programmer complete control over the propagation of type information between modules. Robert Harper 0001, Mark Lillibridge |
POPL | 2 |
| 1993 | Explicit Polymorphism and CPS ConversionabstractWe study the typing properties of CPS conversion for an extension of Fω with control operators. Two classes of evaluation strategies are considered, each with call-by-name and call-by-value variants. Under the “standard” strategies, constructor abstractions are values, and constructor applications can lead to non-trivial control effects. In contrast, the “ML-like” strategies evaluate beneath constructor abstractions, reflecting the usual interpretation of programs in languages based on implicit polymorphism. Three continuation passing style sub-languages are considered, one on which the standard strategies coincide, one on which the ML-like strategies coincide, and one on which all strategies coincide. Compositional, type-preserving CPS transformation algorithms are given for the standard strategies, resulting in terms on which all evaluation strategies coincide. This has as a corollary the soundness and termination of well-typed programs under the standard evaluation strategies. A similar result is obtained for the ML-like call-by-name strategy. In contrast, such results are obtained for the call-by-name strategy. In contrast, such results are obtained for the call-by value ML-like strategy only for a restricted sub-language in which constructor abstractions are limited to values. Robert Harper 0001, Mark Lillibridge |
POPL | 2 |