Michael Stonebraker

dblp:s/MichaelStonebraker · also Mike Stonebraker · DBLP profile ↗
← Back
176ranked-venue papers in the field
53as first author
21since 2021 · last 2026
0000-0001-9184-9058ORCID · verified

Domains — venue-derived; a paper can count in several

Database Systems & Data Management · 173 (51 first)Big Data, Cloud & Distributed Data Systems · 2 (1 first)Information Retrieval & Web Search · 1 (1 first)
YearPublicationVenuePosition
2026 Consistency and Correctness in Data-Oriented Workflow Systems
Michael Stonebraker, Xinjing Zhou, Peter Kraft, Qian Li 0027
CIDR1
2025 OLTP Through the Looking Glass 16 Years Later: Communication is theNew Bottleneck
Xinjing Zhou, Viktor Leis, Xiangyao Yu, Michael Stonebraker
CIDR4
2025 Practical DB-OS Co-Design with Privileged Kernel Bypass
abstract
This paper revisits the longstanding challenge of coordinating database systems with general-purpose OS interfaces, such as POSIX, which often lack tailored support for DB requirements. Existing approaches to this DB-OS co-design struggle with limited design space, security risks, and compatibility issues. To overcome these hurdles, we propose a new co-design approach leveraging virtualization to elevate the privilege level of DB processes. Our method enables database systems to fully exploit hardware capabilities via virtualization, while minimizing the need for extensive modifications to the host OS kernel, thereby maintaining compatibility. We demonstrate the effectiveness of our approach through two novel virtual memory mechanisms tailored for database workloads: (1) an efficient snapshotting mechanism that captures memory snapshots at millisecond intervals for in-memory databases and HTAP workloads, and (2) a streamlined in-kernel buffer pool design. We introduce Libdbos , a lightweight guest kernel implementing these mechanisms. Our evaluations highlight significant improvements in latency and efficiency compared to existing snapshotting and buffer pool designs, underscoring the potential of the approach.
Xinjing Zhou, Viktor Leis, Jinming Hu, Xiangyao Yu, Michael Stonebraker
Proc. ACM Manag. Data5
2025 Tux: Efficient Drop-in Networking for Database Systems
Xinjing Zhou, Viktor Leis, Xiangyao Yu, Michael Stonebraker
Proc. VLDB Endow.4
2025 DBOS: three years later
Qian Li 0027, Peter Kraft, Christoforos E. Kozyrakis, Matei Zaharia, Michael Stonebraker
VLDB J.5
2025 Tiered-Indexing: Optimizing Access Methods for Skew
abstract
Abstract Real-world DBMS workloads invariably exhibit skewed access patterns, where a small number of "hot" records are accessed much more frequently than the remaining "cold" records. Page-oriented data structures, such as B+trees, dynamic hash tables, heap files, and LSM-tree, are sub-optimal in terms of memory utilization under skewed access conditions. Hot records might be co-located with cold ones on pages in the data structure. Caching those lukewarm pages in the buffer pool lowers memory utilization due to the mismatch of caching granularity (page) and access granularity (record), leading to sub-optimal performance. Recently, the 2-Tree approach was proposed to improve caching efficiency for B+trees using record-level migration. In this paper, we generalize the 2-Tree approach to Tiered-Indexing that can be applied to common buffer-managed data structures to efficiently handle skew using record migration. Using this architecture, we extend hash tables, heap files, and LSM-trees with I/O-efficient record migration. Moreover, we design a general mechanism to ensure data structure consistency for Tiered-Indexing data structures during record migration using optimistic lock coupling. Compared to traditional 1-Tier and state-of-the-art record-caching designs, we observe significant throughput and memory utilization improvement across B+tree, hash table, heap file, and LSM-tree under skewed workloads.
Xinjing Zhou, Xiangpeng Hao, Xiangyao Yu, Michael Stonebraker
VLDB J.4
2024 Towards Buffer Management with Tiered Main Memory
abstract
The scaling of per-GB DRAM cost has slowed down in recent years. Recent research has suggested that adding remote memory to a system can further reduce the overall memory cost while maintaining good performance. Remote memory (i.e., tiered memory), connected to host servers via high-speed interconnect protocols such as RDMA and CXL, is expected to deliver 100x (less than 1µs) lower latency than SSD and be more cost-effective than local DRAM through pooling or adopting cheaper memory technologies. Tiered memory opens up a large number of potential use cases within database systems. But previous work has only explored limited ways of using tiered memory. Our study provides a systematic study for DBMS to build tiered memory buffer management with respect to a wide range of hardware performance characteristics. Specifically, we study five different indexing designs that leverage remote memory in different ways and evaluate them through a wide range of metrics including performance, tiered-memory latency sensitivity, and cost-effectiveness. In addition, we propose a new memory provisioning strategy that allocates an optimal amount of local and remote memory for a given workload. Our evaluations show that while some designs achieve higher performance than others, no design can win in all measured dimensions.
Xiangpeng Hao, Xinjing Zhou, Xiangyao Yu, Michael Stonebraker
Proc. ACM Manag. Data4
2024 FlexpushdownDB: rethinking computation pushdown for cloud OLAP DBMSs
Xiangyao Yu, Marco Serafini, Ashraf Aboulnaga, Michael Stonebraker
VLDB J.5
2023 Transactions Make Debugging Easy
Qian Li 0027, Peter Kraft, Michael J. Cafarella, Çagatay Demiralp, Goetz Graefe, Christoforos E. Kozyrakis, Michael Stonebraker, Lalith Suresh 0001, Matei Zaharia
CIDR7
2023 Two is Better Than One: The Case for 2-Tree for Skewed Data Sets
Xinjing Zhou, Xiangyao Yu, Goetz Graefe, Michael Stonebraker
CIDR4
2023 R3: Record-Replay-Retroaction for Database-Backed Applications
abstract
Developers would benefit greatly from time travel: being able to faithfully replay past executions and retroactively execute modified code on past events. Currently, replay and retroaction are impractical because they require expensively capturing fine-grained timing information to reproduce concurrent accesses to shared state. In this paper, we propose practical time travel for database-backed applications , an important class of distributed applications that access shared state through transactions. We present R 3 , a novel Record-Replay-Retroaction tool. R 3 implements a lightweight interceptor to record concurrency information for applications at transaction-level granularity, enabling replay and retroaction with minimal overhead. We address key challenges in both replay and retroaction. First, we design a novel algorithm for faithfully reproducing application requests running with snapshot isolation, allowing R 3 to support most production DBMSs. Second, we develop a retroactive execution mechanism that provides high fidelity with the original trace while supporting nearly arbitrary code modifications. We demonstrate how R 3 simplifies debugging for real, hard-to-reproduce concurrency bugs from popular open-source web applications. We evaluate R 3 using TPC-C and microservice workloads and show that R 3 always-on recording has a small performance overhead (<25% for point queries but <0.1% for complex transactions like in TPC-C) during normal application execution and that R 3 can retroactively execute bugfixed code over recorded traces within 0.11--0.78× of the original execution time.
Qian Li 0027, Peter Kraft, Michael J. Cafarella, Çagatay Demiralp, Goetz Graefe, Christoforos E. Kozyrakis, Michael Stonebraker, Lalith Suresh 0001, Xiangyao Yu, Matei Zaharia
Proc. VLDB Endow.7
2023 Epoxy: ACID Transactions Across Diverse Data Stores
abstract
Developers are increasingly building applications that incorporate multiple data stores, for example to manage heterogeneous data. Often, these require transactional safety for operations across stores, but few systems support such guarantees. To solve this problem, we introduce Epoxy, a protocol for providing transactions across heterogeneous data stores. We make two contributions. First, we adapt multi-version concurrency control to a cross-data store setting, storing versioning information in record metadata and filtering reads with predicates on metadata so they only see record versions in a global transaction snapshot. Second, we show our design enables an atomic commit protocol that does not require data stores implement the participant protocol of two-phase commit, requiring only durable writes. We implement Epoxy for five data stores: Postgres, Elasticsearch, MongoDB, Google Cloud Storage, and MySQL. We evaluate it by adapting TPC-C and microservice workloads to a multi-data store environment. We find it has comparable performance to the distributed transaction protocol XA on TPC-C while providing stronger guarantees like isolation, and has overhead of <10% compared to a non-transactional baseline on read-mostly microservice workloads and 72% on write-heavy workloads.
Peter Kraft, Qian Li 0027, Xinjing Zhou, Peter Bailis, Michael Stonebraker, Xiangyao Yu, Matei Zaharia
Proc. VLDB Endow.5
2022 A Progress Report on DBOS: A Database-oriented Operating System
Qian Li 0027, Peter Kraft, Kostis Kaffes, Athinagoras Skiadopoulos, Deeptaanshu Kumar, Michael J. Cafarella, Goetz Graefe, Jeremy Kepner, Christoforos E. Kozyrakis, Michael Stonebraker, Lalith Suresh 0001, Matei Zaharia
CIDR11
2022 Kyrix-J: Visual Discovery of Connected Datasets in a Data Lake
Wenbo Tao, Adam Sah, Leilani Battle, Remco Chang, Michael Stonebraker
CIDR5
2022 ExSample: Efficient Searches on Video Repositories through Adaptive Sampling
abstract
Capturing and processing video is increasingly common as cameras become cheaper to deploy. At the same time, rich video-understanding methods have progressed greatly in the last decade. As a result, many organizations now have massive repositories of video data, with applications in mapping, navigation, autonomous driving, and other areas. Because state-of-the-art object-detection methods are slow and expensive, our ability to process even simple ad-hoc object search queries (“find 100 traffic lights in dashcam video”) over this accumulated data lags far behind our ability to collect the data. Processing video at reduced sampling rates is a reasonable default strategy for these types of queries; however, the ideal sampling rate is both data and query dependent. We introduce ExSample, a low cost framework for object search over un-indexed video that quickly processes search queries by adapting the amount and location of sampled frames to the particular data and query being processed. ExSample prioritizes the processing of frames in a video repository so that processing is focused in portions of video that most likely contain objects of interest. It approaches searching in a similar way to a multi-arm bandit problem where each arm corresponds to a portion of a video. On large, real-world datasets, ExSample reduces processing time by 1.9x on average and up to 6x over an efficient random sampling baseline. Moreover, we show ExSample finds many results long before sophisticated, state-of-the-art baselines based on proxy scores can begin producing their first results.
Oscar R. Moll Thomae, Favyen Bastani, Samuel Madden 0001, Michael Stonebraker, Vijay Gadepally, Tim Kraska
ICDE4
2022 ExSample: Efficient Searches on Video Repositories through Adaptive Sampling
abstract
Capturing and processing video is increasingly com-mon as cameras become cheaper to deploy. At the same time, rich video-understanding methods have progressed greatly in the last decade. As a result, many organizations now have massive repositories of video data, with applications in mapping, navigation, autonomous driving, and other areas. Because state-of-the-art object-detection methods are slow and expensive, our ability to process even simple ad-hoc object search queries (“find 100 traffic lights in dashcam video”) over this accumulated data lags far behind our ability to collect the data. Processing video at reduced sampling rates is a reasonable default strategy for these types of queries; however, the ideal sampling rate is both data and query dependent. We introduce ExSample, a low cost framework for object search over un-indexed video that quickly processes search queries by adapting the amount and location of sampled frames to the particular data and query being processed. ExSample prioritizes the processing of frames in a video repository so that processing is focused in portions of video that most likely contain objects of interest. It approaches searching in a similar way to a multi-arm bandit problem where each arm corresponds to a portion of a video. On large, real-world datasets, ExSample reduces processing time by 1.9x on average and up to 6x over an efficient random sampling baseline. Moreover, we show ExSample finds many results long before sophisticated, state-of-the-art baselines based on proxy scores can begin producing their first results.
Oscar R. Moll Thomae, Favyen Bastani, Samuel Madden 0001, Michael Stonebraker, Vijay Gadepally, Tim Kraska
ICDE4
2022 Lotus: Scalable Multi-Partition Transactions on Single-Threaded Partitioned Databases
abstract
This paper revisits the H-Store/VoltDB concurrency control scheme for partitioned main-memory databases, which we term run-to-completion-single-thread (RCST), with an eye toward improving its poor performance on multi-partition (MP) workloads. The original scheme focused on maximizing single partition (SP) performance, producing results in millions of transactions per second on modest clusters, but at the expense of dismal MP performance. In this paper, we show that original RCST algorithms be made to dramatically improve MP performance with very limited impact on SP performance. That makes RCST superior to popular optimistic and pessimistic schemes without optimizations for batch execution, including OCC and 2PL, on a wide range of multi-node workloads with up to 60% throughput improvement. Our second contribution is to propose a multiplexed-execution-single-thread (MEST) algorithm based on RCST to amortize the network stalls from MP transactions over a batch of MP transactions. This scheme delivers up to 21X higher throughput for SP transactions and comparable MP throughput compared to state-of-the-art distributed deterministic concurrency control algorithms that are optimized for batch execution. Finally, our MEST scheme offers dramatically superior performance when straggler transactions are present in the workload. Our conclusion is that the H-Store/VoltDB concurrency control scheme can be dramatically improved and dominates state-of-the-art algorithms over a variety of MP workloads.
Xinjing Zhou, Xiangyao Yu, Goetz Graefe, Michael Stonebraker
Proc. VLDB Endow.4
2021 DICE: Data Discovery by Example
abstract
In order to conduct analytical tasks, data scientists often need to find relevant data from an avalanche of sources (e.g., data lakes, large organizational databases). This effort is typically made in an ad hoc, non-systematic manner, which makes it a daunting endeavour. Current data discovery systems typically require the users to find relevant tables manually, usually by issuing multiple queries (e.g., using SQL). However, expressing such queries is nontrivial, as it requires knowledge of the underlying structure (schema) of the data organization in advance. This issue is further exacerbated when data resides in data lakes, where there is no predefined schema that data must conform to. On the other hand, data scientists can often come up with a few example records of interest quickly. Motivated by this observation, we developed DICE---a human-in-the-loop system for Data dIsCovery by Example---that takes user-provided example records as input and returns more records that satisfy the user intent. DICE's key idea is to synthesize a SQL query that captures the user intent, specified via examples. To this end, DICE follows a three-step process: (1) DICE first discovers a few candidate queries by finding join paths across tables within the data lake. (2) Then DICE consults with the user for validation by presenting a few records to them, and, thus, eliminating spurious queries. (3) Based on the user feedback, DICE refines the search and repeats the process until the user is satisfied with the results. We will demonstrate how DICE can help in data discovery through an interactive, example-based interaction.
El Kindi Rezig, Anshul Bhandari, Anna Fariha, Benjamin Price, Allan Vanterpool, Vijay Gadepally, Michael Stonebraker
Proc. VLDB Endow.7
2021 Horizon: Scalable Dependency-driven Data Cleaning
abstract
A large class of data repair algorithms rely on integrity constraints to detect and repair errors. A well-studied class of constraints is Functional Dependencies (FDs, for short). Although there has been an increased interest in developing general data cleaning systems for a myriad of data errors, scalability has been left behind. This is because current systems assume data cleaning is performed offline and in one iteration. However, developing data science pipelines is highly iterative and requires efficient cleaning techniques to scale to millions of records in seconds/minutes, not days. In our efforts to re-think the data cleaning stack and bring it to the era of data science, we introduce Horizon , an end-to-end FD repair system to address two key challenges: (1) Accuracy: Most existing FD repair techniques aim to produce repairs that minimize changes to the data that may lead to incorrect combinations of attribute values (or patterns). Horizon leverages the interaction between the data patterns induced by the various FDs, and subsequently selects repairs that preserve the most frequent patterns found in the original data, and hence leading to a better repair accuracy. (2) Scalability: Existing data cleaning systems struggle when dealing with large-scale real-world datasets. Horizon features a linear-time repair algorithm that scales to millions of records, and is orders-of-magnitude faster than state-of-the-art cleaning algorithms. A benchmark of Horizon against state-of-the-art cleaning systems on multiple datasets and metrics shows that Horizon consistently outperforms existing techniques in repair quality and scalability.
El Kindi Rezig, Mourad Ouzzani, Walid G. Aref, Ahmed K. Elmagarmid, Ahmed R. Mahmood, Michael Stonebraker
Proc. VLDB Endow.6
2021 DBOS: A DBMS-oriented Operating System
abstract
This paper lays out the rationale for building a completely new operating system (OS) stack. Rather than build on a single node OS together with separate cluster schedulers, distributed filesystems, and network managers, we argue that a distributed transactional DBMS should be the basis for a scalable cluster OS. We show herein that such a database OS (DBOS) can do scheduling, file management, and inter-process communication with competitive performance to existing systems. In addition, significantly better analytics can be provided as well as a dramatic reduction in code complexity through implementing OS services as standard database queries, while implementing low-latency transactions and high availability only once.
Athinagoras Skiadopoulos, Qian Li 0027, Peter Kraft, Kostis Kaffes, Daniel Hong, Shana Mathew, David Bestor, Michael J. Cafarella, Vijay Gadepally, Goetz Graefe, Jeremy Kepner, Christoforos E. Kozyrakis, Tim Kraska, Michael Stonebraker, Lalith Suresh 0001, Matei Zaharia
Proc. VLDB Endow.14
2021 FlexPushdownDB: Hybrid Pushdown and Caching in a Cloud DBMS
abstract
Modern cloud databases adopt a storage-disaggregation architecture that separates the management of computation and storage. A major bottleneck in such an architecture is the network connecting the computation and storage layers. Two solutions have been explored to mitigate the bottleneck: caching and computation pushdown. While both techniques can significantly reduce network traffic, existing DBMSs consider them as orthogonal techniques and support only one or the other, leaving potential performance benefits unexploited. In this paper we present FlexPushdownDB (FPDB) , an OLAP cloud DBMS prototype that supports fine-grained hybrid query execution to combine the benefits of caching and computation pushdown in a storage-disaggregation architecture. We build a hybrid query executor based on a new concept called separable operators to combine the data from the cache and results from the pushdown processing. We also propose a novel Weighted-LFU cache replacement policy that takes into account the cost of pushdown computation. Our experimental evaluation on the Star Schema Benchmark shows that the hybrid execution outperforms both the conventional caching-only architecture and pushdown-only architecture by 2.2X. In the hybrid architecture, our experiments show that Weighted-LFU can outperform the baseline LFU by 37%.
Matt Youill, Matthew E. Woicik, Xiangyao Yu, Marco Serafini, Ashraf Aboulnaga, Michael Stonebraker
Proc. VLDB Endow.8
2020 Dagger: A Data (not code) Debugger
El Kindi Rezig, Lei Cao 0004, Giovanni Simonini, Maxime Schoemans, Samuel Madden 0001, Nan Tang 0001, Mourad Ouzzani, Michael Stonebraker
CIDR8
2020 PushdownDB: Accelerating a DBMS Using S3 Computation
abstract
This paper studies the effectiveness of pushing parts of DBMS analytics queries into the Simple Storage Service (S3) of Amazon Web Services (AWS), using a recently released capability called S3 Select. We show that some DBMS primitives (filter, projection, and aggregation) can always be cost-effectively moved into S3. Other more complex operations (join, top-K, and group-by) require reimplementation to take advantage of S3 Select and are often candidates for pushdown. We demonstrate these capabilities through experimentation using a new DBMS that we developed, PushdownDB. Experimentation with a collection of queries including TPC-H queries shows that PushdownDB is on average 30% cheaper and 6.7× faster than a baseline that does not use S3 Select.
Xiangyao Yu, Matt Youill, Matthew E. Woicik, Abdurrahman Ghanem, Marco Serafini, Ashraf Aboulnaga, Michael Stonebraker
ICDE7
2020 The Next 5 Years: What Opportunities Should the Database Community Seize to Maximize its Impact?
abstract
The database research community has been spectacularly successful in impacting the industry and academia since the invention of the relational model. Examples of innovation in the last decade include columnar storage for data analytic platforms, cloud data services, HTAP systems, and a new generation of data wrangling systems. Despite this success, critical self-assessment by the community and identifying key opportunities for the future is essential if we are to continue the tradition of impactful research. In the Fall of 2018, following a long tradition that dates back to 1988 [1], and five years after the last such meeting [2], a group of approximately thirty database researchers gathered at the University of Washington, Seattle for two days to discuss the opportunities we have as a community for impactful research. A report from that meeting is now available [3]. The discussions in the Seattle meeting focused not just on technical challenges and opportunities but also on topics related to how we organize ourselves as a community. This SIGMOD panel will provide a forum for the broader database community to review and debate the findings from the Seattle Report on Database Research [3] as well as to identify other challenges, and opportunities that need to be taken into account.
Magdalena Balazinska, Surajit Chaudhuri, Anastasia Ailamaki, Juliana Freire, Sailesh Krishnamurthy, Michael Stonebraker
SIGMOD Conference6
2020 Winds from Seattle: Database Research Directions
abstract
The database research community has been notably successful in impacting the industry and academia since the invention of the relational model. Examples of innovation in the last decade include columnar storage for data analytic platforms, cloud data services, HTAP systems, and a new generation of data wrangling systems. Despite this success, critical self-assessment by the community and identifying key opportunities for the future is essential if we are to continue the tradition of impactful research. In the Fall of 2018, following a long tradition that dates back to 1988 [4], and five years after the last such meeting [1], a group of approximately thirty database researchers gathered at the University of Washington, Seattle for two days to discuss the opportunities we have as a community for impactful research. A report from that meeting is now available [2]. The discussions in the Seattle meeting focused not just on technical challenges and opportunities but also on topics related to how we organize ourselves as a community. This VLDB panel follows on from a previous discussion at SIGMOD 2020 [3], to provide a forum for the broader database community to review and debate the findings from the Seattle Report on Database Research [2] as well as to identify other challenges, and opportunities that need to be taken into account.
Peter Bailis, Magdalena Balazinska, Xin Dong 0001, Juliana Freire, Raghu Ramakrishnan 0001, Michael Stonebraker, Joseph M. Hellerstein
Proc. VLDB Endow.6
2020 Pattern Functional Dependencies for Data Cleaning
abstract
Patterns (or regex-based expressions) are widely used to constrain the format of a domain (or a column), e.g. , a Year column should contain only four digits, and thus a value like "1980-" might be a typo. Moreover, integrity constraints (ICs) defined over multiple columns, such as (conditional) functional dependencies and denial constraints, e.g. , a ZIP code uniquely determines a city in the UK, have been widely used in data cleaning. However, a promising, but not yet explored, direction is to combine regex- and IC-based theories to capture data dependencies involving partial attribute values. For example, in an employee ID such as"F-9-107", "F" is sufficient to determine the finance department. Inspired by the above observation, we propose a novel class of ICs, called pattern functional dependencies (PFDs), to model fine-grained data dependencies gleaned from partial attribute values. These dependencies cannot be modeled using traditional ICs, such as (conditional) functional dependencies, which work on entire attribute values. We also present a set of axioms for the inference of PFDs, analogous to Armstrong's axioms for FDs, and study the complexity of consistency and implication analysis of PFDs. Moreover, we devise an effective algorithm to automatically discover PFDs even in the presence of errors in the data. Our extensive experiments on 15 real-world datasets show that our approach can effectively discover valid and useful PFDs over dirty data, which can then be used to detect data errors that are hard to capture by other types of ICs.
Abdulhakim Ali Qahtan, Nan Tang 0001, Mourad Ouzzani, Yang Cao 0012, Michael Stonebraker
Proc. VLDB Endow.5
2020 Debugging Large-Scale Data Science Pipelines using Dagger
abstract
Data pipelines are the new code. Consequently, data scientists need new tools to support the often time-consuming process of debugging their pipelines. We introduce Dagger , an end-to-end system to debug and mitigate data-centric errors in data pipelines, such as a data transformation gone wrong or a classifier underperforming due to noisy training data. Dagger supports inter-module debugging, where the pipeline blocks are treated as black boxes, as well as intra-module debugging, where users can debug data objects in Python scripts (e.g., DataFrames). In this demo, we will walk the audience through a rich, real-world business intelligence use case from our industrial collaborators at Intel, to highlight how Dagger enables data scientists to productively identify and mitigate data-centric problems at different stages of pipeline development.
El Kindi Rezig, Ashrita Brahmaroutu, Nesime Tatbul, Mourad Ouzzani, Nan Tang 0001, Timothy G. Mattson, Samuel Madden 0001, Michael Stonebraker
Proc. VLDB Endow.8
2019 Kyrix: Interactive Visual Data Exploration at Scale
Wenbo Tao, Çagatay Demiralp, Remco Chang, Michael Stonebraker
CIDR5
2019 Unsupervised String Transformation Learning for Entity Consolidation
abstract
Data integration has been a long-standing challenge in data management with many applications. A key step in data integration is entity consolidation. It takes a collection of clusters of duplicate records as input and produces a single "golden record" for each cluster, which contains the canonical value for each attribute. Truth discovery and data fusion methods as well as Master Data Management (MDM) systems can be used for entity consolidation. However, to achieve better results, the variant values (i.e., values that are logically the same with different formats) in the clusters need to be consolidated before applying these methods. For this purpose, we propose a data-driven method to standardize the variant values based on two observations: (1) the variant values usually can be transformed to the same representation (e.g., "Mary Lee" and "Lee, Mary") and (2) the same transformation often appears repeatedly across different clusters (e.g., transpose the first and last name). Our approach first uses an unsupervised method to generate groups of value pairs that can be transformed in the same way. Then the groups are presented to a human for verification and the approved ones are used to standardize the data. In a real-world dataset with 17,497 records, our method achieved 75% recall and 99.5% precision in standardizing variant values by asking a human 100 yes/no questions, which completely outperformed a state of the art data wrangling tool.
Dong Deng 0001, Wenbo Tao, Ziawasch Abedjan, Ahmed K. Elmagarmid, Ihab F. Ilyas, Guoliang Li 0001, Samuel Madden 0001, Mourad Ouzzani, Michael Stonebraker, Nan Tang 0001
ICDE9
2019 How I Learned to Stop Worrying and Love Re-optimization
abstract
Cost-based query optimizers remain one of the most important components of database management systems for analytic workloads. Though modern optimizers select plans close to optimal performance in the common case, a small number of queries are an order of magnitude slower than they could be. In this paper we investigate why this is still the case, despite decades of improvements to cost models, plan enumeration, and cardinality estimation. We demonstrate why we believe that a re-optimization mechanism is likely the most cost-effective way to improve end-to-end query performance. We find that even a simple re-optimization scheme can improve the latency of many poorly performing queries. We demonstrate that re-optimization improves the end-to-end latency of the top 20 longest running queries in the Join Order Benchmark by 27%, realizing most of the benefit of perfect cardinality estimation.
Matthew Perron, Zeyuan Shang, Tim Kraska, Michael Stonebraker
ICDE4
2019 Raha: A Configuration-Free Error Detection System
abstract
Detecting erroneous values is a key step in data cleaning. Error detection algorithms usually require a user to provide input configurations in the form of rules or statistical parameters. However, providing a complete, yet correct, set of configurations for each new dataset is not trivial, as the user has to know about both the dataset and the error detection algorithms upfront. In this paper, we present Raha, a new configuration-free error detection system. By generating a limited number of configurations for error detection algorithms that cover various types of data errors, we can generate an expressive feature vector for each tuple value. Leveraging these feature vectors, we propose a novel sampling and classification scheme that effectively chooses the most representative values for training. Furthermore, our system can exploit historical data to filter out irrelevant error detection algorithms and configurations. In our experiments, Raha outperforms the state-of-the-art error detection techniques with no more than 20 labeled tuples on each dataset.
Mohammad Mahdavi, Ziawasch Abedjan, Raul Castro Fernandez, Samuel Madden 0001, Mourad Ouzzani, Michael Stonebraker, Nan Tang 0001
SIGMOD Conference6
2019 ANMAT: Automatic Knowledge Discovery and Error Detection through Pattern Functional Dependencies
abstract
Knowledge discovery is critical to successful data analytics. We propose a new type of meta-knowledge, namely pattern functional dependencies (PFDs), that combine patterns (or regex-like rules) and integrity constraints (ICs) to model the dependencies (or meta-knowledge) between partial values (or patterns) across different attributes in a table. PFDs go beyond the classical functional dependencies and their extensions. For instance, in an employee table, ID "F-9-107'', "F'' determines the finance department. Moreover, a key application of PFDs is to use them to identify erroneous data; tuples that violate some PFDs. In this demonstration, attendees will experience the following features: (i) PFD discovery -- automatically discover PFDs from (dirty) data in different domains; and (ii) Error detection with PFDs -- we will show errors that are detected by PFDs but cannot be captured by existing approaches.
Abdulhakim Ali Qahtan, Nan Tang 0001, Mourad Ouzzani, Yang Cao 0012, Michael Stonebraker
SIGMOD Conference5
2019 Smile: A System to Support Machine Learning on EEG Data at Scale
abstract
In order to reduce the possibility of neural injury from seizures and sidestep the need for a neurologist to spend hours on manually reviewing the EEG recording, it is critical to automatically detect and classify "interictal-ictal continuum" (IIC) patterns from EEG data. However, the existing IIC classification techniques are shown to be not accurate and robust enough for clinical use because of the lack of high quality labels of EEG segments as training data. Obtaining high-quality labeled data is traditionally a manual process by trained clinicians that can be tedious, time-consuming, and error-prone. In this work, we propose Smile, an industrial scale system that provides an end-to-end solution to the IIC pattern classification problem. The core components of Smile include a visualization-based time series labeling module and a deep-learning based active learning module. The labeling module enables the users to explore and label 350 million EEG segments (30TB) at interactive speed. The multiple coordinated views allow the users to examine the EEG signals from both time domain and frequency domain simultaneously. The active learning module first trains a deep neural network that automatically extracts both the local features with respect to each segment itself and the long term dynamics of the EEG signals to classify IIC patterns. Then leveraging the output of the deep learning model, the EEG segments that can best improve the model are selected and prompted to clinicians to label. This process is iterated until the clinicians and the models show high degree of agreement. Our initial experimental results show that our Smile system allows the clinicians to label the EEG segments at will with a response time below 500 ms. The accuracy of the model is progressively improved as more and more high quality labels are acquired over time.
Lei Cao 0004, Wenbo Tao, Sungtae An, Jing Jin 0004, Yizhou Yan, Wendong Ge, Adam Sah, Leilani Battle, Jimeng Sun 0001, Remco Chang, M. Brandon Westover, Samuel Madden 0001, Michael Stonebraker
Proc. VLDB Endow.14
2019 Data Civilizer 2.0: A Holistic Framework for Data Preparation and Analytics
abstract
Data scientists spend over 80% of their time (1) parameter-tuning machine learning models and (2) iterating between data cleaning and machine learning model execution. While there are existing efforts to support the first requirement, there is currently no integrated workflow system that couples data cleaning and machine learning development. The previous version of Data Civilizer was geared towards data cleaning and discovery using a set of pre-defined tools. In this paper, we introduce Data Civilizer 2.0, an end-to-end workflow system satisfying both requirements. In addition, this system also supports a sophisticated data debugger and a workflow visualization system. In this demo, we will show how we used Data Civilizer 2.0 to help scientists at the Massachusetts General Hospital build their cleaning and machine learning pipeline on their 30TB brain activity dataset.
El Kindi Rezig, Lei Cao 0004, Michael Stonebraker, Giovanni Simonini, Wenbo Tao, Samuel Madden 0001, Mourad Ouzzani, Nan Tang 0001, Ahmed K. Elmagarmid
Proc. VLDB Endow.3
2019 Choosing A Cloud DBMS: Architectures and Tradeoffs
abstract
As analytic (OLAP) applications move to the cloud, DBMSs have shifted from employing a pure shared-nothing design with locally attached storage to a hybrid design that combines the use of shared-storage (e.g., AWS S3) with the use of shared-nothing query execution mechanisms. This paper sheds light on the resulting tradeoffs, which have not been properly identified in previous work. To this end, it evaluates the TPC-H benchmark across a variety of DBMS offerings running in a cloud environment (AWS) on fast 10Gb+ networks, specifically database-as-a-service offerings (Redshift, Athena), query engines (Presto, Hive), and a traditional cloud agnostic OLAP database (Vertica). While these comparisons cannot be apples-to-apples in all cases due to cloud configuration restrictions, we nonetheless identify patterns and design choices that are advantageous. These include prioritizing low-cost object stores like S3 for data storage, using system agnostic yet still performant columnar formats like ORC that allow easy switching to other systems for different workloads, and making features that benefit subsequent runs like query precompilation and caching remote data to faster storage optional rather than required because they disadvantage ad hoc queries.
Junjay Tan, Thanaa M. Ghanem, Matthew Perron, Xiangyao Yu, Michael Stonebraker, David J. DeWitt, Marco Serafini, Ashraf Aboulnaga, Tim Kraska
Proc. VLDB Endow.5
2019 Rethinking Database High Availability with RDMA Networks
abstract
Highly available database systems rely on data replication to tolerate machine failures. Both classes of existing replication algorithms, active-passive and active-active, were designed in a time when network was the dominant performance bottleneck. In essence, these techniques aim to minimize network communication between replicas at the cost of incurring more processing redundancy; a trade-off that suitably fitted the conventional wisdom of distributed database design. However, the emergence of next-generation networks with high throughput and low latency calls for revisiting these assumptions. In this paper, we first make the case that in modern RDMA-enabled networks, the bottleneck has shifted to CPUs, and therefore the existing network-optimized replication techniques are no longer optimal. We present Active-Memory Replication , a new high availability scheme that efficiently leverages RDMA to completely eliminate the processing redundancy in replication. Using Active-Memory, all replicas dedicate their processing power to executing new transactions, as opposed to performing redundant computation. Active-Memory maintains high availability and correctness in the presence of failures through an efficient RDMA-based undo-logging scheme. Our evaluation against active-passive and active-active schemes shows that Active-Memory is up to a factor of 2 faster than the second-best protocol on RDMA-based networks.
Erfan Zamanian, Xiangyao Yu, Michael Stonebraker, Tim Kraska
Proc. VLDB Endow.3
2018 Aurum: A Data Discovery System
abstract
Organizations face a data discovery problem when their analysts spend more time looking for relevant data than analyzing it. This problem has become commonplace in modern organizations as: i) data is stored across multiple storage systems, from databases to data lakes, to the cloud; ii) data scientists do not operate within the limits of well-defined schemas or a small number of data sources—instead, to answer complex questions they must access data spread across thousands of data sources. To address this problem, we capture relationships between datasets in an enterprise knowledge graph (EKG), which helps users to navigate among disparate sources. The contribution of this paper is AURUM, a system to build, maintain and query the EKG. To build the EKG, we introduce a Two-step process which scales to large datasets and requires only one-pass over the data, avoiding overloading the source systems. To maintain the EKG without re-reading all data every time, we introduce a resource-efficient sampling signature (RESS) method which works by only using a small sample of the data. Finally, to query the EKG, we introduce a collection of composable primitives, thus allowing users to define many different types of discovery queries. We describe our experience using AURUM in three corporate scenarios and do a performance evaluation of each component.
Raul Castro Fernandez, Ziawasch Abedjan, Famien Koko, Gina Yuan, Samuel Madden 0001, Michael Stonebraker
ICDE6
2018 Seeping Semantics: Linking Datasets Using Word Embeddings for Data Discovery
abstract
Employees that spend more time finding relevant data than analyzing it suffer from a data discovery problem. The large volume of data in enterprises, and sometimes the lack of knowledge of the schemas aggravates this problem. Similar to how we navigate the Web, we propose to identify semantic links that assist analysts in their discovery tasks. These links relate tables to each other, to facilitate navigating the schemas. They also relate data to external data sources, such as ontologies and dictionaries, to help explain the schema meaning. We materialize the links in an enterprise knowledge graph, where they become available to analysts. The main challenge is how to find pairs of objects that are semantically related. We propose SEMPROP, a DAG of different components that find links based on syntactic and semantic similarities. SEMPROP is commanded by a semantic matcher which leverages word embeddings to find objects that are semantically related. We introduce coherent group, a technique to combine word embeddings that works better than other state of the art combination alternatives. We implement SEMPROP as part of Aurum, a data discovery system we are building, and conduct user studies, real deployments and a quantitative evaluation to understand the benefits of links for data discovery tasks, as well as the benefits of SEMPROP and coherent groups to find those links.
Raul Castro Fernandez, Essam Mansour 0001, Abdulhakim Ali Qahtan, Ahmed K. Elmagarmid, Ihab F. Ilyas, Samuel Madden 0001, Mourad Ouzzani, Michael Stonebraker, Nan Tang 0001
ICDE8
2018 Building Data Civilizer Pipelines with an Advanced Workflow Engine
abstract
In order for an enterprise to gain insight into its internal business and the changing outside environment, it is essential to provide the relevant data for in-depth analysis. Enterprise data is usually scattered across departments and geographic regions and is often inconsistent. Data scientists spend the majority of their time finding, preparing, integrating, and cleaning relevant data sets. Data Civilizer is an end-to-end data preparation system. In this paper, we present the complete system, focusing on our new workflow engine, a superior system for entity matching and consolidation, and new cleaning tools. Our workflow engine allows data scientists to author, execute and retrofit data preparation pipelines of different data discovery and cleaning services. Our end-to-end demo scenario is based on data from the MIT data warehouse and e-commerce data sets.
Essam Mansour 0001, Dong Deng 0001, Raul Castro Fernandez, Abdulhakim Ali Qahtan, Wenbo Tao, Ziawasch Abedjan, Ahmed K. Elmagarmid, Ihab F. Ilyas, Samuel Madden 0001, Mourad Ouzzani, Michael Stonebraker, Nan Tang 0001
ICDE11
2018 My Top Ten Fears about the DBMS Field
abstract
In this paper, I present my top ten fears about the future of the DBMS field, with apologies to David Letterman. There are three ”big fears”, which I discuss first. Five additional fears are a result of the ”big three”. I then conclude with ”the big enchilada”, which is a pair of fears. In each case, I indicate what I think is the best way to deal with the current situation.
Michael Stonebraker
ICDE1
2018 P-Store: An Elastic Database System with Predictive Provisioning
abstract
OLTP database systems are a critical part of the operation of many enterprises. Such systems are often configured statically with sufficient capacity for peak load. For many OLTP applications, however, the maximum load is an order of magnitude larger than the minimum, and load varies in a repeating daily pattern. It is thus prudent to allocate computing resources dynamically to match demand. One can allocate resources reactively after a load increase is detected, but this places additional burden on the already-overloaded system to reconfigure. A predictive allocation, in advance of load increases, is clearly preferable.
Rebecca Taft, Nosayba El-Sayed, Marco Serafini, Ashraf Aboulnaga, Michael Stonebraker, Ricardo Mayerhofer, Francisco Jose Andrade
SIGMOD Conference6
2017 The Data Civilizer System
Dong Deng 0001, Raul Castro Fernandez, Ziawasch Abedjan, Sibo Wang 0001, Michael Stonebraker, Ahmed K. Elmagarmid, Ihab F. Ilyas, Samuel Madden 0001, Mourad Ouzzani, Nan Tang 0001
CIDR5
2017 A Demo of the Data Civilizer System
abstract
Finding relevant data for a specific task from the numerous data sources available in any organization is a daunting task. This is not only because of the number of possible data sources where the data of interest resides, but also due to the data being scattered all over the enterprise and being typically dirty and inconsistent. In practice, data scientists are routinely reporting that the majority (more than 80%) of their effort is spent finding, cleaning, integrating, and accessing data of interest to a task at hand. We propose to demonstrate DATA CIVILIZER to ease the pain faced in analyzing data "in the wild". DATA CIVILIZER is an end-to-end big data management system with components for data discovery, data integration and stitching, data cleaning, and querying data from a large variety of storage engines, running in large enterprises.
Raul Castro Fernandez, Dong Deng 0001, Essam Mansour 0001, Abdulhakim Ali Qahtan, Wenbo Tao, Ziawasch Abedjan, Ahmed K. Elmagarmid, Ihab F. Ilyas, Samuel Madden 0001, Mourad Ouzzani, Michael Stonebraker, Nan Tang 0001
SIGMOD Conference11
2017 SilkMoth: An Efficient Method for Finding Related Sets with Maximum Matching Constraints
abstract
Determining if two sets are related - that is, if they have similar values or if one set contains the other -- is an important problem with many applications in data cleaning, data integration, and information retrieval. For example, set relatedness can be a useful tool to discover whether columns from two different databases are joinable; if enough of the values in the columns match, it may make sense to join them. A common metric is to measure the relatedness of two sets by treating the elements as vertices of a bipartite graph and calculating the score of the maximum matching pairing between elements. Compared to other metrics which require exact matchings between elements, this metric uses a similarity function to compare elements between the two sets, making it robust to small dissimilarities in elements and more useful for real-world, dirty data. Unfortunately, the metric suffers from expensive computational cost, taking O ( n 3 ) time, where n is the number of elements in the sets, for each set-to-set comparison. Thus for applications that try to search for all pairings of related sets in a brute-force manner, the runtime becomes unacceptably large. To address this challenge, we developed S ilk M oth , a system capable of rapidly discovering related set pairs in collections of sets. Internally, S ilk M oth creates a signature for each set, with the property that any other set which is related must match the signature. S ilk M oth then uses these signatures to prune the search space, so only sets that match the signatures are left as candidates. Finally, S ilk M oth applies the maximum matching metric on remaining candidates to verify which of these candidates are truly related sets. An important property of S ilk M oth is that it is guaranteed to output exactly the same related set pairings as the brute-force method, unlike approximate techniques. Thus, a contribution of this paper is the characterization of the space of signatures which enable this property. We show that selecting the optimal signature in this space is NP-complete, and based on insights from the characterization of the space, we propose two novel filters which help to prune the candidates further before verification. In addition, we introduce a simple optimization to the calculation of the maximum matching metric itself based on the triangle inequality. Compared to related approaches, S ilk M oth is much more general, handling a larger space of similarity functions and relatedness metrics, and is an order of magnitude more efficient on real datasets.
Dong Deng 0001, Albert Kim, Samuel Madden 0001, Michael Stonebraker
Proc. VLDB Endow.4
2017 An Evaluation of Distributed Concurrency Control
abstract
Increasing transaction volumes have led to a resurgence of interest in distributed transaction processing. In particular, partitioning data across several servers can improve throughput by allowing servers to process transactions in parallel. But executing transactions across servers limits the scalability and performance of these systems. In this paper, we quantify the effects of distribution on concurrency control protocols in a distributed environment. We evaluate six classic and modern protocols in an in-memory distributed database evaluation framework called Deneva, providing an apples-to-apples comparison between each. Our results expose severe limitations of distributed transaction processing engines. Moreover, in our analysis, we identify several protocol-specific scalability bottlenecks. We conclude that to achieve truly scalable operation, distributed concurrency control solutions must seek a tighter coupling with either novel network hardware (in the local area) or applications (via data modeling and semantically-aware execution), or both.
Rachael Harding, Dana Van Aken, Andrew Pavlo, Michael Stonebraker
Proc. VLDB Endow.4
2017 Exploring big volume sensor data with Vroom
abstract
State of the art sensors within a single autonomous vehicle (AV) can produce video and LIDAR data at rates greater than 30 GB/hour. Unsurprisingly, even small AV research teams can accumulate tens of terabytes of sensor data from multiple trips and multiple vehicles. AV practitioners would like to extract information about specific locations or specific situations for further study, but are often unable to. Queries over AV sensor data are different from generic analytics or spatial queries because they demand reasoning about fields of view as well as heavy computation to extract features from scenes. In this article and demo we present Vroom, a system for ad-hoc queries over AV sensor databases. Vroom combines domain specific properties of AV datasets with selective indexing and multi-query optimization to address challenges posed by AV sensor data.
Oscar R. Moll Thomae, Aaron Zalewski, Sudeep Pillai, Samuel Madden 0001, Michael Stonebraker, Vijay Gadepally
Proc. VLDB Endow.5
2017 Approximate String Joins with Abbreviations
abstract
String joins have wide applications in data integration and cleaning. The inconsistency of data caused by data errors, term variations and missing values has led to the need for approximate string joins (ASJ). In this paper, we study ASJ with abbreviations, which are a frequent type of term variation. Although prior works have studied ASJ given a user-inputted dictionary of synonym rules, they have three common limitations. First, they suffer from low precision in the presence of abbreviations having multiple full forms. Second, their join algorithms are not scalable due to the exponential time complexity. Third, the dictionary may not exist since abbreviations are highly domain-dependent. We propose an end-to-end workflow to address these limitations. There are three main components in the workflow: (1) a new similarity measure taking abbreviations into account that can handle abbreviations having multiple full forms, (2) an efficient join algorithm following the filter-verification framework and (3) an unsupervised approach to learn a dictionary of abbreviation rules from input strings. We evaluate our workflow on four real-world datasets and show that our workflow outputs accurate join results, scales well as input size grows and greatly outperforms state-of-the-art approaches in both accuracy and efficiency.
Wenbo Tao, Dong Deng 0001, Michael Stonebraker
Proc. VLDB Endow.3
2016 Database decay and how to avoid it
abstract
The traditional wisdom for designing database schemas is to use a design tool (typically based on a UML or E-R model) to construct an initial data model for one's data. When one is satisfied with the result, the tool will automatically construct a collection of 3rd normal form relations for the model. Then applications are coded against this relational schema. When business circumstances change (as they do frequently) one should run the tool again to produce a new data model and a new resulting collection of tables. The new schema is populated from the old schema, and the applications are altered to work on the new schema, using relational views whenever possible to ease the migration. In this way, the database remains in 3rd normal form, which represents a “good” schema, as defined by DBMS researchers. “In the wild”, schemas often change once a quarter or more often, and the traditional wisdom is to repeat the above exercise for each alteration. In this paper we report that the traditional wisdom appears to be rarely-to-never followed for large, multi-department applications. Instead DBAs appear to attempt to minimize application maintenance (and hence schema changes) instead of maximizing schema quality. This leads to schemas which quickly diverge from E-R or UML models and actual database semantics tend to drift farther and farther from 3rd normal form. We term this divergence of reality from 3rd normal form principles database decay. Obviously, this is a very undesirable state of affairs, and should be avoided if possible. The paper continues with tactics to slow down database decay. We argue that the traditional development methodology, that of coding applications in ODBC or JDBC, is at least partly to blame for decay. Hence, we propose an alternate methodology that should be more resilient to decay.
Michael Stonebraker, Dong Deng 0001, Michael L. Brodie
IEEE BigData1
2016 DataXFormer: A robust transformation discovery system
abstract
In data integration, data curation, and other data analysis tasks, users spend a considerable amount of time converting data from one representation to another. For example US dates to European dates or airport codes to city names. In a previous vision paper, we presented the initial design of DataXFormer, a system that uses web resources to assist in transformation discovery. Specifically, DataXFormer discovers possible transformations from web tables and web forms and involves human feedback where appropriate. In this paper, we present the full fledged system along with several extensions. In particular, we present algorithms to find (i) transformations that entail multiple columns of input data, (ii) indirect transformations that are compositions of other transformations, (iii) transformations that are not functions but rather relationships, and (iv) transformations from a knowledge base of public data. We report on experiments with a collection of 120 transformation tasks, and show our enhanced system automatically covers 101 of them by using openly available resources.
Ziawasch Abedjan, John Morcos, Ihab F. Ilyas, Mourad Ouzzani, Paolo Papotti, Michael Stonebraker
ICDE6
2016 Dynamic Prefetching of Data Tiles for Interactive Visualization
abstract
In this paper, we present ForeCache, a general-purpose tool for exploratory browsing of large datasets. ForeCache utilizes a client-server architecture, where the user interacts with a lightweight client-side interface to browse datasets, and the data to be browsed is retrieved from a DBMS running on a back-end server. We assume a detail-on-demand browsing paradigm, and optimize the back-end support for this paradigm by inserting a separate middleware layer in front of the DBMS. To improve response times, the middleware layer fetches data ahead of the user as she explores a dataset.
Leilani Battle, Remco Chang, Michael Stonebraker
SIGMOD Conference3
2016 Detecting Data Errors: Where are we and what needs to be done?
abstract
Data cleaning has played a critical role in ensuring data quality for enterprise applications. Naturally, there has been extensive research in this area, and many data cleaning algorithms have been translated into tools to detect and to possibly repair certain classes of errors such as outliers, duplicates, missing values, and violations of integrity constraints. Since different types of errors may coexist in the same data set, we often need to run more than one kind of tool. In this paper, we investigate two pragmatic questions: (1) are these tools robust enough to capture most errors in real-world data sets ? and (2) what is the best strategy to holistically run multiple tools to optimize the detection effort? To answer these two questions, we obtained multiple data cleaning tools that utilize a variety of error detection techniques. We also collected five real-world data sets, for which we could obtain both the raw data and the ground truth on existing errors. In this paper, we report our experimental findings on the errors detected by the tools we tested. First, we show that the coverage of each tool is well below 100%. Second, we show that the order in which multiple tools are run makes a big difference. Hence, we propose a holistic multi-tool strategy that orders the invocations of the available tools to maximize their benefit, while minimizing human effort in verifying results. Third, since this holistic approach still does not lead to acceptable error coverage, we discuss two simple strategies that have the potential to improve the situation, namely domain specific tools and data enrichment. We close this paper by reasoning about the errors that are not detectable by any of the tools we tested.
Ziawasch Abedjan, Dong Deng 0001, Raul Castro Fernandez, Ihab F. Ilyas, Mourad Ouzzani, Paolo Papotti, Michael Stonebraker, Nan Tang 0001
Proc. VLDB Endow.8
2016 Clay: Fine-Grained Adaptive Partitioning for General Database Schemas
abstract
Transaction processing database management systems (DBMSs) are critical for today's data-intensive applications because they enable an organization to quickly ingest and query new information. Many of these applications exceed the capabilities of a single server, and thus their database has to be deployed in a distributed DBMS. The key factor affecting such a system's performance is how the database is partitioned. If the database is partitioned incorrectly, the number of distributed transactions can be high. These transactions have to synchronize their operations over the network, which is considerably slower and leads to poor performance. Previous work on elastic database repartitioning has focused on a certain class of applications whose database schema can be represented in a hierarchical tree structure. But many applications cannot be partitioned in this manner, and thus are subject to distributed transactions that impede their performance and scalability. In this paper, we present a new on-line partitioning approach, called Clay, that supports both tree-based schemas and more complex "general" schemas with arbitrary foreign key relationships. Clay dynamically creates blocks of tuples to migrate among servers during repartitioning, placing no constraints on the schema but taking care to balance load and reduce the amount of data migrated. Clay achieves this goal by including in each block a set of hot tuples and other tuples co-accessed with these hot tuples. To evaluate our approach, we integrate Clay in a distributed, main-memory DBMS and show that it can generate partitioning schemes that enable the system to achieve up to 15× better throughput and 99% lower latency than existing approaches.
Marco Serafini, Rebecca Taft, Aaron J. Elmore, Andrew Pavlo, Ashraf Aboulnaga, Michael Stonebraker
Proc. VLDB Endow.6
2015 Dataxformer: Leveraging the Web for Semantic Transformations
Ziawasch Abedjan, John Morcos, Michael N. Gubanov, Ihab F. Ilyas, Michael Stonebraker, Paolo Papotti, Mourad Ouzzani
CIDR5
2015 By their fruits shall ye know them: A Data Analyst's Perspective on Massively Parallel System Design
abstract
Increasingly parallel systems promise a remedy for the current stagnation of single-core performance. However, the battle to find the most appropriate architecture for the resulting massively parallel systems is still ongoing. Currently, there are two active contenders: Massively Parallel Single Instruction Multiple Threads (SIMT) systems such as GPGPUs and Many Core Single Instruction Multiple Data (SIMD) systems such as Intel's Xeon Phi. While the former is more versatile, the latter is an efficient, time-tested technology with a clear migration path. In this study, we provide a data management perspective to the debate: we study the implementation and performance of a set of common data management operations on an SIMT device (an Nvidia GTX 780) and compare it to a Many Core SIMD system (an Intel Xeon Phi). We interpret the results to pinpoint architectural decisions and tradeoffs that lead to suboptimal performance and point out potential areas for improvement in the next generation of these devices.
Holger Pirk, Samuel Madden 0001, Michael Stonebraker
DaMoN3
2015 Skew-Aware Join Optimization for Array Databases
abstract
Science applications are accumulating an ever-increasing amount of multidimensional data. Although some of it can be processed in a relational database, much of it is better suited to array-based engines. As such, it is important to optimize the query processing of these systems. This paper focuses on efficient query processing of join operations within an array database. These engines invariably ``chunk'' their data into multidimensional tiles that they use to efficiently process spatial queries. As such, traditional relational algorithms need to be substantially modified to take advantage of array tiles. Moreover, most n-dimensional science data is unevenly distributed in array space because its underlying observations rarely follow a uniform pattern. It is crucial that the optimization of array joins be skew-aware. In addition, owing to the scale of science applications, their query processing usually spans multiple nodes. This further complicates the planning of array joins.
Jennie Rogers, Olga Papaemmanouil, Leilani Battle, Michael Stonebraker
SIGMOD Conference4
2015 DataXFormer: An Interactive Data Transformation Tool
abstract
While syntactic transformations require the application of a formula on the input values, such as unit conversion or date format conversions, semantic transformations, such as "zip code to city", require a look-up in some reference data. We recently presented DataXFormer, a system that leverages Web tables, Web forms, and expert sourcing to cover a wide range of transformations. In this demonstration, we present the user-interaction with DataXFormer and show scenarios on how it can be used to transform data and explore the effectiveness and efficiency of several approaches for transformation discovery, leveraging about 112 million tables and online sources.
John Morcos, Ziawasch Abedjan, Ihab F. Ilyas, Mourad Ouzzani, Paolo Papotti, Michael Stonebraker
SIGMOD Conference6
2015 Temporal Rules Discovery for Web Data Cleaning
abstract
Declarative rules, such as functional dependencies, are widely used for cleaning data. Several systems take them as input for detecting errors and computing a "clean" version of the data. To support domain experts, in specifying these rules, several tools have been proposed to profile the data and mine rules. However, existing discovery techniques have traditionally ignored the time dimension. Recurrent events, such as persons reported in locations, have a duration in which they are valid, and this duration should be part of the rules or the cleaning process would simply fail. In this work, we study the rule discovery problem for temporal web data. Such a discovery process is challenging because of the nature of web data; extracted facts are (i) sparse over time, (ii) reported with delays, and (iii) often reported with errors over the values because of inaccurate sources or non robust extractors. We handle these challenges with a new discovery approach that is more robust to noise. Our solution uses machine learning methods, such as association measures and outlier detection, for the discovery of the rules, together with an aggressive repair of the data in the mining step itself. Our experimental evaluation over real-world data from Recorded Future, an intelligence company that monitors over 700K Web sources, shows that temporal rules improve the quality of the data with an increase of the average precision in the cleaning process from 0.37 to 0.84, and a 40% relative increase in the average F-measure.
Ziawasch Abedjan, Cuneyt Gurcan Akcora, Mourad Ouzzani, Paolo Papotti, Michael Stonebraker
Proc. VLDB Endow.5
2015 A Demonstration of the BigDAWG Polystore System
abstract
This paper presents BigDAWG, a reference implementation of a new architecture for "Big Data" applications. Such applications not only call for large-scale analytics, but also for real-time streaming support, smaller analytics at interactive speeds, data visualization, and cross-storage-system queries. Guided by the principle that "one size does not fit all", we build on top of a variety of storage engines, each designed for a specialized use case. To illustrate the promise of this approach, we demonstrate its effectiveness on a hospital application using data from an intensive care unit (ICU). This complex application serves the needs of doctors and researchers and provides real-time support for streams of patient data. It showcases novel approaches for querying across multiple storage engines, data visualization, and scalable real-time analytics.
Aaron J. Elmore, Jennie Rogers, Michael Stonebraker, Magdalena Balazinska, Ugur Çetintemel, Vijay Gadepally, Jeffrey Heer, Bill Howe, Jeremy Kepner, Tim Kraska, Samuel Madden 0001, David Maier 0001, Timothy G. Mattson, Stavros Papadopoulos 0001, Jeff Parkhurst, Nesime Tatbul, Manasi Vartak, Stanley B. Zdonik
Proc. VLDB Endow.3
2015 S-Store: Streaming Meets Transaction Processing
abstract
Stream processing addresses the needs of real-time applications. Transaction processing addresses the coordination and safety of short atomic computations. Heretofore, these two modes of operation existed in separate, stove-piped systems. In this work, we attempt to fuse the two computational paradigms in a single system called S-Store. In this way, S-Store can simultaneously accommodate OLTP and streaming applications. We present a simple transaction model for streams that integrates seamlessly with a traditional OLTP system, and provides both ACID and stream-oriented guarantees. We chose to build S-Store as an extension of H-Store - an open-source, in-memory, distributed OLTP database system. By implementing S-Store in this way, we can make use of the transaction processing facilities that H-Store already provides, and we can concentrate on the additional features that are needed to support streaming. Similar implementations could be done using other main-memory OLTP platforms. We show that we can actually achieve higher throughput for streaming workloads in S-Store than an equivalent deployment in H-Store alone. We also show how this can be achieved within H-Store with the addition of a modest amount of new functionality. Furthermore, we compare S-Store to two state-of-the-art streaming systems, Esper and Apache Storm, and show how S-Store can sometimes exceed their performance while at the same time providing stronger correctness guarantees.
John Meehan, Nesime Tatbul, Stanley B. Zdonik, Cansu Aslantas, Ugur Çetintemel, Jiang Du 0001, Tim Kraska, Samuel Madden 0001, David Maier 0001, Andrew Pavlo, Michael Stonebraker, Kristin Tufte
Proc. VLDB Endow.11
2014 Large-scale Semantic Profile Extraction
abstract
Web-search engines usually can be outperformed by spe-cialized systems optimized for a specific domain or type of data. Halevy et al in [1] demonstrate a use case for a spe-cialized spatial search of Google Fusion Tables, whereby the
Michael N. Gubanov, Michael Stonebraker
EDBT2
2014 Text and structured data fusion in data tamer at scale
abstract
Large-scale text data research has recently started to regain momentum [1]-[10], because of the wealth of up to date information communicated in unstructured format. For example, new information in online media (e.g. Web blogs, Twitter, Facebook, news feeds, etc) becomes instantly available and is refreshed regularly, has very broad coverage and other valuable properties unusual for other data sources and formats. Therefore, many enterprises and individuals are interested in integrating and using unstructured text in addition to their structured data.
Michael N. Gubanov, Michael Stonebraker, Daniel Bruckner
ICDE2
2014 Rethinking main memory OLTP recovery
abstract
Fine-grained, record-oriented write-ahead logging, as exemplified by systems like ARIES, has been the gold standard for relational database recovery. In this paper, we show that in modern high-throughput transaction processing systems, this is no longer the optimal way to recover a database system. In particular, as transaction throughputs get higher, ARIES-style logging starts to represent a non-trivial fraction of the overall transaction execution time. We propose a lighter weight, coarse-grained command logging technique which only records the transactions that were executed on the database. It then does recovery by starting from a transactionally consistent checkpoint and replaying the commands in the log as if they were new transactions. By avoiding the overhead of fine-grained logging of before and after images (both CPU complexity as well as substantial associated 110), command logging can yield significantly higher throughput at run-time. Recovery times for command logging are higher compared to an ARIEs-style physiological logging approach, but with the advent of high-availability techniques that can mask the outage of a recovering node, recovery speeds have become secondary in importance to run-time performance for most applications. We evaluated our approach on an implementation of TPCC in a main memory database system (VoltDB), and found that command logging can offer 1.5 x higher throughput than a main-memory optimized implementation of ARIEs-style physiological logging.
Nirmesh Malviya, Ariel Weisberg, Samuel Madden 0001, Michael Stonebraker
ICDE4
2014 Incremental elasticity for array databases
abstract
Relational databases benefit significantly from elasticity, whereby they execute on a set of changing hardware resources provisioned to match their storage and processing requirements. Such flexibility is especially attractive for scientific databases because their users often have a no-overwrite storage model, in which they delete data only when their available space is exhausted. This results in a database that is regularly growing and expanding its hardware proportionally. Also, scientific databases frequently store their data as multidimensional arrays optimized for spatial querying. This brings about several novel challenges in clustered, skew-aware data placement on an elastic shared-nothing database. In this work, we design and implement elasticity for an array database. We address this challenge on two fronts: determining when to expand a database cluster and how to partition the data within it. In both steps we propose incremental approaches, affecting a minimum set of data and nodes, while maintaining high performance. We introduce an algorithm for gradually augmenting an array database's hardware using a closed-loop control system. After the cluster adds nodes, we optimize data placement for n-dimensional arrays. Many of our elastic partitioners incrementally reorganize an array, redistributing data only to new nodes. By combining these two tools, the scientific database efficiently and seamlessly manages its monotonically increasing hardware resources.
Jennie Rogers, Michael Stonebraker
SIGMOD Conference2
2014 GenBase: a complex analytics genomics benchmark
abstract
This paper introduces a new benchmark designed to test database management system (DBMS) performance on a mix of data management tasks (joins, filters, etc.) and complex analytics (regression, singular value decomposition, etc.) Such mixed workloads are prevalent in a number of application areas including most science workloads and web analytics. As a specific use case, we have chosen genomics data for our benchmark and have constructed a collection of typical tasks in this domain. In addition to being representative of a mixed data management and analytics workload, this benchmark is also meant to scale to large dataset sizes and multiple nodes across a cluster. Besides presenting this benchmark, we have run it on a variety of storage systems including traditional row stores, newer column stores, Hadoop, and an array DBMS. We present performance numbers on all systems on single and multiple nodes, and show that performance differs by orders of magnitude between the various solutions. In addition, we demonstrate that most platforms have scalability issues. We also test offloading the analytics onto a coprocessor. The intent of this benchmark is to focus research interest in this area; to this end, all of our data, data generators, and scripts are available on our web site.
Rebecca Taft, Manasi Vartak, Nadathur Satish, Narayanan Sundaram, Samuel Madden 0001, Michael Stonebraker
SIGMOD Conference6
2014 S-Store: A Streaming NewSQL System for Big Velocity Applications
abstract
First-generation streaming systems did not pay much attention to state management via ACID transactions (e.g., [3, 4]). S-Store is a data management system that combines OLTP transactions with stream processing. To create S-Store, we begin with H-Store, a main-memory transaction processing engine, and add primitives to support streaming. This includes triggers and transaction workflows to implement push-based processing, windows to provide a way to bound the computation, and tables with hidden state to implement scoping for proper isolation. This demo explores the benefits of this approach by showing how a naïve implementation of our benchmarks using only H-Store can yield incorrect results. We also show that by exploiting push-based semantics and our implementation of triggers, we can achieve significant improvement in transaction throughput. We demo two modern applications: (i) leaderboard maintenance for a version of "American Idol", and (ii) a city-scale bicycle rental scenario.
Ugur Çetintemel, Jiang Du 0001, Tim Kraska, Samuel Madden 0001, David Maier 0001, John Meehan, Andrew Pavlo, Michael Stonebraker, Erik Sutherland, Nesime Tatbul, Kristin Tufte, Stanley B. Zdonik
Proc. VLDB Endow.8
2014 VERTEXICA: Your Relational Friend for Graph Analytics!
abstract
In this paper, we present Vertexica, a graph analytics tools on top of a relational database, which is user friendly and yet highly efficient. Instead of constraining programmers to SQL, Vertexica offers a popular vertex-centric query interface, which is more natural for analysts to express many graph queries. The programmers simply provide their vertex-compute functions and Vertexica takes care of efficiently executing them in the standard SQL engine. The advantage of using Vertexica is its ability to leverage the relational features and enable much more sophisticated graph analysis. These include expressing graph algorithms which are difficult in vertex-centric but straightforward in SQL and the ability to compose end-to-end data processing pipelines, including pre- and post- processing of graphs as well as combining multiple algorithms for deeper insights. Vertexica has a graphical user interface and we outline several demonstration scenarios including, interactive graph analysis, complex graph analysis, and continuous and time series analysis.
Alekh Jindal, Praynaa Rawlani, Eugene Wu 0002, Samuel Madden 0001, Amol Deshpande, Michael Stonebraker
Proc. VLDB Endow.6
2014 E-Store: Fine-Grained Elastic Partitioning for Distributed Transaction Processing
abstract
On-line transaction processing (OLTP) database management systems (DBMSs) often serve time-varying workloads due to daily, weekly or seasonal fluctuations in demand, or because of rapid growth in demand due to a company's business success. In addition, many OLTP workloads are heavily skewed to "hot" tuples or ranges of tuples. For example, the majority of NYSE volume involves only 40 stocks. To deal with such fluctuations, an OLTP DBMS needs to be elastic; that is, it must be able to expand and contract resources in response to load fluctuations and dynamically balance load as hot tuples vary over time. This paper presents E-Store, an elastic partitioning framework for distributed OLTP DBMSs. It automatically scales resources in response to demand spikes, periodic events, and gradual changes in an application's workload. E-Store addresses localized bottlenecks through a two-tier data placement strategy: cold data is distributed in large chunks, while smaller ranges of hot tuples are assigned explicitly to individual nodes. This is in contrast to traditional single-tier hash and range partitioning strategies. Our experimental evaluation of E-Store shows the viability of our approach and its efficacy under variations in load across a cluster of machines. Compared to single-tier approaches, E-Store improves throughput by up to 130% while reducing latency by 80%.
Rebecca Taft, Essam Mansour 0001, Marco Serafini, Jennie Rogers, Aaron J. Elmore, Ashraf Aboulnaga, Andrew Pavlo, Michael Stonebraker
Proc. VLDB Endow.8
2014 Staring into the Abyss: An Evaluation of Concurrency Control with One Thousand Cores
abstract
Computer architectures are moving towards an era dominated by many-core machines with dozens or even hundreds of cores on a single chip. This unprecedented level of on-chip parallelism introduces a new dimension to scalability that current database management systems (DBMSs) were not designed for. In particular, as the number of cores increases, the problem of concurrency control becomes extremely challenging. With hundreds of threads running in parallel, the complexity of coordinating competing accesses to data will likely diminish the gains from increased core counts. To better understand just how unprepared current DBMSs are for future CPU architectures, we performed an evaluation of concurrency control for on-line transaction processing (OLTP) workloads on many-core chips. We implemented seven concurrency control algorithms on a main-memory DBMS and using computer simulations scaled our system to 1024 cores. Our analysis shows that all algorithms fail to scale to this magnitude but for different reasons. In each case, we identify fundamental bottlenecks that are independent of the particular database implementation and argue that even state-of-the-art DBMSs suffer from these limitations. We conclude that rather than pursuing incremental solutions, many-core chips may require a completely redesigned DBMS architecture that is built from ground up and is tightly coupled with the hardware.
Xiangyao Yu, George Bezerra, Andrew Pavlo, Srini Devadas, Michael Stonebraker
Proc. VLDB Endow.5
2013 Dynamic reduction of query result sets for interactive visualizaton
abstract
Modern database management systems (DBMS) have been designed to efficiently store, manage and perform computations on massive amounts of data. In contrast, many existing visualization systems do not scale seamlessly from small data sets to enormous ones. We have designed a three-tiered visualization system called ScalaR to deal with this issue. ScalaR dynamically performs resolution reduction when the expected result of a DBMS query is too large to be effectively rendered on existing screen real estate. Instead of running the original query, ScalaR inserts aggregation, sampling or filtering operations to reduce the size of the result. This paper presents the design and implementation of ScalaR, and shows results for an example application, displaying satellite imagery data stored in SciDB as the back-end DBMS.
Leilani Battle, Michael Stonebraker, Remco Chang
IEEE BigData2
2013 We are Under Attack; by the least publishable unit
Michael Stonebraker
CIDR1
2013 Data Curation at Scale: The Data Tamer System
Michael Stonebraker, Daniel Bruckner, Ihab F. Ilyas, George Beskales, Mitch Cherniack, Stanley B. Zdonik, Alexander Pagan
CIDR1
2013 SubZero: A fine-grained lineage system for scientific databases
abstract
Data lineage is a key component of provenance that helps scientists track and query relationships between input and output data. While current systems readily support lineage relationships at the file or data array level, finer-grained support at an array-cell level is impractical due to the lack of support for user defined operators and the high runtime and storage overhead to store such lineage. We interviewed scientists in several domains to identify a set of common semantics that can be leveraged to efficiently store fine-grained lineage. We use the insights to define lineage representations that efficiently capture common locality properties in the lineage data, and a set of APIs so operator developers can easily export lineage information from user defined operators. Finally, we introduce two benchmarks derived from astronomy and genomics, and show that our techniques can reduce lineage query costs by up to 10× while incuring substantially less impact on workflow runtime and storage.
Eugene Wu 0002, Samuel Madden 0001, Michael Stonebraker
ICDE3
2013 We are drowning in a sea of least publishable units (LPUs)
abstract
Our field is drowning in a sea of conference submissions. We assert that the sheer number of papers has begun to seriously hurt the quality of the work that the field is doing and that the field is going to implode unless we take action to remedy the situation. In order to improve the quality of the papers being published we must reduce the number being submitted. This will require a change in the culture of our field where "more" is being equated to "better" by both hiring and promotion committees. In this panel we will explore some ideas for correcting the situation.
David J. DeWitt, Ihab F. Ilyas, Jeffrey F. Naughton, Michael Stonebraker
SIGMOD Conference4
2013 Anti-Caching: A New Approach to Database Management System Architecture
abstract
The traditional wisdom for building disk-based relational database management systems (DBMS) is to organize data in heavily-encoded blocks stored on disk, with a main memory block cache. In order to improve performance given high disk latency, these systems use a multi-threaded architecture with dynamic record-level locking that allows multiple transactions to access the database at the same time. Previous research has shown that this results in substantial overhead for on-line transaction processing (OLTP) applications [15]. The next generation DBMSs seek to overcome these limitations with architecture based on main memory resident data. To overcome the restriction that all data fit in main memory, we propose a new technique, called anti-caching, where cold data is moved to disk in a transactionally-safe manner as the database grows in size. Because data initially resides in memory, an anti-caching architecture reverses the traditional storage hierarchy of disk-based systems. Main memory is now the primary storage device. We implemented a prototype of our anti-caching proposal in a high-performance, main memory OLTP DBMS and performed a series of experiments across a range of database sizes, workload skews, and read/write mixes. We compared its performance with an open-source, disk-based DBMS optionally fronted by a distributed main memory cache. Our results show that for higher skewed workloads the anti-caching architecture has a performance advantage over either of the other architectures tested of up to 9× for a data size 8× larger than memory.
Justin A. DeBrabant, Andrew Pavlo, Stephen Tu, Michael Stonebraker, Stanley B. Zdonik
Proc. VLDB Endow.4
2012 Efficient Versioning for Scientific Array Databases
abstract
In this paper, we describe a versioned database storage manager we are developing for the SciDB scientific database. The system is designed to efficiently store and retrieve array-oriented data, exposing a "no-overwrite" storage model in which each update creates a new "version" of an array. This makes it possible to perform comparisons of versions produced at different times or by different algorithms, and to create complex chains and trees of versions. We present algorithms to efficiently encode these versions, minimizing storage space while still providing efficient access to the data. Additionally, we present an optimal algorithm that, given a long sequence of versions, determines which versions to encode in terms of each other (using delta compression) to minimize total storage space or query execution cost. We compare the performance of these algorithms on real world data sets from the National Oceanic and Atmospheric Administration (NOAA), Open Street Maps, and several other sources. We show that our algorithms provide better performance than existing version control systems not optimized for array data, both in terms of storage size and access time, and that our delta-compression algorithms are able to substantially reduce the total storage space when versions exist with a high degree of similarity.
Adam Seering, Philippe Cudré-Mauroux, Samuel Madden 0001, Michael Stonebraker
ICDE4
2012 The Future of Scientific Data Bases
abstract
For many decades, users in scientific fields (domain scientists) have resorted to either home-grown tools or legacy software for the management of their data. Technological advancements nowadays necessitate many of the properties such as data independence, scalability, and functionality found in the roadmap of DBMS technology, DBMS products, however, are not yet ready to address scientific application and user needs. Recent efforts toward building a science DBMS indicate that there is a long way ahead of us, paved by a research agenda that is rich in interesting and challenging problems.
Michael Stonebraker, Anastasia Ailamaki, Jeremy Kepner, Alex Szalay
ICDE1
2012 A Demonstration of DBWipes: Clean as You Query
abstract
As data analytics becomes mainstream, and the complexity of the underlying data and computation grows, it will be increasingly important to provide tools that help analysts understand the underlying reasons when they encounter errors in the result. While data provenance has been a large step in providing tools to help debug complex workflows, its current form has limited utility when debugging aggregation operators that compute a single output from a large collection of inputs. Traditional provenance will return the entire input collection, which has very low precision. In contrast, users are seeking precise descriptions of the inputs that caused the errors. We propose a Ranked Provenance System , which identifies subsets of inputs that influenced the output error, describes each subset with human readable predicates and orders them by contribution to the error. In this demonstration, we will present DBWipes, a novel data cleaning system that allows users to execute aggregate queries, and interactively detect, understand, and clean errors in the query results. Conference attendees will explore anomalies in campaign donations from the current US presidential election and in readings from a 54-node sensor deployment.
Eugene Wu 0002, Samuel Madden 0001, Michael Stonebraker
Proc. VLDB Endow.3
2011 The Architecture of SciDB
Michael Stonebraker, Paul Brown, Alex Poliakov, Suchi Raman
SSDBM1
2009 Requirements for Science Data Bases and SciDB
Michael Stonebraker, Jacek Becla, David J. DeWitt, Kian-Tat Lim, David Maier 0001, Oliver Ratzesberger, Stanley B. Zdonik
CIDR1
2009 A comparison of approaches to large-scale data analysis
abstract
There is currently considerable enthusiasm around the MapReduce (MR) paradigm for large-scale data analysis [17]. Although the basic control flow of this framework has existed in parallel SQL database management systems (DBMS) for over 20 years, some have called MR a dramatically new computing model [8, 17]. In this paper, we describe and compare both paradigms. Furthermore, we evaluate both kinds of systems in terms of performance and development complexity. To this end, we define a benchmark consisting of a collection of tasks that we have run on an open source version of MR as well as on two parallel DBMSs. For each task, we measure each system's performance for various degrees of parallelism on a cluster of 100 nodes. Our results reveal some interesting trade-offs. Although the process to load data into and tune the execution of parallel DBMSs took much longer than the MR system, the observed performance of these DBMSs was strikingly better. We speculate about the causes of the dramatic performance difference and consider implementation concepts that future systems should take from both kinds of architectures.
Andrew Pavlo, Erik Paulson 0001, Alexander Rasin, Daniel J. Abadi, David J. DeWitt, Samuel Madden 0001, Michael Stonebraker
SIGMOD Conference7
2009 A Demonstration of SciDB: A Science-Oriented DBMS
abstract
In CIDR 2009, we presented a collection of requirements for SciDB, a DBMS that would meet the needs of scientific users. These included a nested-array data model, science-specific operations such as regrid, and support for uncertainty, lineage, and named versions. In this paper, we present an overview of SciDB's key features and outline a demonstration of the first version of SciDB on data and operations from one of our lighthouse users, the Large Synoptic Survey Telescope (LSST).
Philippe Cudré-Mauroux, Hideaki Kimura 0001, Kian-Tat Lim, Jennie Rogers, Roman Simakov, Emad Soroush, Pavel E. Velikhov, Daniel L. Wang, Magdalena Balazinska, Jacek Becla, David J. DeWitt, Bobbi Heath, David Maier 0001, Samuel Madden 0001, Jignesh M. Patel, Michael Stonebraker, Stanley B. Zdonik
Proc. VLDB Endow.16
2008 OLTP through the looking glass, and what we found there
abstract
Online Transaction Processing (OLTP) databases include a suite of features - disk-resident B-trees and heap files, locking-based concurrency control, support for multi-threading - that were optimized for computer technology of the late 1970's. Advances in modern processors, memories, and networks mean that today's computers are vastly different from those of 30 years ago, such that many OLTP databases will now fit in main memory, and most OLTP transactions can be processed in milliseconds or less. Yet database architecture has changed little.
Stavros Harizopoulos, Daniel J. Abadi, Samuel Madden 0001, Michael Stonebraker
SIGMOD Conference4
2008 H-store: a high-performance, distributed main memory transaction processing system
abstract
Our previous work has shown that architectural and application shifts have resulted in modern OLTP databases increasingly falling short of optimal performance [10]. In particular, the availability of multiple-cores, the abundance of main memory, the lack of user stalls, and the dominant use of stored procedures are factors that portend a clean-slate redesign of RDBMSs. This previous work showed that such a redesign has the potential to outperform legacy OLTP databases by a significant factor. These results, however, were obtained using a bare-bones prototype that was developed just to demonstrate the potential of such a system. We have since set out to design a more complete execution platform, and to implement some of the ideas presented in the original paper. Our demonstration presented here provides insight on the development of a distributed main memory OLTP database and allows for the further study of the challenges inherent in this operating environment.
Robert Kallman, Hideaki Kimura 0001, Jonathan Natkins, Andrew Pavlo, Alexander Rasin, Stanley B. Zdonik, Evan P. C. Jones, Samuel Madden 0001, Michael Stonebraker, John Hugg, Daniel J. Abadi
Proc. VLDB Endow.9
2008 Fault-tolerance in the borealis distributed stream processing system
abstract
Over the past few years, Stream Processing Engines (SPEs) have emerged as a new class of software systems, enabling low latency processing of streams of data arriving at high rates. As SPEs mature and get used in monitoring applications that must continuously run (e.g., in network security monitoring), a significant challenge arises: SPEs must be able to handle various software and hardware faults that occur, masking them to provide high availability (HA). In this article, we develop, implement, and evaluate DPC (Delay, Process, and Correct), a protocol to handle crash failures of processing nodes and network failures in a distributed SPE. Like previous approaches to HA, DPC uses replication and masks many types of node and network failures. In the presence of network partitions, the designer of any replication system faces a choice between providing availability or data consistency across the replicas. In DPC, this choice is made explicit: the user specifies an availability bound (no result should be delayed by more than a specified delay threshold even under failure if the corresponding input is available), and DPC attempts to minimize the resulting inconsistency between replicas (not all of which might have seen the input data) while meeting the given delay threshold. Although conceptually simple, the DPC protocol tolerates the occurrence of multiple simultaneous failures as well as any further failures that occur during recovery. This article describes DPC and its implementation in the Borealis SPE. We show that DPC enables a distributed SPE to maintain low-latency processing at all times, while also achieving eventual consistency, where applications eventually receive the complete and correct output streams. Furthermore, we show that, independent of system size and failure location, it is possible to handle failures almost up-to the user-specified bound in a manner that meets the required availability without introducing any inconsistency.
Magdalena Balazinska, Hari Balakrishnan, Samuel Madden 0001, Michael Stonebraker
ACM Trans. Database Syst.4
2007 One Size Fits All? Part 2: Benchmarking Studies
Michael Stonebraker, Chuck Bear, Ugur Çetintemel, Mitch Cherniack, Tingjian Ge, Nabil Hachem, Stavros Harizopoulos, John Lifter, Jennie Rogers, Stanley B. Zdonik
CIDR1
2007 The End of an Architectural Era (It's Time for a Complete Rewrite)
Michael Stonebraker, Samuel Madden 0001, Daniel J. Abadi, Stavros Harizopoulos, Nabil Hachem, Pat Helland
VLDB1
2006 Data integration through transform reuse in the Morpheus project
abstract
We discuss Morpheus, a data transformation construction tool and associated repository. The architecture of Morpheus is motivated by the goal to reuse (pieces of) previously written transformations to solve data integration problems by finding relevant ones in the repository and then modifying them for repurposing. In addition, Morpheus is integrated with a DBMS so as to leverage existing capabilities including the runtime environment for transforms. We discuss the architecture of Morpheus and illustrate its usage with the help of a simple transform construction scenario.
Tiffany Dohzen, Mujde Pamuk, Seok-Won Seong, Joachim Hammer, Michael Stonebraker
SIGMOD Conference5
2005 THALIA: Test Harness for the Assessment of Legacy Information Integration Approaches
abstract
We introduce our new, publicly available testbed and benchmark called THALIA (Test Harness for the Assessment of Legacy information Integration Approaches) for testing and evaluating integration technologies. THALIA provides researchers with a collection of 40 downloadable data sources representing University course catalogs from computer science departments worldwide. In addition, THALIA currently provides a set of twelve challenge queries as well as a scoring function for ranking the performance of an integration system. A second contribution is a systematic classification of the types of syntactic and semantic heterogeneities, which directly lead to the twelve challenge. We have chosen course information as our domain of discourse because it is well known and easy to understand. Furthermore, there is an abundance of data sources publicly available that allowed us to develop a testbed exhibiting all of the syntactic and semantic heterogeneities that we have identified.
Joachim Hammer, Michael Stonebraker, Oguzhan Topsakal
ICDE2
2005 High-Availability Algorithms for Distributed Stream Processing
abstract
Stream-processing systems are designed to support an emerging class of applications that require sophisticated and timely processing of high-volume data streams, often originating in distributed environments. Unlike traditional data-processing applications that require precise recovery for correctness, many stream-processing applications can tolerate and benefit from weaker recovery guarantees. In this paper, we study various recovery guarantees and pertinent recovery techniques that can meet the correctness and performance requirements of stream-processing applications. We discuss the design and algorithmic challenges associated with the proposed recovery techniques and describe how each can provide different guarantees with proper combinations of redundant processing, checkpointing, and remote logging. Using analysis and simulations, we quantify the cost of our recovery guarantees and examine the performance and applicability of the recovery techniques. We also analyze how the knowledge of query network properties can help decrease the cost of high availability.
Jeong-Hyon Hwang, Magdalena Balazinska, Alexander Rasin, Ugur Çetintemel, Michael Stonebraker, Stanley B. Zdonik
ICDE5
2005 "One Size Fits All": An Idea Whose Time Has Come and Gone (Abstract)
abstract
The last 25 years of commercial DBMS development can be summed up in a single phrase: "one size fits all". This phrase refers to the fact that the traditional DBMS architecture (originally designed and optimized for business data processing) has been used to support many data-centric applications with widely varying characteristics and requirements. In this paper, we argue that this concept is no longer applicable to the database market, and that the commercial world will fracture into a collection of independent database engines, some of which may be unified by a common front-end parser. We use examples from the stream-processing market and the data-warehouse market to bolster our claims. We also briefly discuss other markets for which the traditional architecture is a poor fit and argue for a critical rethinking of the current factoring of systems services into products.
Michael Stonebraker, Ugur Çetintemel
ICDE1
2005 Fault-tolerance in the Borealis distributed stream processing system
abstract
We present a replication-based approach to fault-tolerant distributed stream processing in the face of node failures, network failures, and network partitions. Our approach aims to reduce the degree of inconsistency in the system while guaranteeing that available inputs capable of being processed are processed within a specified time threshold. This threshold allows a user to trade availability for consistency: a larger time threshold decreases availability but limits inconsistency, while a smaller threshold increases availability but produces more inconsistent results based on partial data. In addition, when failures heal, our scheme corrects previously produced results, ensuring eventual consistency.Our scheme uses a data-serializing operator to ensure that all replicas process data in the same order, and thus remain consistent in the absence of failures. To regain consistency after a failure heals, we experimentally compare approaches based on checkpoint/redo and undo/redo techniques and illustrate the performance trade-offs between these schemes.
Magdalena Balazinska, Hari Balakrishnan, Samuel Madden 0001, Michael Stonebraker
SIGMOD Conference4
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
VLDB1
2004 Outrageous Ideas and/or Thoughts While Shaving
abstract
For this closing panel discussion, we will recruit a collection of participants from the attendees and organizers. Each will agree to present one or more outrageous ideas that are too wacky to get funded and/or incapable of being turned into least-publishable units (LPUs). Less adventuresome panelists can present their pet peeve about research activities pursued by other in the DBMS community. Risk averse panelists can discuss more mundane problems which they would like to work on if they had more time or were excused from department committees.
Michael Stonebraker
ICDE1
2004 Load Management and High Availability in the Medusa Distributed Stream Processing System
abstract
Medusa [3, 6] is a distributed stream processing system based on the Aurora single-site stream processing engine [1]. We demonstrate how Medusa handles time-varying load spikes and provides high availability in the face of network partitions. We demonstrate Medusa in the context of Borealis, a second generation stream processing engine based on Aurora and Medusa.
Magdalena Balazinska, Hari Balakrishnan, Michael Stonebraker
SIGMOD Conference3
2004 Linear Road: A Stream Data Management Benchmark
Arvind Arasu, Mitch Cherniack, Eduardo F. Galvez, David Maier 0001, Anurag Maskey, Esther Ryvkina, Michael Stonebraker, Richard Tibbetts
VLDB7
2004 Retrospective on Aurora
Hari Balakrishnan, Magdalena Balazinska, Donald Carney, Ugur Çetintemel, Mitch Cherniack, Christian Convey, Eduardo F. Galvez, Jon Salz, Michael Stonebraker, Nesime Tatbul, Richard Tibbetts, Stanley B. Zdonik
VLDB J.9
2003 Aurora: A Data Stream Management System
abstract
No abstract available.
Daniel J. Abadi, Donald Carney, Ugur Çetintemel, Mitch Cherniack, Christian Convey, C. Erwin, Eduardo F. Galvez, M. Hatoun, Anurag Maskey, Alexander Rasin, A. Singer, Michael Stonebraker, Nesime Tatbul, R. Yan, Stanley B. Zdonik
SIGMOD Conference12
2003 The Lowell Report
abstract
No abstract available.
Jim Gray 0001, Hans-Jörg Schek, Michael Stonebraker, Jeffrey D. Ullman
SIGMOD Conference3
2003 Visionary: A Next Generation Visualization System for Databases
Michael Stonebraker
SIGMOD Conference1
2003 Operator Scheduling in a Data Stream Manager
Donald Carney, Ugur Çetintemel, Alexander Rasin, Stanley B. Zdonik, Mitch Cherniack, Michael Stonebraker
VLDB6
2003 Load Shedding in a Data Stream Manager
Nesime Tatbul, Ugur Çetintemel, Stanley B. Zdonik, Mitch Cherniack, Michael Stonebraker
VLDB5
2003 Aurora: a new model and architecture for data stream management
Daniel J. Abadi, Donald Carney, Ugur Çetintemel, Mitch Cherniack, Christian Convey, Sangdon Lee, Michael Stonebraker, Nesime Tatbul, Stanley B. Zdonik
VLDB J.7
2002 Monitoring Streams - A New Class of Data Management Applications
Donald Carney, Ugur Çetintemel, Mitch Cherniack, Christian Convey, Sangdon Lee, Greg Seidman, Michael Stonebraker, Nesime Tatbul, Stanley B. Zdonik
VLDB7
2001 Content Integration for E-Business
abstract
We define the problem of content integration for E-Business, and show how it differs in fundamental ways from traditional issues surrounding data integration, application integration, data warehousing and OLTP. Content integration includes catalog integration as a special case, but encompasses a broader set of applications and challenges. We explore the characteristics of content integration and required services for any solution. In addition, we explore architectural alternatives and discuss the use of XML in this arena.
Michael Stonebraker, Joseph M. Hellerstein
SIGMOD Conference1
2000 On XML and Databases: Where's the Beef? (Panel Abstract)
abstract
This panel will examine the implications of the XML revolution, which is currently raging on the web, for database systems research and development.
Michael J. Carey 0001, Adam Bosworth, Bruce G. Lindsay 0001, Michael Stonebraker, Dan Suciu, Jennifer Widom
SIGMOD Conference4
1998 DataSplash
abstract
Database visualization is an area of growing importance as database systems become larger and more accessible. DataSplash is an easy-to-use, integrated environment for navigating, creating, and querying visual representations of data. We will demonstrate the three main components which make up the DataSplash environment: a navigation system, a direct-manipulation interface for creating and modifying visualizations, and a direct-manipulation visual query system.
Christopher Olston, Allison Woodruff, Alex Aiken, Michael Chu, Vuk Ercegovac, Mark Lin, Mybrid Spalding, Michael Stonebraker
SIGMOD Conference8
1998 Are We Working On the Right Problems? (Panel)
abstract
There appears to be a discrepancy between the research topics being pursued by the database research community and the key problems facing information systems decisions makers such as Chief Information Officers (CIOs). Panelists will present their view of the key problems that would benefit from a research focus in the database research community and will discuss perceived discrepancies. Based on personal experience, the most commonly discussed information systems problems facing CIOs today include:
Michael Stonebraker
SIGMOD Conference1
1997 Supporting Fine-grained Data Lineage in a Database Visualization Environment
abstract
The lineage of a datum records its processing history. Because such information can be used to trace the source of anomalies and errors in processed data sets, it is valuable to users for a variety of applications, including the investigation of anomalies and debugging. Traditional data lineage approaches rely on metadata. However, metadata does not scale well to fine-grained lineage, especially in large data sets. For example, it is not feasible to store all of the information that is necessary to trace from a specific floating-point value in a processed data set to a particular satellite image pixel in a source data set. In this paper, we propose a novel method to support fine-grained data lineage. Rather than relying on metadata, our approach lazily computes the lineage using a limited amount of information about the processing operators and the base data. We introduce the notions of weak inversion and verification. While our system does not perfectly invert the data, it uses weak inversion and verification to provide a number of guarantees about the lineage it generates. We propose a design for the implementation of weak inversion and verification in an object-relational database management system.
Allison Woodruff, Michael Stonebraker
ICDE2
1997 ESMDIS: Earth System Model Data Information System
abstract
The goal of the development of the Earth System Model Data Information System (ESMDIS) are to provide Earth scientists with: 1) an output management system of Earth System Model (ESM) to browse the metadata and retrieve a desired subset of ESM output; 2) an analysis system of ESM output and other related datasets; 3) an automated pipelining system for ESM data processing; 4) a visualization system; and 5) a Web based user interface to utilize the system. ESMDIS is based on DBMS centric approach, built upon the "BigSur" Earth science data schema, and developed using an object relational DBMS. We have built a prototype ESMDIS, and present the results of its development.
Yuechen Chi, Carlos R. Mechoso, Michael Stonebraker, Keith Sklower, Richard Troy, Richard R. Muntz, Edmond Mesrobian
SSDBM3
1996 Tioga-2: A Direct Manipulation Database Visualization Environment
abstract
The paper reports on user experience with Tioga, a DBMS centric visualization tool developed at Berkeley. Based on this experience, we have designed Tioga-2 as a direct manipulation system that is more powerful and much easier to program. A detailed design of the revised system is presented, together with an extensive example of its application.
Alex Aiken, Jolly Chen, Michael Stonebraker, Allison Woodruff
ICDE3
1996 Database Research: Lead, Follow, or Get Out of the Way? - Panel Abstract
Surajit Chaudhuri, Ashok K. Chandra, Umeshwar Dayal, Jim Gray 0001, Michael Stonebraker, Gio Wiederhold, Moshe Y. Vardi
ICDE5
1996 Data Replication in Mariposa
abstract
The Mariposa distributed data manager uses an economic model for managing the allocation of both storage objects and queries to servers. In this paper, we present extensions to the economic model which support replica management, as well as our mechanisms for propagating updates among replicas. We show how our replicacontrol mechanism can be used to provide consistent, although potentially stale, views of data across many machines without expensive pertransaction synchronization. We present a rule-based con#ict resolution mechanism, which can be usedto enhancetraditional time-stamp serialization. We discuss the e#ects of our replica system on query processing for both read-only and read-write queries. We further demonstrate how the replication model and mechanisms naturally support name service in Mariposa. 1 Introduction In this paper we describe replica managementin the Mariposa distributed data base management system #STON94a#. There has been considerable research devoted to stu...
Jeff Sidell, Paul M. Aoki, Adam Sah, Carl Staelin, Michael Stonebraker, Andrew Yu
ICDE5
1996 Reordering Query Execution in Tertiary Memory Databases
Sunita Sarawagi, Michael Stonebraker
VLDB2
1996 Mariposa: A Wide-Area Distributed Database System
Michael Stonebraker, Paul M. Aoki, Witold Litwin, Avi Pfeffer, Adam Sah, Jeff Sidell, Carl Staelin, Andrew Yu
VLDB J.1
1995 BigSur: A System For the Management of Earth Science Data
Paul Brown, Michael Stonebraker
VLDB2
1995 Metrics for Accessing Heterogeneous Data: Is There Any Hope? (Panel)
Leonard J. Seligman, Nicholas J. Belkin, Erich J. Neuhold, Michael Stonebraker, Gio Wiederhold
VLDB4
1994 Implementing Calendars and Temporal Rules in Next Generation Databases
abstract
In applications like financial trading, scheduling, manufacturing and process control, time based predicates in queries and rules are very important. There is also a need to define lists of time points or intervals. The authors refer to these lists as calendars. The authors present a system of calendars that allow specification of natural-language time-based expressions, maintenance of valid time in databases, specification of temporal conditions in database queries and rules, and user-defined semantics for date manipulation. A simple list based language is proposed to define, manipulate and query calendars. The design of the parser and an algorithm for efficient evaluation of calendar expressions is also described. The paper also describes the implementation of time-based rules in POSTGRES using the proposed system of calendars.>
Rakesh Chandra, Arie Segev, Michael Stonebraker
ICDE3
1994 Efficient Organization of Large Multidimensional Arrays
abstract
Large multidimensional arrays are widely used in scientific and engineering database applications. The authors present methods of organizing arrays to make their access on secondary and tertiary memory devices fast and efficient. They have developed four techniques for doing this: (1) storing the array in multidimensional "chunks" to minimize the number of blocks fetched, (2) reordering the chunked array to minimize seek distance between accessed blocks, (3) maintaining redundant copies of the array, each organized for a different chunk size and ordering and (4) partitioning the array onto platters of a tertiary memory device so as to minimize the number of platter switches. The measurements on real data obtained from global change scientists show that accesses on arrays organized using these techniques are often an order of magnitude faster than on the unoptimized data.>
Sunita Sarawagi, Michael Stonebraker
ICDE2
1994 Mariposa: A New Architecture for Distributed Data
abstract
We describe the design of Mariposa, an experimental distributed data management system that provides high performance in an environment of high data mobility and heterogeneous host capabilities. The Mariposa design unifies the approaches taken by distributed file systems and distributed databases. In addition, Mariposa provides a general, flexible platform for the development of new algorithms for distributed query optimization, storage management, and scalable data storage structures. This flexibility is primarily due to a unique rule-based design that permits autonomous, local-knowledge decisions to be made regarding data placement, query execution location, and storage management.>
Michael Stonebraker, Paul M. Aoki, Robert Devine, Witold Litwin, Michael A. Olson
ICDE1
1994 SEQUOIA 2000: A Reflection of the First Three Years
abstract
The purpose of the SEQUOIA 2000 project is to build a better computing environment for global change researchers. Such researchers investigate issues such as global warming, ozone depletion, environment toxification, and species extinction, and are members of Earth Sciences Departments at Universities and National Laboratories. SEQUOIA 2000 is the Digital Equipment Corporation flagship research project for the 1990's. We describe the SEQUOIA 2000 project and its implementation efforts during the first three years. Included are the objectives we had, how we chose to address them and some of the lessons we learned from this endeavour.>
Michael Stonebraker
SSDBM1
1993 Are We Polishing a Round Ball? (Panel Abstract)
Michael Stonebraker
ICDE1
1993 Large Object Support in POSTGRES
abstract
Four implementations that support large objects in the POSTGRES database system are presented. The four implementations offer varying levels of support for security, transactions, compression, and time travel. All are implemented using the POSTGRES abstract data type paradigm, support user-defined operators and functions, and allow file-oriented access to large objects in the database. The support for user-defined storage managers available in POSTGRES is also detailed. The performance of all four large object implementations on two different storage devices is described.>
Michael Stonebraker, Michael A. Olson
ICDE1
1993 Predicate Migration: Optimizing Queries with Expensive Predicates
abstract
The traditional focus of relational query optimization schemes has been on the choice of join methods and join orders. Restrictions have typically been handled in query optimizers by “predicate pushdown” rules, which apply restrictions in some random order before as many joins as possible. These rules work under the assumption that restriction is essentially a zero-time operation. However, today's extensible and object-oriented database systems allow users to define time-consuming functions, which may be used in a query's restriction and join predicates. Furthermore, SQL has long supported subquery predicates, which may be arbitrarily time-consuming to check. Thus restrictions should not be considered zero-time operations, and the model of query optimization must be enhanced.
Joseph M. Hellerstein, Michael Stonebraker
SIGMOD Conference2
1993 The Miro DBMS
abstract
This short paper explains the key object-relational (OR) DBMS technology used by the Miro DBMS.
Michael Stonebraker
SIGMOD Conference1
1993 The Sequoia 2000 Benchmark
abstract
This paper presents a benchmark that concisely captures the data base requirements of a collection of Earth Scientists working in the SEQUOIA 2000 project on various aspects of global change research. This benchmark has the novel characteristic that it uses real data sets and real queries that are representative of Earth Science tasks. Because it appears that Earth Science problems are typical of the problems of engineering and scientific DBMS users, we claim that this benchmark represents the needs of this more general community. Also included in the paper are benchmark results for three example DBMSs: GRASS, IPW and POSTGRES.
Michael Stonebraker, James Frew, Kenn Gardels, Jeff Meredith
SIGMOD Conference1
1993 DBMS Research at a Crossroads: The Vienna Update
Michael Stonebraker, Rakesh Agrawal 0001, Umeshwar Dayal, Erich J. Neuhold, Andreas Reuter 0001
VLDB1
1993 Tioga: Providing Data Management Support for Scientific Visualization Applications
Michael Stonebraker, Jolly Chen, Nobuko Nathan, Caroline Paxson
VLDB1
1993 Optimization of Parallel Query Execution Plans in XPRS
Michael Stonebraker
Distributed Parallel Databases2
1992 The Integration of Rule Systems and Database Systems
abstract
The integration of rule systems into database management systems is explored. Research activities in this area over the past decade are surveyed. The focus is on prototype systems that have been completely specified and the implementation issues encountered. A research agenda which should be addressed by the research community over the next few years is presented.>
Michael Stonebraker
IEEE Trans. Knowl. Data Eng.1
1991 Read Optimized File System Designs: A Performance Evaluation
abstract
A performance comparison is presented of several file system allocation policies. The file systems are designed to provide high bandwidth between disks and main memory by taking advantage of parallelism in an underlying disk array catering to large units of transfer, and minimizing the bandwidth dedicated to the transfer of metadata. All of the file systems described use a multiblock allocation strategy which allows both large and small files to be allocated efficiently. Simulation results show that these multiblock policies result in systems that are able to utilize a large percentage of the underlying disk bandwidth (more than 90% in sequential cases). As general-purpose systems are called upon to support more data intensive applications such as databases and supercomputing, these policies offer an opportunity to provide superior performance to a larger class of users.>
Margo I. Seltzer, Michael Stonebraker
ICDE2
1991 Segment Indexes: Dynamic Indexing Techniques for Multi-Dimensional Interval Data
abstract
article Free Access Share on Segment indexes: dynamic indexing techniques for multi-dimensional interval data Authors: Curtis P. Kolovson Database Technology Department, Hewlett-Packard Laboratories, 1501 Page Mill Road, Building 3U, Palo Alto, CA Database Technology Department, Hewlett-Packard Laboratories, 1501 Page Mill Road, Building 3U, Palo Alto, CAView Profile , Michael Stonebraker Computer Science Division, Department of Electrical Engineering and Computer Science, University of California, Berkeley, California Computer Science Division, Department of Electrical Engineering and Computer Science, University of California, Berkeley, CaliforniaView Profile Authors Info & Claims ACM SIGMOD RecordVolume 20Issue 2June 1991 pp 138–147https://doi.org/10.1145/119995.115807Published:01 April 1991Publication History 87citation1,151DownloadsMetricsTotal Citations87Total Downloads1,151Last 12 Months42Last 6 weeks14 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Curtis P. Kolovson, Michael Stonebraker
SIGMOD Conference2
1991 Managing Persistent Objects in a Multi-Level Store
abstract
This paper presents an architecture for a persistent object store in which multi-level storage is explicitly included. Traditionally. DBMSs have assumed that all accessible data resides on magnetic disk, and recently several researchers have begun to consider the possibility that significant amounts of data will occupy space m a main memory cache. We feel that object bases in which time critical objects reside in main memory, other objects are disk resident, and the remainder occupy tertiary memory. Moreover, it is possible that more than three levels will be present, and that some of these levels will be on remote hardware. This paper contains an architectural proposal addressing these needs along with a sketch of the required query optimizer
Michael Stonebraker
SIGMOD Conference1
1991 Using Write Protected Data Structures To Improve Software Fault Tolerance in Highly Available Database Management Systems
Mark Sullivan, Michael Stonebraker
VLDB2
1990 Alternatives in Complex Object Representation: A Performance Perspective
abstract
With database systems finding wider use in CAD, office information systems, and logic programming applications, the importance of efficiently representing and manipulating complex objects is growing. In this study a classification of the alternatives for representing complex objects is examined. Consideration is given to the performance aspects of one representation technique based on object identifiers. It is shown that clustering of subobjects with their referencing objects is rarely a good idea. In contrast, it is shown that caching the intermediate results of query processing can yield large benefits.>
Anant Jhingran, Michael Stonebraker
ICDE2
1990 Distributed RAID - A New Multiple Copy Algorithm
abstract
A new multicopy algorithm is proposed; it has the potentially attractive property that much less space is required and equal performance is provided during normal operation. On the other hand, during failures the new algorithm offers lower performance than a conventional scheme. As such, this algorithm may be attractive in various multicopy environments, as well as in disaster recovery. The algorithm is presented and compared with various other multicopy and disaster recovery techniques.>
Michael Stonebraker, Gerhard A. Schloss
ICDE1
1990 The Postgres DBMS
Michael Stonebraker
SIGMOD Conference1
1990 On Rules, Procedures, Caching and Views in Data Base Systems
abstract
This paper demonstrates that a simple rule system can be constructed that supports a more powerful view system than available in current commercial systems. Not only can views be specified by using rules but also special semantics for resolving ambiguous view updates are simply additional rules. Moreover, procedural data types as proposed in POSTGRES are also efficiently simulated by the same rules system. Lastly, caching of the action part of certain rules is a possible performance enhancement and can be applied to materialize views as well as to cache procedural data items. Hence, we conclude that a rule system is a fundamental concept in a next generation DBMS, and it subsumes both views and procedures as special cases.
Michael Stonebraker, Anant Jhingran, Jeffrey Goh, Spyros Potamianos
SIGMOD Conference1
1990 "The Committee for Advanced DBMS Function": Third Generation Data Base System Manifesto
Michael Stonebraker, Lawrence A. Rowe, Bruce G. Lindsay 0001, Jim Gray 0001, Michael J. Carey 0001, David Beech
SIGMOD Conference1
1990 Transaction Support in Read Optimizied and Write Optimized File Systems
Margo I. Seltzer, Michael Stonebraker
VLDB2
1990 Introduction to the Special Issue on Database Prototype Systems
Michael Stonebraker
IEEE Trans. Knowl. Data Eng.1
1990 The Implementation of Postgres
abstract
The design and implementation decisions made for the three-dimensional data manager POSTGRES are discussed. Attention is restricted to the DBMS backend functions. The POSTGRES data model and query language, the rules system, the storage system, the POSTGRES implementation and the current status and performance are discussed.>
Michael Stonebraker, Lawrence A. Rowe, Michael Hirohama
IEEE Trans. Knowl. Data Eng.1
1989 Indexing Techniques for Historical Databases
abstract
Two indexing structures based on R-trees are proposed for historical data, which can span magnetic disk and optical disk media. The performance of these indexes is compared to that of two other indexing candidates that are each contained entirely on one medium. Test results indicate that the proposed indexes perform well when compared to an index that is contained entirely on optical disk. >
Curtis P. Kolovson, Michael Stonebraker
ICDE2
1989 Future Trends in Database Systems
abstract
The author discusses the likely evolution of commercial data managers over the next several years. Topics to be covered include the following: why SQL (structured query language) has become a universal standard; who can benefit from SQL standardization; why the current SQL standard has no chance of lasting; why all database systems can be distributed soon; what new technologies are likely to be commercialized; and why vendor independence may be achievable.>
Michael Stonebraker
IEEE Trans. Knowl. Data Eng.1
1988 A Performance Comparison of Two Architectures for Fast Transaction Processing
abstract
Investigates the issues involved in using multiprocessors for transaction processing. The authors use a simulation model to study the behavior of two different architectures, namely shared everything and shared nothing. In shared everything, any processor can access any disk and all memory is shared. In shared nothing, neither disks nor memory is shared. They study the effects of data contention and resource contention in both of these architectures. They quantify the effects of intraquery parallelism on both architectures under different operating conditions.>
Anupam Bhide, Michael Stonebraker
ICDE2
1988 Future Trends in Data Base Systems
abstract
A discussion is presented of the likely evolution of commercial data managers over the next several years. Topics to be covered include: why SQL is becoming a de facto standard; who will benefit from SQL standardization; why the SQL standard has no chance of lasting; why all database systems will be distributed soon; what technologies are likely to be commercialized; and why vendor independence may be achievable. The objective is to present the author's vision of the future.>
Michael Stonebraker
ICDE1
1988 Semantics Based Transaction Management Techniques for Replicated Data
abstract
Data is often replicated in distributed database applications to improve availability and response time. Conventional multi-copy algorithms deliver fast response times and high availability for read-only transactions while sacrificing these goals for updates. In this paper, we propose a multi-copy algorithm that works well in both retrieval and update environments by exploiting special application semantics. By subdividing transactions into various categories, and utilizing a commutativity property, we demonstrate cheaper techniques and show that they guarantee correctness. A performance comparison between our techniques and conventional ones quantifies the extent of the savings.
Akhil Kumar 0001, Michael Stonebraker
SIGMOD Conference2
1988 Extended User-Defined Indexing with Application to Textual Databases
Clifford A. Lynch, Michael Stonebraker
VLDB2
1988 The Design of XPRS
Michael Stonebraker, Randy H. Katz, David A. Patterson 0001, John K. Ousterhout
VLDB1
1987 The Design of the Postgres Rules System
abstract
This paper explains the rules subsystem that is being implemented in the POSTGRES DBMS. It is novel in several ways. First, it gives to users the capability of defining rules as well as data to a DBMS. Moreover, depending on the scope of each rule defined, optimization is handled differently. This leads to good performance both in the case that there are many rules each of small scope and a few rules each of large scope. In addition, rules provide either a forward chaining control flow or a backward chaining one, and the system will choose the control mechanism that optimizes performance in the cases that it is possible. Furthermore, priority rules can be defined, thereby allowing a user to specify rules systems that have conflicts. This use of exceptions seems necessary in many applications. Lastly, our rule system can support an implementation of views, protection and integrity control, simply by applying the rules system in a particular way. Consequently, no special purpose code need be included to handle these tasks.
Michael Stonebraker, Eric N. Hanson, Chin-Heng Hong
ICDE1
1987 Performance Evaluation of an Operating System Transaction Manager
Akhil Kumar 0001, Michael Stonebraker
VLDB2
1987 The POSTGRES Data Model
Lawrence A. Rowe, Michael Stonebraker
VLDB2
1987 The Design of the POSTGRES Storage System
Michael Stonebraker
VLDB1
1987 Extending a Database System with Procedures
abstract
This paper suggests that more powerful database systems (DBMS) can be built by supporting database procedures as full-fledged database objects. In particular, allowing fields of a database to be a collection of queries in the query language of the system is shown to allow the natural expression of complex data relationships. Moreover, many of the features present in object-oriented systems and semantic data models can be supported by this facility. In order to implement this construct, extensions to a typical relational query language must be made, and considerable work on the execution engine of the underlying DBMS must be accomplished. This paper reports on the extensions for one particular query language and data manager and then gives performance figures for a prototype implementation. Even though the performance of the prototype is competitive with that of a conventional system, suggestions for improvement are presented.
Michael Stonebraker, Jeff Anton, Eric N. Hanson
ACM Trans. Database Syst.1
1986 Inclusion of New Types in Relational Data Base Systems
abstract
This paper explores a mechanism to support user-defined data types for columns in a relational data base system. Previous work suggested how to support new operators and new data types. The contribution of this work is to suggest ways to allow query optimization on commands which include new data types and operators and ways to allow access methods to be used for new data types.
Michael Stonebraker
ICDE1
1986 The Design of Postgres
abstract
This paper presents the preliminary design of a new database management system, called POSTGRES, that is the successor to the INGRES relational database system. The main design goals of the new system are to
Michael Stonebraker, Lawrence A. Rowe
SIGMOD Conference1
1984 Implementation Techniques for Main Memory Database Systems
abstract
With the availability of very large, relatively inexpensive main memories, it is becoming possible keep large databases resident in main memory In this paper we consider the changes necessary to permit a relational database system to take advantage of large amounts of main memory We evaluate AVL vs B+-tree access methods for main memory databases, hash-based query processing strategies vs sort-merge, and study recovery issues when most or all of the database fits in main memory As expected, B+-trees are the preferred storage mechanism unless more than 80--90% of the database fits in main memory A somewhat surprising result is that hash based query processing strategies are advantageous for large memory situations
David J. DeWitt, Randy H. Katz, Frank Olken, Leonard D. Shapiro, Michael Stonebraker, David A. Wood 0001
SIGMOD Conference5
1984 Quel as a Data Type
abstract
This paper explores the use of commands in a query language as an abstract data type (ADT) in data base management systems Basically, an ADT facility allows new data types, such as polygons, lines, money, time, arrays of floating point numbers, bit vectors, etc, to supplement the built-in data types in a data base system. In this paper we demonstrate the power of adding a data type corresponding to commands in a query language We also propose three extensions to the query language QUEL to enhance its power in this augmented environment.
Michael Stonebraker, Erika Anderson, Eric N. Hanson, W. Bradley Rubenstein
SIGMOD Conference1
1984 The Performance of Concurrency Control Algorithms for Database Management Systems
Michael J. Carey 0001, Michael Stonebraker
VLDB2
1984 Database Portals: A New Application Program Interface
Michael Stonebraker, Lawrence A. Rowe
VLDB1
1983 DBMS and AI: Is There any Common Point of View?
abstract
No abstract available.
Michael Stonebraker
SIGMOD Conference1
1983 An Implementation of Hypothetical Relations
John Woodfill, Michael Stonebraker
VLDB2
1983 Performance Enhancements to a Relational Database System
abstract
In this paper we examine four performance enhancements to a database management system: dynamic compilation, microcoded routines, a special-purpose file system, and a special-purpose operating system. All were examined in the context of the INGRES database management system. Benchmark timings that are included suggest the attractiveness of dynamic compilation and a special-purpose file system. Microcode and a special-purpose operating system are analyzed and appear to be of more limited utility in the INGRES context.
Michael Stonebraker, John Woodfill, Jeff Ranstrom, Marguerite C. Murphy, Marc Meyer, Eric Allman
ACM Trans. Database Syst.1
1983 Document Processing in a Relational Database System
abstract
This paper contains a proposal to enhance a relational database manager to support document processing.Basically, it suggests support for data items that are variable-length strings, support for ordered relations, support for substring operations, and support for new operators that concatenate and break apart string fields.
Michael Stonebraker, Heidi Stettner, Nadene Lynn, Joseph Kalash, Antonin Guttman
ACM Trans. Inf. Syst.1
1982 TIMBER: A Sophisticated Relation Browser (Invited Paper)
Michael Stonebraker, Joseph Kalash
VLDB1
1981 Hypothetical Data Bases as Views
abstract
In this paper we show that hypothetical data bases can be effectively supported by slight extensions to conventional view support mechanisms. Moreover, we argue that the resulting structure may well be quite efficient and that there are advantages to making hypothetical data bases central to the operation of a DBMS.
Michael Stonebraker
SIGMOD Conference1
1980 Embedding Expert Knowledge and Hypothetical Data Bases Into a Data Base System
abstract
This paper is concerned with adding knowledge to a data base management system and suggests two appropriate mechanisms, namely hypothetical data bases (HDB's) and experts. Herein we indicate the need for HDB's and define the extensions that are needed to a data base system to support HDB's.In addition, we suggest that the notion of "experts" is an appropriate way to add semantic knowledge to a data base system. Unlike most other proposals which extend an underlying data model to capture more meaning, our proposal does not require extensions to the schema. Moreover, the DBMS does not even have to know how an expert functions. In this paper we define an expert and indicate how it would be added to one existing data base system.
Michael Stonebraker, Kenneth Keller
SIGMOD Conference1
1980 Analysis of Distributed Data Base Processing Strategies
Robert S. Epstein, Michael Stonebraker
VLDB2
1980 Retrospection on a Database System
abstract
This paper describes the implementation history of the INGRES database system. It focuses on mistakes that were made in progress rather than on eventual corrections. Some attention is also given to the role of structured design in a database system implementation and to the problem of supporting nontrivial users. Lastly, miscellaneous impressions of UNIX, the PDP-11, and data models are given.
Michael Stonebraker
ACM Trans. Database Syst.1
1979 Performance Analysis of a Relational Data Base Management System
abstract
The effect on the performance of data management systems of the use of extended storage devices, multiple processors and prefetching data blocks is analyzed with respect to one system, INGRES. Benchmark query streams, derived from user queries, were run on the INGRES system and their CPU usage and data reference patterns traced. The results show that the performance characteristics of two query types: data-intensive queries and overhead-intensive queries, are so different that it may be difficult to design a single architecture to optimize the performance of both types. It is shown that the random access model of data references holds only for overhead-intensive queries, and then only if references to system catalogs are not considered data references. Significant sequentiality of reference was found in the data-intensive queries. It is shown that back-end data management machines that distribute processing toward the data may be cost effective only for data-intensive queries. It is proposed that the best method of distributing the processing of the overhead-intensive query is through the use of intelligent terminals. A third benchmark set, multi-relation queries, was devised, and proposals are made for taking advantage of the locality of reference which was found.
Paula B. Hawthorn, Michael Stonebraker
SIGMOD Conference2
1979 Locking Granularity Revisited
abstract
Locking granularity refers to the size and hence the number of locks used to ensure the consistency of a database during multiple concurrent updates. In an earlier simulation study we concluded that coarse granularity, such as area or file locking, is to be preferred to fine granularity such as individual page or record locking. However, alternate assumptions than those used in the original paper can change that conclusion. First, we modified the assumptions concerning the placement of the locks on the database with respect to the accessing transactions. In the original model the locks were assumed to be well placed. Under worse case and random placement assumptions when only very small transactions access the database, fine granularity is preferable. Second, we extended the simulation to model a lock hierarchy where large transactions use large locks and small transactions use small locks. In this scenario, again under the random and worse case lock placement assumptions, fine granularity is preferable if all transactions accessing more than 1 percent of the database use large locks. Finally, the simulation was extended to model a “claim as needed” locking strategy together with the resultant possibility of deadlock. In the original study all locks were claimed in one atomic operation at the beginning of a transaction. The claim as needed strategy does not change the conclusions concerning the desired granularity.
Daniel R. Ries, Michael Stonebraker
ACM Trans. Database Syst.2
1978 Distributed Query Processing in a Relational Data Base System
abstract
In this paper we present a new algorithm for retrieving and updating data from a distributed relational data base. Within such a data base, any number of relations can be distributed over any number of sites. Moreover, a user supplied distribution criteria can optionally be used to specify what site a tuple belongs to.The algorithm is an efficient way to process any query by "breaking" the qualification into separate "pieces" using a few simple heuristics. The cost criteria considered are minimum response time and minimum communications traffic. In addition, the algorithm can optimize separately for two models of a communication network representing respectively ARPANET and ETHERNET like networks. This algorithm is being implemented as part of the INGRES data base system.
Robert S. Epstein, Michael Stonebraker, Eugene Wong 0001
SIGMOD Conference2
1977 A Study of the Effects of Locking Granularity in a Data Base Management System (Abstract)
abstract
Many data base systems guarantee some form of integrity control upon multiple concurrent updates by some form of locking. Some "granule" of the data base is chosen as the unit which is individually locked, and a lock management algorithm is used to ensure integrity. By a simulation model this paper explores the desired size of a "granule". Under a wide variety of seemingly realistic conditions, surprisingly coarse granularity is called for. The paper concludes with some implications of these results concerning the viability of so called "predicate locking".Research sponsored by the Naval Electronic Systems Command Contract N00039-76-c-0022, the National Science Foundation Grant DCR75-03839 and the Army Research Office Grant DAAG29-76-6-0245.
Daniel R. Ries, Michael Stonebraker
SIGMOD Conference2
1977 Observations on Data Manipulation Languages and Their Embedding in General Purpose Programming Languages
Michael Stonebraker, Lawrence A. Rowe
VLDB1
1977 Effects of Locking Granularity in a Database Management System
abstract
Many database systems guarantee some form of integrity control upon multiple concurrent updates by some form of locking. Some “granule” of the database is chosen as the unit which is individually locked, and a lock management algorithm is used to ensure integrity. Using a simulation model, this paper explores the desired size of a granule. Under a wide variety of seemingly realistic conditions, surprisingly coarse granularity is called for. The paper concludes with some implications of these results concerning the viability of so-called “predicate locking”.
Daniel R. Ries, Michael Stonebraker
ACM Trans. Database Syst.2
1976 The Design and Implementation of INGRES
abstract
The currently operational (March 1976) version of the INGRES database management system is described. This multiuser system gives a relational view of data, supports two high level nonprocedural data sublanguages, and runs as a collection of user processes on top of the UNIX operating system for Digital Equipment Corporation PDP 11/40, 11/45, and 11/70 computers. Emphasis is on the design decisions and tradeoffs related to (1) structuring the system into processes, (2) embedding one command language in a general purpose programming language, (3) the algorithms implemented to process interactions, (4) the access methods implemented, (5) the concurrency and recovery control currently provided, and (6) the data structures used for system catalogs and the role of the database administrator. Also discussed are (1) support for integrity constraints (which is only partly operational), (2) the not yet supported features concerning views and protection, and (3) future plans concerning the system.
Michael Stonebraker, Eugene Wong 0001, Peter Kreps, Gerald Held
ACM Trans. Database Syst.1
1975 Implementation of Integrity Constraints and Views by Query Modification
abstract
Because the user interface in a relatonal data base management system may be decoupled from the storage representation of data, novel, powerful and efficient integrity control schemes are possible. This paper indicates the mechanism being implemented in one relational system to prevent integrity violations which can result from improper updates by a process. Basically each interaction with the data is immediately modified at the query language level to one guaranteed to have no integrity violations. Also, a similar modification technique is indicated to support the use of "views," i.e. relations which are not physically present in the data base but are defined in terms of ones that are.
Michael Stonebraker
SIGMOD Conference1