Demo Data from VLDB 2026 / reviewers in the wild / expert
Patrick E. O'Neil
dblp:o/PatrickEONeil
· DBLP profile ↗
27ranked-venue papers
11as first author
0since 2021 · last 2016
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Databases, data management, data science and information retrieval · 22 · 8 first-authorTheory of computation · 3 · 3 first-authorSoftware engineering, systems software and programming languages · 1Applied, interdisciplinary, general and emerging computing · 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.
| Databases, data mining, and information retrieval
15 papers |
Transaction processing and concurrency control · 51% Query processing and optimization · 14% Indexing and storage engines · 14% | |
| Computer architecture, parallel and distributed computing, and storage systems
4 papers |
Storage systems · 51% Memory systems · 49% |
Topics — the 30 heaviest of 37, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Transaction processing and concurrency control › isolation levels
snapshot isolation |
0.2 | 3 | 2011 | Precisely Serializable Snapshot Isolation (PSSI) · ICDE 2011 Making snapshot isolation serializable · ACM Trans. Database Syst. 2005 A Critique of ANSI SQL Isolation Levels · SIGMOD Conference 1995 |
Transaction processing and concurrency control
concurrency control |
0.2 | 4 | 2011 | Precisely Serializable Snapshot Isolation (PSSI) · ICDE 2011 Generalized Isolation Level Definitions · ICDE 2000 The Dangers of Replication and a Solution · SIGMOD Conference 1996 |
Transaction processing and concurrency control › isolation levels › snapshot isolation
serializable snapshot isolation |
0.1 | 1 | 2011 | Precisely Serializable Snapshot Isolation (PSSI) · ICDE 2011 |
Transaction processing and concurrency control
isolation levels |
0.1 | 3 | 2005 | Making snapshot isolation serializable · ACM Trans. Database Syst. 2005 Generalized Isolation Level Definitions · ICDE 2000 A Critique of ANSI SQL Isolation Levels · SIGMOD Conference 1995 |
Transaction processing and concurrency control
serializability |
0.1 | 1 | 2005 | Making snapshot isolation serializable · ACM Trans. Database Syst. 2005 |
Storage systems › data management › database storage
columnar storage |
0.1 | 1 | 2005 | C-Store: A Column-oriented DBMS · VLDB 2005 |
Indexing and storage engines
bitmap index |
0.0 | 2 | 2001 | Bit-Sliced Index Arithmetic · SIGMOD Conference 2001 Improved Query Performance with Variant Indexes · SIGMOD Conference 1997 |
Indexing and storage engines › bitmap index
bit-sliced index |
0.0 | 2 | 2001 | Bit-Sliced Index Arithmetic · SIGMOD Conference 2001 Improved Query Performance with Variant Indexes · SIGMOD Conference 1997 |
Data mining › predictive modeling › classification › structured classification
hierarchical labeling |
0.0 | 1 | 2004 | ORDPATHs: Insert-Friendly XML Node Labels · SIGMOD Conference 2004 |
Data models and query languages
XML data management |
0.0 | 1 | 2004 | ORDPATHs: Insert-Friendly XML Node Labels · SIGMOD Conference 2004 |
Data models and query languages › XML data management
XML labeling scheme |
0.0 | 1 | 2004 | ORDPATHs: Insert-Friendly XML Node Labels · SIGMOD Conference 2004 |
Query processing and optimization
query execution |
0.0 | 1 | 2001 | Bit-Sliced Index Arithmetic · SIGMOD Conference 2001 |
Query processing and optimization › query execution › relational operators
set operation |
0.0 | 1 | 2001 | Bit-Sliced Index Arithmetic · SIGMOD Conference 2001 |
Transaction processing and concurrency control › concurrency control
multiversion concurrency control |
0.0 | 1 | 2000 | Generalized Isolation Level Definitions · ICDE 2000 |
Memory systems › cache management
cache replacement |
0.0 | 1 | 1999 | An Optimality Proof of the LRU-K Page Replacement Algorithm · J. ACM 1999 |
Memory systems › memory management › virtual memory
page replacement |
0.0 | 1 | 1999 | An Optimality Proof of the LRU-K Page Replacement Algorithm · J. ACM 1999 |
Data integration and cleaning
data warehouse |
0.0 | 1 | 1998 | Data Warehousing Lessons From Experience (Panel) · ICDE 1998 |
Query processing and optimization
aggregate query processing |
0.0 | 1 | 1997 | Improved Query Performance with Variant Indexes · SIGMOD Conference 1997 |
Query processing and optimization › aggregate query processing
group-by query |
0.0 | 1 | 1997 | Improved Query Performance with Variant Indexes · SIGMOD Conference 1997 |
Distributed and cloud data management
data replication |
0.0 | 1 | 1996 | The Dangers of Replication and a Solution · SIGMOD Conference 1996 |
Distributed and cloud data management › data replication
primary-copy replication |
0.0 | 1 | 1996 | The Dangers of Replication and a Solution · SIGMOD Conference 1996 |
Indexing and storage engines
buffer management |
0.0 | 1 | 1993 | The LRU-K Page Replacement Algorithm For Database Disk Buffering · SIGMOD Conference 1993 |
Indexing and storage engines › buffer management
page replacement |
0.0 | 1 | 1993 | The LRU-K Page Replacement Algorithm For Database Disk Buffering · SIGMOD Conference 1993 |
Memory systems › virtual memory management
page replacement algorithms |
0.0 | 1 | 1993 | The LRU-K Page Replacement Algorithm For Database Disk Buffering · SIGMOD Conference 1993 |
Storage systems
storage reliability |
0.0 | 1 | 1998 | Design, Implementation, and Performance of the LHAM Log-Structured History Data Access Method · VLDB 1998 |
Query processing and optimization › query execution › expression evaluation
predicate evaluation |
0.0 | 1 | 1997 | Improved Query Performance with Variant Indexes · SIGMOD Conference 1997 |
Transaction processing and concurrency control › transaction models
long-lived transactions |
0.0 | 1 | 1986 | The Escrow Transactional Method · ACM Trans. Database Syst. 1986 |
Transaction processing and concurrency control
distributed transaction processing |
0.0 | 1 | 1986 | The Escrow Transactional Method · ACM Trans. Database Syst. 1986 |
Transaction processing and concurrency control › distributed commit protocols
two-phase commit |
0.0 | 1 | 1986 | The Escrow Transactional Method · ACM Trans. Database Syst. 1986 |
Computational complexity › algebraic complexity › matrix multiplication
boolean matrix multiplication |
0.0 | 1 | 1973 | A Fast Expected Time Algorithm for Boolean Matrix Multiplication and Transitive Closure · Inf. Control. 1973 |
Methods — techniques the papers use, named apart from their topics
multidimensional partitioning · 0.1materialized views · 0.1theory of nonserializable executions · 0.1ORDPATH labeling · 0.0formal specification · 0.0bitmap indexing · 0.0independent reference model · 0.0bayesian analysis · 0.0statistical interarrival estimation · 0.0LRU-K · 0.0two-tier replication · 0.0analytic modeling · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2016 | Determining serialization order for serializable snapshot isolation
Elizabeth J. O'Neil, Patrick E. O'Neil |
Inf. Syst. | 2 |
| 2014 | Improving MMDB distributed transactional concurrencyabstractMain Memory Database Systems (MMDBs) have been studied since the 80s [3,4], when memory was quite costly ($1500 per MByte in 1984). We can now buy memory for about $10 per GByte. An advantage of MMDBs is that serial execution of a non-distributed transaction on a uniprocessor from start to finish saves the work of disk I/O, locking, latching and deadlock handling [7]. The 2013 Bulletin on Data Engineering [11] had eight articles on recent MMDBs and only three mentioned distributed transactions. Implementing fast, serializable, distributed transactions on an MMDB is difficult, since communication delays typically leave some CPUs idle and reduce total throughput. Weiwei Gong, Patrick E. O'Neil, Elizabeth J. O'Neil |
IDEAS | 2 |
| 2013 | Variations of the star schema benchmark to test the effects of data skew on query performanceabstractThe Star Schema Benchmark (SSB), now in its third revision, has been widely used to evaluate the performance of database management systems when executing star schema queries. SSB, based on the well known industry standard benchmark TPC-H, shares some of its drawbacks, most notably, its uniform data distributions. Today's systems rely heavily on sophisticated cost-based query optimizers to generate the most efficient query execution plans. A benchmark that evaluates optimizer's capability to generate optimal execution plans under all circumstances must provide the rich data set details on which optimizers rely (uniform and non-uniform distributions, data sparsity, etc.). This is also true for other database system parts, such as indices and operators, and ultimately holds for an end-to-end benchmark as well. SSB's data generator, based on TPC-H's dbgen, is not easy to adapt to different data distributions as its meta data and actual data generation implementations are not separated. In this paper, we motivate the need for a new revision of SSB that includes non-uniform data distributions. We list what specific modifications are required to SSB to implement non-uniform data sets and we demonstrate how to implement these modifications in the Parallel Data Generator Framework to generate both the data and query sets. Tilmann Rabl, Meikel Pöss, Hans-Arno Jacobsen, Patrick E. O'Neil, Elizabeth J. O'Neil |
ICPE | 4 |
| 2011 | Precisely Serializable Snapshot Isolation (PSSI)abstractMany popular database management systems provide snapshot isolation (SI) for concurrency control, either in addition to or in place of full serializability based on locking. Snapshot isolation was introduced in 1995, with noted anomalies that can lead to serializability violations. Full serializability was provided in 2008 and improved in 2009 by aborting transactions in dangerous structures, which had been shown in 2005 to be precursors to potential SI anomalies. This approach resulted in a runtime environment guaranteeing a serializable form of snapshot isolation (which we call SSI or ESSI) for arbitrary applications. But transactions in a dangerous structure frequently do not cause true anomalies so, as the authors point out, their method is conservative: it can cause unnecessary aborts. In the current paper, we demonstrate our PSSI algorithm to detect cycles in a snapshot isolation dependency graph and abort transactions to break the cycle. This algorithm provides a much more precise criterion to perform aborts. We have implemented our algorithm in an open source production database system (MySQL/InnoDB), and our performance study shows that PSSI throughput improves on ESSI, with significantly fewer aborts. Stephen Revilak, Patrick E. O'Neil, Elizabeth J. O'Neil |
ICDE | 2 |
| 2008 | Adjoined Dimension Column Clustering to Improve Data Warehouse Query PerformanceabstractColumns of dimension tables that are frequently restricted in queries on a star schema database are materialized into the fact table by various means, depending on database product features. This makes it possible to create a multidimensional partitioning on the fact table, so that many queries restricting columns in hierarchies of the columns materialized will retrieve only a small number of cells of a rectangular subset of the partitioning. We believe this approach to be a previously undiscovered, though seemingly obvious, method to accelerate query performance. Xuedong Chen, Patrick E. O'Neil, Elizabeth J. O'Neil |
ICDE | 2 |
| 2007 | Bitmap Index Design Choices and Their Performance ImplicationsabstractHistorically, bitmap indexing has provided an important database capability to accelerate queries. However, only a few database systems have implemented these indexes because of the difficulties of modifying fundamental assumptions in the low- level design of a database system and in the expectations of customers, both of which have developed in an environment that does not support bitmap indexes. Another problem that arises, and one that may more easily be addressed by a research article, is that there is no definitive design for bitmap indexes; bitmap index designs in Oracle, Sybase IQ, Vertica and MODEL 204 are idiosyncratic, and some of them were designed for older machine architectures. To investigate an efficient design on modern processors, this paper provides details of the Set Query benchmark and a comparison of two research implementations of bitmap indexes. One, called RIDBit, uses the N-ary storage model to organize table rows, and implements a strategy that gracefully switches between the well-known B-tree RID-list structure and a bitmap structure. The other, called FastBit is based on vertical organization of the table data, where all columns are individually stored. It implements a compressed bitmap index, with a linear organization of the bitmaps to optimize disk accesses. Through this comparison, we evaluate the pros and cons of various design choices. Our analysis adds a number of subtleties to the conventional indexing wisdom commonly quoted in the database community. Elizabeth J. O'Neil, Patrick E. O'Neil, Kesheng Wu |
IDEAS | 2 |
| 2005 | C-Store: A Column-oriented DBMS
Michael Stonebraker, Daniel J. Abadi, Adam Batkin, Xuedong Chen, Mitch Cherniack, Miguel Ferreira, Edmond Lau, Amerson Lin, Samuel Madden 0001, Elizabeth J. O'Neil, Patrick E. O'Neil, Alexander Rasin, Nga Tran 0001, Stanley B. Zdonik |
VLDB | 11 |
| 2005 | Making snapshot isolation serializableabstractSnapshot Isolation (SI) is a multiversion concurrency control algorithm, first described in Berenson et al. [1995]. SI is attractive because it provides an isolation level that avoids many of the common concurrency anomalies, and has been implemented by Oracle and Microsoft SQL Server (with certain minor variations). SI does not guarantee serializability in all cases, but the TPC-C benchmark application [TPC-C], for example, executes under SI without serialization anomalies. All major database system products are delivered with default nonserializable isolation levels, often ones that encounter serialization anomalies more commonly than SI, and we suspect that numerous isolation errors occur each day at many large sites because of this, leading to corrupt data sometimes noted in data warehouse applications. The classical justification for lower isolation levels is that applications can be run under such levels to improve efficiency when they can be shown not to result in serious errors, but little or no guidance has been offered to application programmers and DBAs by vendors as to how to avoid such errors. This article develops a theory that characterizes when nonserializable executions of applications can occur under SI. Near the end of the article, we apply this theory to demonstrate that the TPC-C benchmark application has no serialization anomalies under SI, and then discuss how this demonstration can be generalized to other applications. We also present a discussion on how to modify the program logic of applications that are nonserializable under SI so that serializability will be guaranteed. Alan D. Fekete, Dimitrios Liarokapis, Elizabeth J. O'Neil, Patrick E. O'Neil, Dennis E. Shasha |
ACM Trans. Database Syst. | 4 |
| 2004 | ORDPATHs: Insert-Friendly XML Node LabelsabstractWe introduce a hierarchical labeling scheme called ORDPATH that is implemented in the upcoming version of Microsoft® SQL Server™. ORDPATH labels nodes of an XML tree without requiring a schema (the most general case---a schema simplifies the problem). An example of an ORDPATH value display format is "1.5.3.9.1". A compressed binary representation of ORDPATH provides document order by simple byte-by-byte comparison and ancestry relationship equally simply. In addition, the ORDPATH scheme supports insertion of new nodes at arbitrary positions in the XML tree, their ORDPATH values "careted in" between ORDPATHs of sibling nodes, without relabeling any old nodes. Patrick E. O'Neil, Elizabeth J. O'Neil, Shankar Pal, Istvan Cseri, Gideon Schaller, Nigel Westbury |
SIGMOD Conference | 1 |
| 2001 | Bit-Sliced Index ArithmeticabstractThe bit-sliced index (BSI) was originally defined in [ONQ97]. The current paper introduces the concept of BSI arithmetic. For any two BSI's X and Y on a table T, we show how to efficiently generate new BSI's Z, V, and W, such that Z = X + Y, V = X - Y, and W = MIN(X, Y); this means that if a row r in T has a value x represented in BSI X and a value y in BSI Y, the value for r i n BSI Z will be x + y, the value in V will be x - y and the value i n W will be MIN(x, y). Since a bitmap representing a set of rows is the simplest bit-sliced index, BSI arithmetic is the most straightforward way to determine multisets of rows (with duplicates) resulting from the SQL clauses UNION ALL (addition), EXCEPT ALL (subtraction), and INTERSECT ALL (min) (see [OO00, DB2SQL] for definitions of these clauses). Another contribution of the current paper is to generalize BSI range restrictions from [ONQ97] to a new non-Boolean form: to determine the top k BSI-valued rows, for any meaningful value k between o... Denis Rinfret, Patrick E. O'Neil, Elizabeth J. O'Neil |
SIGMOD Conference | 2 |
| 2001 | Preface
Patrick E. O'Neil, Kenneth A. Ross |
Inf. Syst. | 1 |
| 2000 | Generalized Isolation Level DefinitionsabstractCommercial databases support different isolation levels to allow programmers to trade off consistency for a potential gain in performance. The isolation levels are defined in the current ANSI standard, but the definitions are ambiguous and revised definitions proposed to correct the problem are too constrained since they allow only pessimistic (locking) implementations. This paper presents new specifications for the ANSI levels. Our specifications are portable: they apply not only to locking implementations, but also to optimistic and multi-version concurrency control schemes. Furthermore, unlike earlier definitions, our new specifications handle predicates in a correct and flexible manner at all levels. Atul Adya, Barbara Liskov, Patrick E. O'Neil |
ICDE | 3 |
| 2000 | The LHAM Log-Structured History Data Access Method
Peter Muth, Patrick E. O'Neil, Achim Pick, Gerhard Weikum |
VLDB J. | 2 |
| 1999 | An Optimality Proof of the LRU-K Page Replacement AlgorithmabstractThis paper analyzes a recently published algorithm for page replacement in hierarchical paged memory systems [O'Neil et al. 1993]. The algorithm is called the LRU- K method, and reduces to the well-known LRU (Least Recently Used) method for K = 1. Previous work [O'Neil et al. 1993; Weikum et al. 1994; Johnson and Shasha 1994] has shown the effectiveness for K > 1 by simulation, especially in the most common case of K = 2. The basic idea in LRU- K is to keep track of the times of the last K references to memory pages, and to use this statistical information to rank-order the pages as to their expected future behavior. Based on this the page replacement policy decision is made: which memory-resident page to replace when a newly accessed page must be read into memory. In the current paper, we prove, under the assumptions of the independent reference model, that LRU- K is optimal. Specifically we show: given the times of the (up to) K most recent references to each disk page, no other algorithm A making decisions to keep pages in a memory buffer holding n - 1 pages based on this infomation can improve on the expected number of I/Os to access pages over the LRU- K algorithm using a memory buffer holding n pages. The proof uses the Bayesian formula to relate the space of actual page probabilities of the model to the space of observable page numbers on which the replacement decision is acutally made. Elizabeth J. O'Neil, Patrick E. O'Neil, Gerhard Weikum |
J. ACM | 2 |
| 1998 | Data Warehousing Lessons From Experience (Panel)
Patrick E. O'Neil, Richard Winter, Clark D. French, Dan Crowley, William J. McKenna |
ICDE | 1 |
| 1998 | Design, Implementation, and Performance of the LHAM Log-Structured History Data Access Method
Peter Muth, Patrick E. O'Neil, Achim Pick, Gerhard Weikum |
VLDB | 2 |
| 1997 | Improved Query Performance with Variant IndexesabstractThe read-mostly environment of data warehousing makes it possible to use more complex indexes to speed up queries than in situations where concurrent updates are present. The current paper presents a short review of current indexing technology, including row-set representation by Bitmaps, and then introduces two approaches we call Bit-Sliced indexing and Projection indexing. A Projection index materializes all values of a column in RID order, and a Bit-Sliced index essentially takes an orthogonal bit-by-bit view of the same data. While some of these concepts started with the MODEL 204 product, and both Bit-Sliced and Projection indexing are now fully realized in Sybase IQ, this is the first rigorous examination of such indexing capabilities in the literature. We compare algorithms that become feasible with these variant index types against algorithms using more conventional indexes. The analysis demonstrates important performance advantages for variant indexes in some types of SQL aggregation, predicate evaluation, and grouping. The paper concludes by introducing a new method whereby multi-dimensional group-by queries, reminiscent of OLAP/Datacube queries but with more flexibility, can be very efficiently performed. Patrick E. O'Neil, Dallan Quass |
SIGMOD Conference | 1 |
| 1996 | The Dangers of Replication and a SolutionabstractUpdate anywhere-anytime-anyway transactional replication has unstable behavior as the workload scales up: a ten-fold increase in nodes and traffic gives a thousand fold increase in deadlocks or reconciliations. Master copy replication (primary copy) schemes reduce this problem. A simple analytic model demonstrates these results. A new two-tier replication algorithm is proposed that allows mobile (disconnected) applications to propose tentative update transactions that are later applied to a master copy. Commutative update transactions avoid the instability of other replication schemes. Jim Gray 0001, Pat Helland, Patrick E. O'Neil, Dennis E. Shasha |
SIGMOD Conference | 3 |
| 1996 | The Log-Structured Merge-Tree (LSM-Tree)
Patrick E. O'Neil, Edward Cheng, Dieter Gawlick, Elizabeth J. O'Neil |
Acta Informatica | 1 |
| 1996 | Guest Editorial: Real-Time Database Systems
Patrick E. O'Neil, Özgür Ulusoy |
Inf. Syst. | 1 |
| 1995 | A Critique of ANSI SQL Isolation LevelsabstractANSI SQL-92 [MS, ANSI] defines Isolation Levels in terms of phenomena: Dirty Reads, Non-Repeatable Reads, and Phantoms. This paper shows that these phenomena and the ANSI SQL definitions fail to properly characterize several popular isolation levels, including the standard locking implementations of the levels covered. Ambiguity in the statement of the phenomena is investigated and a more formal statement is arrived at; in addition new phenomena that better characterize isolation types are introduced. Finally, an important multiversion isolation type, called Snapshot Isolation, is defined. Hal Berenson, Philip A. Bernstein, Jim Gray 0001, Jim Melton, Elizabeth J. O'Neil, Patrick E. O'Neil |
SIGMOD Conference | 6 |
| 1993 | The LRU-K Page Replacement Algorithm For Database Disk BufferingabstractThis paper introduces a new approach to database disk buffering, called the LRU-K method. The basic idea of LRU-K is to keep track of the times of the last K references to popular database pages, using this information to statistically estimate the interarrival times of references on a page by page basis. Although the LRU-K approach performs optimal statistical inference under relatively standard assumptions, it is fairly simple and incurs little bookkeeping overhead. As we demonstrate with simulation experiments, the LRU-K algorithm surpasses conventional buffering algorithms in discriminating between frequently and infrequently referenced pages. In fact, LRU-K can approach the behavior of buffering algorithms in which page sets with known access frequencies are manually assigned to different buffer pools of specifically tuned sizes. Unlike such customized buffering algorithms however, the LRU-K method is self-tuning, and does not rely on external hints about workload characteristics. Furthermore, the LRU-K algorithm adapts in real time to changing patterns of access. Elizabeth J. O'Neil, Patrick E. O'Neil, Gerhard Weikum |
SIGMOD Conference | 2 |
| 1993 | Designing computer networks to avoid partitioning
Patrick E. O'Neil, Kenneth Baclawski, D. Frank Hsu |
Inf. Syst. | 1 |
| 1992 | The SB-Tree: An Index-Sequential Structure for High-Performance Sequential Access
Patrick E. O'Neil |
Acta Informatica | 1 |
| 1991 | Deadlock prediction for Escrow transactions
Patrick E. O'Neil |
Inf. Syst. | 1 |
| 1986 | The Escrow Transactional MethodabstractA method is presented for permitting record updates by long-lived transactions without forbidding simultaneous access by other users to records modified. Earlier methods presented separately by Gawlick and Reuter are comparable but concentrate on “hot-spot” situations, where even short transactions cannot lock frequently accessed fields without causing bottlenecks. The Escrow Method offered here is designed to support nonblocking record updates by transactions that are “long lived” and thus require long periods to complete. Recoverability of intermediate results prior to commit thus becomes a design goal, so that updates as of a given time can be guaranteed against memory or media failure while still retaining the prerogative to abort. This guarantee basically completes phase one of a two-phase commit, and several advantages result: (1) As with Gawlick's and Reuter's methods, high-concurrency items in the database will not act as a bottleneck; (2) transaction commit of different updates can be performed asynchronously, allowing natural distributed transactions; indeed, distributed transactions in the presence of delayed messages or occasional line disconnection become feasible in a way that we argue will tie up minimal resources for the purpose intended; and (3) it becomes natural to allow for human interaction in the middle of a transaction without loss of concurrent access or any special difficulty for the application programmer. The Escrow Method, like Gawlick's Fast Path and Reuter's Method, requires the database system to be an “expert” about the type of transactional updates performed, most commonly updates involving incremental changes to aggregate quantities. However, the Escrow Method is extendable to other types of updates. Patrick E. O'Neil |
ACM Trans. Database Syst. | 1 |
| 1973 | A Fast Expected Time Algorithm for Boolean Matrix Multiplication and Transitive Closure
Patrick E. O'Neil, Elizabeth J. O'Neil |
Inf. Control. | 1 |