Demo Data from SIGIR 2026 / reviewers in the wild / expert
David J. DeWitt
dblp:d/DJDeWitt
· DBLP profile ↗
132ranked-venue papers
18as first author
1since 2021 · last 2023
0009-0007-5037-5205ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Databases, data management, data science and information retrieval · 115 · 15 first-author · 1 since 2021Software engineering, systems software and programming languages · 10 · 2 first-authorSystems, architecture and hardware · 8 · 2 first-authorArtificial intelligence and machine learning · 5Theory of computation · 2Graphics, computer vision, multimedia, augmented reality and games · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Computer architecture, parallel and distributed computing, and storage systems
61 papers |
Cloud and datacenter computing · 61% Storage systems · 19% Performance modeling and evaluation · 12% | |
| Databases, data mining, and information retrieval
99 papers |
Query processing and optimization · 29% Database system architecture and tuning · 28% Indexing and storage engines · 13% | |
| Artificial intelligence
1 paper |
Segmentation and scene understanding · 50% Image recognition and object detection · 25% 3D vision · 25% | |
| Network and information security
6 papers |
Privacy and data protection · 100% |
Topics — the 30 heaviest of 199, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Cloud and datacenter computing
cluster resource management and scheduling |
1.3 | 4 | 2023 | Cackle: Analytical Workload Cost and Performance Stability With Elastic Pools · Proc. ACM Manag. Data 2023 Predictive Provisioning: Efficiently Anticipating Usage in Azure SQL Database · ICDE 2017 Not for the Timid: On the Impact of Aggressive Over-booking in the Cloud · Proc. VLDB Endow. 2016 |
Cloud and datacenter computing
serverless computing |
1.1 | 2 | 2023 | Cackle: Analytical Workload Cost and Performance Stability With Elastic Pools · Proc. ACM Manag. Data 2023 Starling: A Scalable Query Engine on Cloud Functions · SIGMOD Conference 2020 |
Cloud and datacenter computing
resource provisioning |
0.7 | 1 | 2023 | Cackle: Analytical Workload Cost and Performance Stability With Elastic Pools · Proc. ACM Manag. Data 2023 |
Cloud and datacenter computing
database-as-a-service |
0.6 | 2 | 2019 | Choosing A Cloud DBMS: Architectures and Tradeoffs · Proc. VLDB Endow. 2019 Not for the Timid: On the Impact of Aggressive Over-booking in the Cloud · Proc. VLDB Endow. 2016 |
Performance modeling and evaluation
benchmarking |
0.6 | 13 | 2019 | Choosing A Cloud DBMS: Architectures and Tradeoffs · Proc. VLDB Endow. 2019 A comparison of approaches to large-scale data analysis · SIGMOD Conference 2009 The TEXTURE Benchmark: Measuring Performance of Text Queries on a Relational DBMS · VLDB 2005 |
Storage systems
flash and SSD |
0.5 | 3 | 2013 | Query processing on smart SSDs: opportunities and challenges · SIGMOD Conference 2013 Fast peak-to-peak behavior with SSD buffer pool · ICDE 2013 Turbocharging DBMS buffer pool using SSDs · SIGMOD Conference 2011 |
Privacy and data protection
anonymization |
0.3 | 5 | 2008 | Workload-aware anonymization techniques for large-scale datasets · ACM Trans. Database Syst. 2008 K-Anonymization as Spatial Indexing: Toward Scalable and Incremental Anonymization · ICDE 2007 Workload-aware anonymization · KDD 2006 |
Computer vision › Segmentation and scene understanding › semantic segmentation › remote sensing image segmentation
aerial image segmentation |
0.3 | 1 | 2018 | RoadTracer: Automatic Extraction of Road Networks From Aerial Images · CVPR 2018 |
Computer vision › Image recognition and object detection
object detection |
0.3 | 1 | 2018 | RoadTracer: Automatic Extraction of Road Networks From Aerial Images · CVPR 2018 |
Computer vision › 3D vision › aerial image analysis
road network extraction |
0.3 | 1 | 2018 | RoadTracer: Automatic Extraction of Road Networks From Aerial Images · CVPR 2018 |
Computer vision › Segmentation and scene understanding
semantic segmentation |
0.3 | 1 | 2018 | RoadTracer: Automatic Extraction of Road Networks From Aerial Images · CVPR 2018 |
Indexing and storage engines
buffer management |
0.3 | 3 | 2013 | Fast peak-to-peak behavior with SSD buffer pool · ICDE 2013 Turbocharging DBMS buffer pool using SSDs · SIGMOD Conference 2011 An Evaluation of Buffer Management Strategies for Relational Database Systems · VLDB 1985 |
Storage systems › flash and SSD › flash-aware data management
SSD-aware bufferpool management |
0.3 | 2 | 2013 | Fast peak-to-peak behavior with SSD buffer pool · ICDE 2013 Turbocharging DBMS buffer pool using SSDs · SIGMOD Conference 2011 |
Cloud and datacenter computing › cluster resource management and scheduling
overbooking |
0.2 | 1 | 2016 | Not for the Timid: On the Impact of Aggressive Over-booking in the Cloud · Proc. VLDB Endow. 2016 |
Performance modeling and evaluation
workload characterization |
0.2 | 5 | 2023 | Cackle: Analytical Workload Cost and Performance Stability With Elastic Pools · Proc. ACM Manag. Data 2023 DBMSs on a Modern Processor: Where Does Time Go? · VLDB 1999 A Performance Analysis of Alternative Multi-Attribute Declustering Strategies · SIGMOD Conference 1992 |
Distributed and cloud data management
distributed query processing |
0.2 | 2 | 2013 | Split query processing in polybase · SIGMOD Conference 2013 Tuple Routing Strategies for Distributed Eddies · VLDB 2003 |
Query processing and optimization
query execution |
0.2 | 5 | 2008 | Read-optimized databases, in depth · Proc. VLDB Endow. 2008 Materialization Strategies in a Column-Oriented DBMS · ICDE 2007 On Supporting Containment Queries in Relational Database Management Systems · SIGMOD Conference 2001 |
Indexing and storage engines
b+-tree |
0.2 | 1 | 2014 | Indexing HDFS Data in PDW: Splitting the data from the index · Proc. VLDB Endow. 2014 |
Data integration and cleaning
heterogeneous data management |
0.2 | 1 | 2014 | Indexing HDFS Data in PDW: Splitting the data from the index · Proc. VLDB Endow. 2014 |
Distributed and cloud data management › mapreduce
mapreduce and parallel database integration |
0.2 | 1 | 2014 | Indexing HDFS Data in PDW: Splitting the data from the index · Proc. VLDB Endow. 2014 |
Privacy and data protection › anonymization
k-anonymity |
0.2 | 3 | 2007 | K-Anonymization as Spatial Indexing: Toward Scalable and Incremental Anonymization · ICDE 2007 Mondrian Multidimensional K-Anonymity · ICDE 2006 Incognito: Efficient Full-Domain K-Anonymity · SIGMOD Conference 2005 |
Database system architecture and tuning
parallel database system |
0.2 | 6 | 2012 | A comparison of approaches to large-scale data analysis · SIGMOD Conference 2009 Query optimization in microsoft SQL server PDW · SIGMOD Conference 2012 Data Placement in Shared-Nothing Parallel Database Systems · VLDB J. 1997 |
Query processing and optimization
analytical query processing |
0.2 | 1 | 2013 | Query processing on smart SSDs: opportunities and challenges · SIGMOD Conference 2013 |
Distributed and cloud data management
federated database |
0.2 | 1 | 2013 | Split query processing in polybase · SIGMOD Conference 2013 |
Storage systems › computational storage
SmartSSD |
0.2 | 1 | 2013 | Query processing on smart SSDs: opportunities and challenges · SIGMOD Conference 2013 |
Query processing and optimization › query optimization
distributed query optimization |
0.1 | 1 | 2012 | Query optimization in microsoft SQL server PDW · SIGMOD Conference 2012 |
Data models and query languages
NoSQL database |
0.1 | 1 | 2012 | Can the Elephants Handle the NoSQL Onslaught? · Proc. VLDB Endow. 2012 |
Database system architecture and tuning
relational database system |
0.1 | 1 | 2012 | Can the Elephants Handle the NoSQL Onslaught? · Proc. VLDB Endow. 2012 |
Cloud and datacenter computing
cloud storage |
0.1 | 1 | 2020 | Starling: A Scalable Query Engine on Cloud Functions · SIGMOD Conference 2020 |
Query processing and optimization › adaptive query processing
query re-optimization |
0.1 | 3 | 2005 | Proactive re-optimization with Rio · SIGMOD Conference 2005 Proactive Re-optimization · SIGMOD Conference 2005 Efficient Mid-Query Re-Optimization of Sub-Optimal Query Execution Plans · SIGMOD Conference 1998 |
Methods — techniques the papers use, named apart from their topics
straggler mitigation · 0.9data shuffling · 0.9TPC-H benchmark · 0.8iterative search · 0.7elastic resource pooling · 0.7convolutional neural network · 0.7analytical cost modeling · 0.7usage prediction · 0.6telemetry analysis · 0.6trace-driven modeling · 0.5capacity forecasting · 0.5transactional logging · 0.3benchmarking · 0.2write-back caching · 0.2sampling · 0.1decision tree · 0.1multidimensional spatial indexing · 0.1b+-tree · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Cackle: Analytical Workload Cost and Performance Stability With Elastic PoolsabstractAnalytical query workloads are prone to rapid fluctuations in resource demands. These rapid, hard to predict resource demand changes make provisioning a challenge. Users must either over provision at excessive cost or suffer poor query latency when demand spikes. Prior work shows the viability of using cloud functions to match the supply of compute to the workload demand without provisioning resources ahead of time. For low query volumes, this approach is less costly at reasonable performance compared to provisioned systems, but as query volumes increase the cost overhead of cloud functions outweighs the benefit gained by rapid elasticity. In this work, we propose a novel strategy combining rapidly scalable but expensive resources with slow to start but inexpensive virtual machines to gain the benefit of elasticity without losing out on the cost savings of provisioned resources. We demonstrate a technique that minimizes cost over a wide range of workloads, environmental conditions, and compute costs while providing stable query performance. We implement these ideas in Cackle and demonstrate that it achieves similar performance and cost per query across a wide range of workloads, avoiding the cost and performance cliffs of alternative approaches. Matthew Perron, Raul Castro Fernandez, David J. DeWitt, Michael J. Cafarella, Samuel Madden 0001 |
Proc. ACM Manag. Data | 3 |
| 2020 | Starling: A Scalable Query Engine on Cloud FunctionsabstractMuch like on-premises systems, the natural choice for running database analytics workloads in the cloud is to provision a cluster of nodes to run a database instance. However, analytics workloads are often bursty or low volume, leaving clusters idle much of the time, meaning customers pay for compute resources even when underutilized. The ability of cloud function services, such as AWS Lambda or Azure Functions, to run small, fine granularity tasks make them appear to be a natural choice for query processing in such settings. But implementing an analytics system on cloud functions comes with its own set of challenges. These include managing hundreds of tiny stateless resource-constrained workers, handling stragglers, and shuffling data through opaque cloud services. In this paper we present Starling, a query execution engine built on cloud function services that employs a number of techniques to mitigate these challenges, providing interactive query latency at a lower total cost than provisioned systems with low-to-moderate utilization. In particular, on a 1TB TPC-H dataset in cloud storage, Starling is less expensive than the best provisioned systems for workloads when queries arrive 1 minute apart or more. Starling also has lower latency than competing systems reading from cloud object stores and can scale to larger datasets. Matthew Perron, Raul Castro Fernandez, David J. DeWitt, Samuel Madden 0001 |
SIGMOD Conference | 3 |
| 2019 | Choosing A Cloud DBMS: Architectures and TradeoffsabstractAs 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. | 6 |
| 2018 | RoadTracer: Automatic Extraction of Road Networks From Aerial ImagesabstractMapping road networks is currently both expensive and labor-intensive. High-resolution aerial imagery provides a promising avenue to automatically infer a road network. Prior work uses convolutional neural networks (CNNs) to detect which pixels belong to a road (segmentation), and then uses complex post-processing heuristics to infer graph connectivity. We show that these segmentation methods have high error rates because noisy CNN outputs are difficult to correct. We propose RoadTracer, a new method to automatically construct accurate road network maps from aerial images. RoadTracer uses an iterative search process guided by a CNN-based decision function to derive the road network graph directly from the output of the CNN. We compare our approach with a segmentation method on fifteen cities, and find that at a 5% error rate, RoadTracer correctly captures 45% more junctions across these cities. Favyen Bastani, Songtao He, Sofiane Abbar, Mohammad Alizadeh, Hari Balakrishnan, Sanjay Chawla, Samuel Madden 0001, David J. DeWitt |
CVPR | 8 |
| 2017 | Predictive Provisioning: Efficiently Anticipating Usage in Azure SQL DatabaseabstractOver-booking cloud resources is an effective way to increase the cost efficiency of a cluster, and is being studied within Microsoft for the Azure SQL Database service. A key challenge is to strike the right balance between the potentially conflicting goals of optimizing for resource allocation efficiency and positive user experience. Understanding when cloud database customers use their database instances and when they are idle can allow one to successfully balance these two metrics. In our work, we formulate and evaluate production-feasible methods to develop idleness profiles for customer databases. Using one of the largest data center telemetry datasets, namely Azure SQL Database telemetry across multiple data centers, we show that our schemes are effective in predicting future patterns of database usage. Our methods are practical and improve the efficiency of clusters while managing customer expectations. Lalitha Viswanathan, Bikash Chandra, Willis Lang, Karthik Ramachandra 0002, Jignesh M. Patel, Ajay Kalhan, David J. DeWitt, Alan Halverson |
ICDE | 7 |
| 2016 | STeP: Scalable Tenant Placement for Managing Database-as-a-Service DeploymentsabstractPublic cloud providers with Database-as-a-Service offerings must efficiently allocate computing resources to each of their customers. An effective assignment of tenants both reduces the number of physical servers in use and meets customer expectations at a price point that is competitive in the cloud market. For public cloud vendors like Microsoft and Amazon, this means packing millions of users' databases onto hundreds or thousands of servers. Rebecca Taft, Willis Lang, Jennie Rogers, Aaron J. Elmore, Michael Stonebraker, David J. DeWitt |
SoCC | 6 |
| 2016 | Not for the Timid: On the Impact of Aggressive Over-booking in the CloudabstractTo lower hosting costs and service prices, database-as-a-service (DBaaS) providers strive to maximize cluster utilization without negatively affecting their users' service experience. Some of the most effective approaches for increasing service efficiency result in the over-booking of the cluster with user databases. For instance, one approach is to reclaim cluster capacity from a database when it is idle, temporarily re-using the capacity for some other purpose, and over-booking the cluster's resources. Such approaches are largely driven by policies that determine when it is prudent to temporarily reclaim capacity from an idle database. In this paper, we examine policies that inherently tune the system's idle sensitivity. Increased sensitivity to idleness leads to aggressive over-booking while the converse leads to conservative reclamation and lower utilization levels. Aggressive over-booking also incurs a "reserve" capacity cost (for when we suddenly "owe" capacity to previously idle databases.) We answer these key questions in this paper: (1) how to find a "good" resource reclamation policy for a given DBaaS cluster of users; and (2) how to forecast the needed near-term reserve capacity. To help us answer these questions, we used production user activity traces from Azure SQL DB and built models of an over-booking mechanism. We show that choosing the right policy can substantially boost the efficiency of the service, facilitating lower service prices via lower amortized infrastructure costs. Willis Lang, Karthik Ramachandra 0002, David J. DeWitt, Shize Xu, Qun Guo 0003, Ajay Kalhan, Peter Carlin |
Proc. VLDB Endow. | 3 |
| 2015 | Microsoft azure SQL database telemetryabstractMicrosoft operates the Azure SQL Database (ASD) cloud service, one of the dominant relational cloud database services in the market today. To aid the academic community in their research on designing and efficiently operating cloud database services, Microsoft is introducing the release of production-level telemetry traces from the ASD service. This telemetry data set provides, over a wide set of important hardware resources and counters, the consumption level of each customer database replica. The first release will be a multi-month time-series data set that includes the full cluster traces from two different ASD global regions. Willis Lang, Frank Bertsch, David J. DeWitt, Nigel Ellis |
SoCC | 3 |
| 2014 | Indexing HDFS Data in PDW: Splitting the data from the indexabstractThere is a growing interest in making relational DBMSs work synergistically with MapReduce systems. However, there are interesting technical challenges associated with figuring out the right balance between the use and co-deployment of these systems. This paper focuses on one specific aspect of this balance, namely how to leverage the superior indexing and query processing power of a relational DBMS for data that is often more cost-effectively stored in Hadoop/HDFS. We present a method to use conventional B+-tree indices in an RDBMS for data stored in HDFS and demonstrate that our approach is especially effective for highly selective queries. Vinitha Reddy Gankidi, Nikhil Teletia, Jignesh M. Patel, Alan Halverson, David J. DeWitt |
Proc. VLDB Endow. | 5 |
| 2013 | Fast peak-to-peak behavior with SSD buffer poolabstractA promising use of flash SSDs in a DBMS is to extend the main memory buffer pool by caching selected pages that have been evicted from the buffer pool. Such a use has been shown to produce significant gains in the steady state performance of the DBMS. One strategy for using the SSD buffer pool is to throw away the data in the SSD when the system is restarted (either when recovering from a crash or restarting after a shutdown), and consequently a long “ramp-up” period to regain peak performance is needed. One approach to eliminate this limitation is to use a memory-mapped file to store the SSD buffer table in order to be able to restore its contents on restart. However, this design can result in lower sustained performance, because every update to the SSD buffer table may incur an I/O operation to the memory-mapped file. In this paper we propose two new alternative designs. One design reconstructs the SSD buffer table using transactional logs. The other design asynchronously flushes the SSD buffer table, and upon restart, lazily verifies the integrity of the data cached in the SSD buffer pool. We have implemented these three designs in SQL Server 2012. For each design, both the write-through and write-back SSD caching policies were implemented. Using two OLTP benchmarks (TPC-C and TPC-E), our experimental results show that our designs produce up to 3.8X speedup on the interval between peak-to-peak performance, with negligible performance loss; in contrast, the previous approach has a similar speedup but up to 54% performance loss. Jaeyoung Do, Jignesh M. Patel, David J. DeWitt |
ICDE | 4 |
| 2013 | Split query processing in polybaseabstractThis paper presents Polybase, a feature of SQL Server PDW V2 that allows users to manage and query data stored in a Hadoop cluster using the standard SQL query language. Unlike other database systems that provide only a relational view over HDFS-resident data through the use of an external table mechanism, Polybase employs a split query processing paradigm in which SQL operators on HDFS-resident data are translated into MapReduce jobs by the PDW query optimizer and then executed on the Hadoop cluster. The paper describes the design and implementation of Polybase along with a thorough performance evaluation that explores the benefits of employing a split query processing paradigm for executing queries that involve both structured data in a relational DBMS and unstructured data in Hadoop. Our results demonstrate that while the use of a split-based query execution paradigm can improve the performance of some queries by as much as 10X, one must employ a cost-based query optimizer that considers a broad set of factors when deciding whether or not it is advantageous to push a SQL operator to Hadoop. These factors include the selectivity factor of the predicate, the relative sizes of the two clusters, and whether or not their nodes are co-located. In addition, differences in the semantics of the Java and SQL languages must be carefully considered in order to avoid altering the expected results of a query. David J. DeWitt, Alan Halverson, Rimma V. Nehme, Srinath Shankar, Josep Aguilar-Saborit, Artin Avanes, Miro Flasza, Jim Gramling |
SIGMOD Conference | 1 |
| 2013 | We are drowning in a sea of least publishable units (LPUs)abstractOur 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 Conference | 1 |
| 2013 | Query processing on smart SSDs: opportunities and challengesabstractData storage devices are getting "smarter." Smart Flash storage devices (a.k.a. "Smart SSD") are on the horizon and will package CPU processing and DRAM storage inside a Smart SSD, and make that available to run user programs inside a Smart SSD. The focus of this paper is on exploring the opportunities and challenges associated with exploiting this functionality of Smart SSDs for relational analytic query processing. We have implemented an initial prototype of Microsoft SQL Server running on a Samsung Smart SSD. Our results demonstrate that significant performance and energy gains can be achieved by pushing selected query processing components inside the Smart SSDs. We also identify various changes that SSD device manufacturers can make to increase the benefits of using Smart SSDs for data processing applications, and also suggest possible research opportunities for the database community. Jaeyoung Do, Yang-Suk Kee, Jignesh M. Patel, Chanik Park, Kwanghyun Park 0001, David J. DeWitt |
SIGMOD Conference | 6 |
| 2012 | Query optimization in microsoft SQL server PDWabstractIn recent years, Massively Parallel Processors have increasingly been used to manage and query vast amounts of data. Dramatic performance improvements are achieved through distributed execution of queries across many nodes. Query optimization for such system is a challenging and important problem. Srinath Shankar, Rimma V. Nehme, Josep Aguilar-Saborit, Mostafa Elhemali, Alan Halverson, Eric Robinson, Mahadevan Sankara Subramanian, David J. DeWitt, César A. Galindo-Legaria |
SIGMOD Conference | 9 |
| 2012 | Can the Elephants Handle the NoSQL Onslaught?abstractIn this new era of "big data", traditional DBMSs are under attack from two sides. At one end of the spectrum, the use of document store NoSQL systems (e.g. MongoDB) threatens to move modern Web 2.0 applications away from traditional RDBMSs. At the other end of the spectrum, big data DSS analytics that used to be the domain of parallel RDBMSs is now under attack by another class of NoSQL data analytics systems, such as Hive on Hadoop. So, are the traditional RDBMSs, aka "big elephants", doomed as they are challenged from both ends of this "big data" spectrum? In this paper, we compare one representative NoSQL system from each end of this spectrum with SQL Server, and analyze the performance and scalability aspects of each of these approaches (NoSQL vs. SQL) on two workloads (decision support analysis and interactive data-serving) that represent the two ends of the application spectrum. We present insights from this evaluation and speculate on potential trends for the future. Avrilia Floratou, Nikhil Teletia, David J. DeWitt, Jignesh M. Patel |
Proc. VLDB Endow. | 3 |
| 2011 | Turbocharging DBMS buffer pool using SSDsabstractFlash solid-state drives (SSDs) are changing the I/O landscape, which has largely been dominated by traditional hard disk drives (HDDs) for the last 50 years. In this paper we propose and systematically explore designs for using an SSD to improve the performance of a DBMS buffer manager. We propose three alternatives that differ mainly in the way that they deal with the dirty pages evicted from the buffer pool. We implemented these alternatives, as well another recently proposed algorithm for this task (TAC), in SQL Server, and ran experiments using a variety of benchmarks (TPC-C, E and H) at multiple scale factors. Our empirical evaluation shows significant performance improvements of our methods over the default HDD configuration (up to 9.4X), and up to a 6.8X speedup over TAC. Jaeyoung Do, Jignesh M. Patel, David J. DeWitt, Jeffrey F. Naughton, Alan Halverson |
SIGMOD Conference | 4 |
| 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 |
CIDR | 3 |
| 2009 | A comparison of approaches to large-scale data analysisabstractThere 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 Conference | 5 |
| 2009 | A Demonstration of SciDB: A Science-Oriented DBMSabstractIn 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. | 11 |
| 2009 | Progressive Parametric Query OptimizationabstractCommercial applications usually rely on pre-compiled parameterized procedures to interact with a database. Unfortunately, executing a procedure with a set of parameters different from those used at compilation time may be arbitrarily sub-optimal. Parametric query optimization (PQO) attempts to solve this problem by exhaustively determining the optimal plans at each point of the parameter space at compile time. However, PQO is likely not cost-effective if the query is executed infrequently or if it is executed with values only within a subset of the parameter space. In this paper we propose instead to progressively explore the parameter space and build a parametric plan during several executions of the same query. We introduce algorithms that, as parametric plans are populated, are able to frequently bypass the optimizer but still execute optimal or near-optimal plans. Pedro Bizarro, Nicolas Bruno, David J. DeWitt |
IEEE Trans. Knowl. Data Eng. | 3 |
| 2008 | Clustera: an integrated computation and data management systemabstractThis paper introduces Clustera, an integrated computation and data management system. In contrast to traditional cluster-management systems that target specific types of workloads, Clustera is designed for extensibility, enabling the system to be easily extended to handle a wide variety of job types ranging from computationally-intensive, long-running jobs with minimal I/O requirements to complex SQL queries over massive relational tables. Another unique feature of Clustera is the way in which the system architecture exploits modern software building blocks including application servers and relational database systems in order to realize important performance, scalability, portability and usability benefits. Finally, experimental evaluation suggests that Clustera has good scale-up properties for SQL processing, that Clustera delivers performance comparable to Hadoop for MapReduce processing and that Clustera can support higher job throughput rates than previously published results for the Condor and CondorJ2 batch computing systems. David J. DeWitt, Erik Paulson 0001, Eric Robinson, Jeffrey F. Naughton, Joshua Royalty, Srinath Shankar, Andrew Krioukov |
Proc. VLDB Endow. | 1 |
| 2008 | Read-optimized databases, in depthabstractRecently, a number of papers have been published showing the benefits of column stores over row stores. However, the research comparing the two in an "apples-to-apples" way has left a number of unresolved questions. In this paper, we first discuss the factors that can affect the relative performance of each paradigm. Then, we choose points within each of the factors to study further. Our study examines five tables with various characteristics and different query workloads in order to obtain a greater understanding and quantification of the relative performance of column stores and row stores. We then add materialized views to the analysis and see how much they can help the performance of row stores. Finally, we examine the performance of hash join operations in column stores and row stores. Allison L. Holloway, David J. DeWitt |
Proc. VLDB Endow. | 2 |
| 2008 | Workload-aware anonymization techniques for large-scale datasetsabstractProtecting individual privacy is an important problem in microdata distribution and publishing. Anonymization algorithms typically aim to satisfy certain privacy definitions with minimal impact on the quality of the resulting data. While much of the previous literature has measured quality through simple one-size-fits-all measures, we argue that quality is best judged with respect to the workload for which the data will ultimately be used. This article provides a suite of anonymization algorithms that incorporate a target class of workloads, consisting of one or more data mining tasks as well as selection predicates. An extensive empirical evaluation indicates that this approach is often more effective than previous techniques. In addition, we consider the problem of scalability. The article describes two extensions that allow us to scale the anonymization algorithms to datasets much larger than main memory. The first extension is based on ideas from scalable decision trees, and the second is based on sampling. A thorough performance evaluation indicates that these techniques are viable in practice. Kristen LeFevre, David J. DeWitt, Raghu Ramakrishnan 0001 |
ACM Trans. Database Syst. | 2 |
| 2007 | Turning Cluster Management into Data Management; A System Overview
Eric Robinson, David J. DeWitt |
CIDR | 2 |
| 2007 | Data driven workflow planning in cluster management systemsabstractTraditional scientific computing has been associated with harnessing computation cycles within and across clusters of machines. In recent years, scientific applications have become increasingly data-intensive. This is especially true in the fields of astronomy and high energy physics. Furthermore, the lowered cost of disks and commodity machines has led to a dramatic increase in the amount of free disk space spread across machines in a cluster. This space is not being exploited by traditional distributed computing tools. In this paper we have evaluated ways to improve the data management capabilities of Condor, a popular distributed computing system. We have augmented the Condor system by providing the capability to store data used and produced by workflows on the disks of machines in the cluster. We have also replaced the Condor matchmaker with a new workflow planning framework that is cognizant of dependencies between jobs in a workflow and exploits these new data storage capabilities to produce workflow schedules. We show that our data caching and workflow planning framework can significantly reduce response times for data-intensive workflows by reducing data transfer over the network in a cluster. We also consider ways in which this planning framework can be made adaptive in a dynamic, multi-user, failure-prone environment. Srinath Shankar, David J. DeWitt |
HPDC | 2 |
| 2007 | Materialization Strategies in a Column-Oriented DBMSabstractThere has been renewed interest in column-oriented database architectures in recent years. For read-mostly query workloads such as those found in data warehouse and decision support applications, "column-stores" have been shown to perform particularly well relative to "row-stores" In order for column-stores to be readily adopted as a replacement for row-stores, however, they must present the same interface to client applications as do row stores, which implies that they must output row-store-style tuples. Thus, the input columns stored on disk must be converted to rows at some point in the query plan, but the optimal point at which to do the conversion is not obvious. This problem can be considered as the opposite of the projection problem in row-store systems: while row-stores need to determine where in query plans to place projection operators to make tuples narrower, column-stores need to determine when to combine single-column projections into wider tuples. This paper describes a variety of strategies for tuple construction and intermediate result representations and provides a systematic evaluation of these strategies. Daniel J. Abadi, Dan S. Myers, David J. DeWitt, Samuel Madden 0001 |
ICDE | 3 |
| 2007 | K-Anonymization as Spatial Indexing: Toward Scalable and Incremental AnonymizationabstractIn this paper, we introduce a novel approach to k-anonymization by making a new observation of a strikingly similar parallel between database indexing and k-anonymity. In general, however, the table to be published may contain more than one quasi-identifier attribute, so rather than use B+-trees, we suggest multidimensional spatial indexing as the basis for anonymization. We take a brief detour to discuss a measure for the quality of an anonymization algorithm. Tochukwu Iwuchukwu, David J. DeWitt, AnHai Doan, Jeffrey F. Naughton |
ICDE | 2 |
| 2007 | How to barter bits for chronons: compression and bandwidth trade offs for database scansabstractTwo trends are converging to make the CPU cost of a table scan a more important component of database performance. First, table scans are becoming a larger fraction of the query processing workload, and second, large memories and compression are making table scans CPU, rather than disk bandwidth, bound. Data warehouse systems have found that they can avoid the unpredictability of joins and indexing and achieve good performance by using massive parallel processing to perform scans over compressed vertical partitions of a denormalized schema. Allison L. Holloway, Vijayshankar Raman, Garret Swart, David J. DeWitt |
SIGMOD Conference | 4 |
| 2006 | Mondrian Multidimensional K-AnonymityabstractK-Anonymity has been proposed as a mechanism for protecting privacy in microdata publishing, and numerous recoding "models" have been considered for achieving ��anonymity. This paper proposes a new multidimensional model, which provides an additional degree of flexibility not seen in previous (single-dimensional) approaches. Often this flexibility leads to higher-quality anonymizations, as measured both by general-purpose metrics and more specific notions of query answerability. Optimal multidimensional anonymization is NP-hard (like previous optimal ��-anonymity problems). However, we introduce a simple greedy approximation algorithm, and experimental results show that this greedy algorithm frequently leads to more desirable anonymizations than exhaustive optimal algorithms for two single-dimensional models. Kristen LeFevre, David J. DeWitt, Raghu Ramakrishnan 0001 |
ICDE | 2 |
| 2006 | Workload-aware anonymizationabstractProtecting data privacy is an important problem in microdata distribution. Anonymization algorithms typically aim to protect individual privacy, with minimal impact on the quality of the resulting data. While the bulk of previous work has measured quality through one-size-fits-all measures, we argue that quality is best judged with respect to the workload for which the data will ultimately be used.This paper provides a suite of anonymization algorithms that produce an anonymous view based on a target class of workloads, consisting of one or more data mining tasks, as well as selection predicates. An extensive experimental evaluation indicates that this approach is often more effective than previous anonymization techniques. Kristen LeFevre, David J. DeWitt, Raghu Ramakrishnan 0001 |
KDD | 2 |
| 2006 | Database support for matching: limitations and opportunitiesabstractWe define a match join of R and S with predicate θ to be a subset of the θ-join of R and S such that each tuple of R and S contributes to at most one result tuple. Match joins and their generalizations belong to a broad class of matching problems that have attracted a great deal of attention in disciplines including operations research and theoretical computer science. Instances of these problems arise in practice in resource allocation scenarios. To the best of our knowledge no one uses an RDBMS as a tool to help solve these problems; our goal in this paper is to explore whether or not this needs to be the case. We show that the simple approach of computing the full θ-join and then applying standard graph-matching algorithms to the result is ineffective for all but the smallest of problem instances. By contrast, a closer study shows that the DBMS primitives of grouping, sorting, and joining can be exploited to yield efficient match join operations. This suggests that RDBMSs can play a role in matching related problems beyond merely serving as expensive file systems exporting data sets to external user programs. Ameet Kini, Srinath Shankar, Jeffrey F. Naughton, David J. DeWitt |
SIGMOD Conference | 4 |
| 2005 | Buffer-pool Aware Query Optimization
Ravishankar Ramamurthy, David J. DeWitt |
CIDR | 2 |
| 2005 | Scalable Distributed Aggregate Computations Through Collaboration
Leonidas Galanis, David J. DeWitt |
DEXA | 2 |
| 2005 | Proactive Re-optimizationabstractTraditional query optimizers rely on the accuracy of estimated statistics to choose good execution plans. This design often leads to suboptimal plan choices for complex queries, since errors in estimates for intermediate subexpressions grow exponentially in the presence of skewed and correlated data distributions. Reoptimization is a promising technique to cope with such mistakes. Current re-optimizers first use a traditional optimizer to pick a plan, and then react to estimation errors and resulting suboptimalities detected in the plan during execution. The effectiveness of this approach is limited because traditional optimizers choose plans unaware of issues affecting reoptimization. We address this problem using proactive reoptimization, a new approach that incorporates three techniques: i) the uncertainty in estimates of statistics is computed in the form of bounding boxes around these estimates, ii) these bounding boxes are used to pick plans that are robust to deviations of actual values from their estimates, and iii) accurate measurements of statistics are collected quickly and efficiently during query execution. We present an extensive evaluation of these techniques using a prototype proactive re-optimizer named Rio. In our experiments Rio outperforms current re-optimizers by up to a factor of three. Shivnath Babu, Pedro Bizarro, David J. DeWitt |
SIGMOD Conference | 3 |
| 2005 | Proactive re-optimization with RioabstractTraditional query optimizers rely on the accuracy of estimated statistics of intermediate subexpressions to choose good query execution plans. This design often leads to suboptimal plan choices for complex queries since errors in estimates grow exponentially in the presence of skewed and correlated data distributions. We propose to demonstrate the Rio prototype database system that uses proactive re-optimization to address the problems with traditional optimizers. Rio supports three new techniques:1. Intervals of uncertainty are considered around estimates of statistics during plan enumeration and costing2. These intervals are used to pick execution plans that are robust to deviations of actual values of statistics from estimated values, or to defer the choice of execution plan until the uncertainty in estimates can be resolved3. Statistics of intermediate subexpressions are collected quickly, accurately, and efficiently during query executionThese three features are fully functional in the current Rio prototype which is built using the Predator open-source DBMS [5]. In this proposal, we first describe the novel features of Rio, then we use an example query to illustrate the main aspects of our demonstration. Shivnath Babu, Pedro Bizarro, David J. DeWitt |
SIGMOD Conference | 3 |
| 2005 | Incognito: Efficient Full-Domain K-AnonymityabstractA number of organizations publish microdata for purposes such as public health and demographic research. Although attributes that clearly identify individuals, such as Name and Social Security Number, are generally removed, these databases can sometimes be joined with other public databases on attributes such as Zipcode, Sex, and Birthdate to re-identify individuals who were supposed to remain anonymous. "Joining" attacks are made easier by the availability of other, complementary, databases over the Internet.K-anonymization is a technique that prevents joining attacks by generalizing and/or suppressing portions of the released microdata so that no individual can be uniquely distinguished from a group of size k. In this paper, we provide a practical framework for implementing one model of k-anonymization, called full-domain generalization. We introduce a set of algorithms for producing minimal full-domain generalizations, and show that these algorithms perform up to an order of magnitude faster than previous algorithms on two real-life databases.Besides full-domain generalization, numerous other models have also been proposed for k-anonymization. The second contribution in this paper is a single taxonomy that categorizes previous models and introduces some promising new alternatives. Kristen LeFevre, David J. DeWitt, Raghu Ramakrishnan 0001 |
SIGMOD Conference | 2 |
| 2005 | Database Publication Practices
Philip A. Bernstein, David J. DeWitt, Andreas Heuer 0001, Zachary G. Ives, Christian S. Jensen, Holger Meyer 0001, M. Tamer Özsu, Richard T. Snodgrass, Kyu-Young Whang, Jennifer Widom |
VLDB | 2 |
| 2005 | Content-Based Routing: Different Plans for Different Data
Pedro Bizarro, Shivnath Babu, David J. DeWitt, Jennifer Widom |
VLDB | 3 |
| 2005 | The TEXTURE Benchmark: Measuring Performance of Text Queries on a Relational DBMS
Vuk Ercegovac, David J. DeWitt, Raghu Ramakrishnan 0001 |
VLDB | 2 |
| 2004 | Rethinking the Conference Reviewing Process - PanelabstractNo abstract available. Michael J. Franklin, Jennifer Widom, Gerhard Weikum, Philip A. Bernstein, Alon Y. Halevy, David J. DeWitt, Anastasia Ailamaki, Zachary G. Ives |
SIGMOD Conference | 6 |
| 2004 | Limiting Disclosure in Hippocratic Databases
Kristen LeFevre, Rakesh Agrawal 0001, Vuk Ercegovac, Raghu Ramakrishnan 0001, Yirong Xu, David J. DeWitt |
VLDB | 6 |
| 2004 | Computing PageRank in a Distributed Internet Search Engine System
David J. DeWitt |
VLDB | 2 |
| 2003 | Processing Queries in a Large Peer-to-Peer System
Leonidas Galanis, Shawn R. Jeffery, David J. DeWitt |
CAiSE | 4 |
| 2003 | X-Diff: An Effective Change Detection Algorithm for XML DocumentsabstractXML has become the de facto standard format for Web publishing and data transportation. Since online information changes frequently, being able to quickly detect changes in XML documents is important to Internet query systems, search engines, and continuous query systems. Previous work in change detection on XML, or other hierarchically structured documents, used an ordered tree model, in which left-to-right order among siblings is important and it can affect the change result. We argue that an unordered model (only ancestor relationships are significant) is more suitable for most database applications. Using an unordered model, change detection is substantially harder than using the ordered model, but the change result that it generates is more accurate. We propose X-Diff, an effective algorithm that integrates key XML structure characteristics with standard tree-to-tree correction techniques. The algorithm is analyzed and compared with XyDiff [CAM02], a published XML diff algorithm. An experimental evaluation on both algorithms is provided. David J. DeWitt, Jin-Yi Cai |
ICDE | 2 |
| 2003 | Locating Data Sources in Large Distributed Systems
Leonidas Galanis, Shawn R. Jeffery, David J. DeWitt |
VLDB | 4 |
| 2003 | Mixed Mode XML Query Processing
Alan Halverson, Josef Burger, Leonidas Galanis, Ameet Kini, Rajasekar Krishnamurthy, Ajith Nagaraja Rao, Stratis Viglas, Jeffrey F. Naughton, David J. DeWitt |
VLDB | 11 |
| 2003 | Tuple Routing Strategies for Distributed Eddies
David J. DeWitt |
VLDB | 2 |
| 2003 | A case for fractured mirrors
Ravishankar Ramamurthy, David J. DeWitt |
VLDB J. | 2 |
| 2002 | Design and Evaluation of Alternative Selection Placement Strategies in Optimizing Continuous QueriesabstractWe design and evaluate alternative selection placement strategies for optimizing a very large number of continuous queries in an Internet environment. Two grouping strategies, PushDown and PullUp, in which selections are either pushed below, or pulled above, joins are proposed and investigated. While our earlier research has demonstrated that the incremental group optimization can significantly outperform an ungrouped approach, the results from the paper show that different incremental group optimization strategies can have significantly different performance characteristics. Surprisingly, in our studies, PullUp, in which selections are pulled above joins, is often better and achieves an average 10 fold performance improvement over PushDown (occasionally 100 times faster). Furthermore, a revised algorithm of PullUp, termed filtered PullUp is proposed that is able to further reduce the cost of PullUp by 75% when the union of the selection predicates is selective. Detailed cost models, which consider several special parameters, including (1) characteristics of queries to be grouped, and (2) characteristics of data changes, are presented. Preliminary experiments using an implementation of both strategies show that our models are fairly accurate in predicting the results obtained from the implementation of these techniques in the Niagara system. Jianjun Chen 0001, David J. DeWitt, Jeffrey F. Naughton |
ICDE | 2 |
| 2002 | A Case for Fractured Mirrors
Ravishankar Ramamurthy, David J. DeWitt |
VLDB | 2 |
| 2002 | Data page layouts for relational databases on deep memory hierarchies
Anastasia Ailamaki, David J. DeWitt, Mark D. Hill |
VLDB J. | 2 |
| 2001 | On Supporting Containment Queries in Relational Database Management SystemsabstractVirtually all proposals for querying XML include a class of query we term “containment queries”. It is also clear that in the foreseeable future, a substantial amount of XML data will be stored in relational database systems. This raises the question of how to support these containment queries. The inverted list technology that underlies much of Information Retrieval is well-suited to these queries, but should we implement this technology (a) in a separate loosely-coupled IR engine, or (b) using the native tables and query execution machinery of the RDBMS? With option (b), more than twenty years of work on RDBMS query optimization, query execution, scalability, and concurrency control and recovery immediately extend to the queries and structures that implement these new operations. But all this will be irrelevant if the performance of option (b) lags that of (a) by too much. In this paper, we explore some performance implications of both options using native implementations in two commercial relational database systems and in a special purpose inverted list engine. Our performance study shows that while RDBMSs are generally poorly suited for such queries, under certain conditions they can outperform an inverted list engine. Our analysis further identifies two significant causes that differentiate the performance of the IR and RDBMS implementations: the join algorithms employed and the hardware cache utilization. Our results suggest that contrary to most expectations, with some modifications, a native implementation in an RDBMS can support this class of query much more efficiently. Jeffrey F. Naughton, David J. DeWitt, Qiong Luo 0001, Guy M. Lohman |
SIGMOD Conference | 3 |
| 2001 | Weaving Relations for Cache Performance
Anastasia Ailamaki, David J. DeWitt, Mark D. Hill, Marios Skounakis |
VLDB | 2 |
| 2001 | Storage Service Providers: a Solution for Storage Management? (Panel)
Banu Özden, Eran Gabber, Bruce Hillyer, Wee Teck Ng, Elizabeth A. M. Shriver, David J. DeWitt, Bruce Gordon, Jim Gray 0001, John Wilkes |
VLDB | 6 |
| 2000 | NiagaraCQ: A Scalable Continuous Query System for Internet DatabasesabstractContinuous queries are persistent queries that allow users to receive new results when they become available. While continuous query systems can transform a passive web into an active environment, they need to be able to support millions of queries due to the scale of the Internet. No existing systems have achieved this level of scalability. NiagaraCQ addresses this problem by grouping continuous queries based on the observation that many web queries share similar structures. Grouped queries can share the common computation, tend to fit in memory and can reduce the I/O cost significantly. Furthermore, grouping on selection predicates can eliminate a large number of unnecessary query invocations. Our grouping technique is distinguished from previous group optimization approaches in the following ways. First, we use an incremental group optimization strategy with dynamic re-grouping. New queries are added to existing query groups, without having to regroup already installed queries. Second, we use a query-split scheme that requires minimal changes to a general-purpose query engine. Third, NiagaraCQ groups both change-based and timer-based queries in a uniform way. To insure that NiagaraCQ is scalable, we have also employed other techniques including incremental evaluation of continuous queries, use of both pull and push models for detecting heterogeneous data source changes, and memory caching. This paper presents the design of NiagaraCQ system and gives some experimental results on the system's performance and scalability. Jianjun Chen 0001, David J. DeWitt |
SIGMOD Conference | 2 |
| 2000 | Accessing out-of-tuple data: a performance study
Johan Larson, David J. DeWitt |
Inf. Syst. | 2 |
| 1999 | Using a Knowledge Cache for Interactive Discovery of Association RulesabstractAssociation rule mining is a valuable decision support technique that can be used to analyze customer preferences, buying patterns, and product correlations.Current systems are however handicapped by the long processing times required by mining algorithms that make them unsuitable for interactive use.In this paper, we propose the use of a knowledge cache that can reduce the response time by several orders of magnitude.Most of the performance gain comes from the idea of guaranteed support that allows us to completely eliminate database accesses in a large number of cases.Using this cache, the time taken to answer a query is proportional to just the size of the result, rather than to the size of the database.Cache replacement is best done by a benefit-metric based strategy that can easily adapt to changing query patterns.We show that our caching scheme is quite robust, providing good performance on a wide variety of data distributions even for small cache sizes.We also compare algorithms that use precomputation to those that use caching and show that the best performance is obtained by combining both these techniques.Finally, we illustrate how the idea of caching can be readily extended to a broader class of problems such as the mining of generalized association rules. Biswadeep Nag, Prasad Deshpande, David J. DeWitt |
KDD | 3 |
| 1999 | DBMSs on a Modern Processor: Where Does Time Go?
Anastasia Ailamaki, David J. DeWitt, Mark D. Hill, David A. Wood 0001 |
VLDB | 2 |
| 1999 | Relational Databases for Querying XML Documents: Limitations and Opportunities
Jayavel Shanmugasundaram, Kristin Tufte, David J. DeWitt, Jeffrey F. Naughton |
VLDB | 5 |
| 1999 | OPT++: An Object-Oriented Implementation for Extensible Database Query Optimization
Navin Kabra, David J. DeWitt |
VLDB J. | 2 |
| 1998 | Memory Allocation Strategies for Complex Decision Support QueriesabstractComplex decision support queries, as exemplified by the TPC-D benchmark, make heavy use of join, aggregation and sorting operations. These operations can be very memory intensive and it is unlikely (particularly in a multi-user environment) that a database system will always have enough memory to completely satisfy the demands of all concurrently running operators. In this paper we propose, analyze and evaluate four different algorithms that distribute available memory among operators in ways that satisfy all operator requirements and concurrent schedulability constraints. One of these algorithms, based on linear programming, is also optimal in that it is guaranteed to produce the best query response time. We also show how these algorithms can be extended to work on shared-nothing parallel database systems. All the proposed strategies are completely general and can be used with any extended relational operations that show a linear improvement in performance with increased memory availa... Biswadeep Nag, David J. DeWitt |
CIKM | 2 |
| 1998 | Efficient Mid-Query Re-Optimization of Sub-Optimal Query Execution PlansabstractFor a number of reasons, even the best query optimizers can very often produce sub-optimal query execution plans, lead-ing to a significant degradation of performance. This is es-pecially true in databases used for complex decision support queries and/or object-relational databases. In this paper, we describe an algorithm that detects sub-optimality of a query execution plan during query execution and attempts to correct the problem. The basic idea is to collect statis-tics at key points during the execution of a complex query. These statistics are then used to optimize the execution of the query, either by improving the resource allocation for that query, or by changing the execution plan for the re-mainder of the query. To ensure that this does not signifi-cantly slow down the normal execution of a query, the Query Optimizer carefully chooses what statistics to collect, when to collect them, and the circumstances under which to re-optimize the query. We describe an implementation of this algorithm in the Paradise Database System, and we report on performance studies, which indicate that this can result in significant improvements in the performance of complex queries. 1 Navin Kabra, David J. DeWitt |
SIGMOD Conference | 2 |
| 1997 | The BUCKY Object-Relational Benchmark (Experience Paper)abstractAccording to various trade journals and corporate marketing machines, we are now on the verge of a revolution—the object-relational database revolution. Since we believe that no one should face a revolution without appropriate armaments, this paper presents BUCKY, a new benchmark for object-relational database systems. BUCKY is a query-oriented benchmark that tests many of the key features offered by object-relational systems, including row types and inheritance, references and path expressions, sets of atomic values and of references, methods and late binding, and user-defined abstract data types and their methods. To test the maturity of object-relational technology relative to relational technology, we provide both an object-relational version of BUCKY and a relational equivalent thereof (i.e., a relational BUCKY simulation). Finally, we briefly discuss the initial performance results and lessons that resulted from applying BUCKY to one of the early object-relational database system products. Michael J. Carey 0001, David J. DeWitt, Jeffrey F. Naughton, Mohammad Asgarian, Paul Brown, Johannes Gehrke, Dhaval Shah |
SIGMOD Conference | 2 |
| 1997 | Building a Scaleable Geo-Spatial DBMS: Technology, Implementation, and EvaluationabstractThis paper presents a number of new techniques for parallelizing geo-spatial database systems and discusses their implementation in the Paradise object-relational database system. The effectiveness of these techniques is demonstrated using a variety of complex geo-spatial queries over a 120 GB global geo-spatial data set. Jignesh M. Patel, Jie-Bing Yu, Navin Kabra, Kristin Tufte, Biswadeep Nag, Josef Burger, Nancy E. Hall, Karthikeyan Ramasamy, Roger Lueder, Curt J. Ellmann, Jim Kupsch, Shelly Guo, David J. DeWitt, Jeffrey F. Naughton |
SIGMOD Conference | 13 |
| 1997 | Query Pre-Execution and Batching in Paradise: A Two-Pronged Approach to the Efficient Processing of Queries on Tape-Resident Raster ImagesabstractThe focus of the Paradise project (D. DeWitt et al., 194; J. Patel et al., 1997) is to design and implement a scalable database system capable of storing and processing massive data sets such as those produced by NASA's EOSDIS project. The paper describes extensions to Paradise to handle the execution of queries involving collections of satellite images stored on tertiary storage. Several modifications were made to Paradise in order to make the execution of such queries both transparent to the user and efficient. First, the Paradise storage engine (the SHORE storage manager) was extended to support tertiary storage using a log structured organization for tape volumes. Second, the Paradise query processing engine was modified to incorporate a number of novel mechanisms including query pre execution, object abstraction, cache conscious tape scheduling, and query batching. A performance evaluation on a working prototype demonstrates that, together, these techniques can provide a dramatic improvement over more traditional approaches to the management of data stored on tape. Jie-Bing Yu, David J. DeWitt |
SSDBM | 2 |
| 1997 | Data Placement in Shared-Nothing Parallel Database Systems
Manish Mehta 0002, David J. DeWitt |
VLDB J. | 2 |
| 1996 | Partition Based Spatial-Merge JoinabstractThis paper describes PBSM (Partition Based Spatial--Merge), a new algorithm for performing spatial join operation. This algorithm is especially effective when neither of the inputs to the join have an index on the joining attribute. Such a situation could arise if both inputs to the join are intermediate results in a complex query, or in a parallel environment where the inputs must be dynamically redistributed. The PBSM algorithm partitions the inputs into manageable chunks, and joins them using a computational geometry based plane--sweeping technique. This paper also presents a performance study comparing the the traditional indexed nested loops join algorithm, a spatial join algorithm based on joining spatial indices, and the PBSM algorithm. These comparisons are based on complete implementations of these algorithms in Paradise, a database system for handling GIS applications. Using real data sets, the performance study examines the behavior of these spatial join algorithms in a vari... Jignesh M. Patel, David J. DeWitt |
SIGMOD Conference | 2 |
| 1996 | Of Objects and Databases: A Decade of Turmoil
Michael J. Carey 0001, David J. DeWitt |
VLDB | 2 |
| 1996 | SPIFFI-A Scalable Parallel File System for the Intel ParagonabstractThis paper presents the design and performance of SPIFFI, a scalable high-performance parallel file system intended for use by extremely I/O intensive applications including "Grand Challenge" scientific applications and multimedia systems. This paper contains experimental results from a SPIFFI prototype on a 64 node/64 disk Intel Paragon. The results show that SPIFFI provides high performance and linear scaleup on real hardware. The paper also explains how shared file pointers (i.e., file pointers that are shared by multiple processes) can simplify the design of a parallel application. By sequentializing I/O accesses and by providing dynamic I/O load balancing, a shared file pointer may even improve an application's performance. This paper also presents the predictions of a SPIFFI simulator that we validated using the prototype. The simulator results show that SPIFFI continues to provide high performance even when it is scaled to configurations with as many as 128 disks or 256 compute nodes. Craig S. Freedman, Josef Burger, David J. DeWitt |
IEEE Trans. Parallel Distributed Syst. | 3 |
| 1996 | Parallelising OODBMS Traversals: A Performance Evaluation
David J. DeWitt, Jeffrey F. Naughton, John C. Shafer, Shivakumar Venkataraman |
VLDB J. | 1 |
| 1995 | The SPIFFI Scalable Video-on-Demand SystemabstractThis paper presents a simulation study of a video-on-demand system. We present video server algorithms for real-time disk scheduling, prefetching, and buffer pool management. The performance of these algorithms is compared against the performance of simpler algorithms such as elevator and round-robin disk scheduling and global LRU buffer pool management. Finally, we show that the SPIFFI video-on-demand system scales nearly linearly as the number of disks, videos, and terminals is increased. Craig S. Freedman, David J. DeWitt |
SIGMOD Conference | 2 |
| 1995 | Implementing Crash Recovery in QuickStore: A Performance StudyabstractImplementing crash recovery in an Object-Oriented Database System (OODBMS) raises several challenging issues for performance that are not present in traditional DBMSs. These performance concerns result both from significant architectural differences between OODBMSs and traditional database systems and differences in OODBMS's target applications. This paper compares the performance of several alternative approaches to implementing crash recovery in an OODBMS based on a client-server architecture. The four basic recovery techniques examined in the paper are termed page differencing, sub-page differencing, whole-page logging, and redo-at-server. All of the recovery techniques were implemented in the context of QuickStore, a memory-mapped store built using the EXODUS Storage Manager, and their performance is compared using the OO7 database benchmark. The results of the performance study show that the techniques based on differencing generally provide superior performance to whole-page logging. Seth J. White, David J. DeWitt |
SIGMOD Conference | 2 |
| 1995 | Managing Intra-operator Parallelism in Parallel Database Systems
Manish Mehta 0002, David J. DeWitt |
VLDB | 2 |
| 1995 | QuickStore: A High Performance Mapped Object Store
Seth J. White, David J. DeWitt |
VLDB J. | 2 |
| 1994 | A Status Report on the oo7 OODBMS Benchmarking EffortabstractThe OO7 Benchmark was first published in 1993, and has since found a home in the marketing literature of various object-oriented database management system (OODBMS) vendors. The OO7 Benchmark (as published) was the initial result of an ongoing OODBMS performance evaluation effort at the University of Wisconsin. This paper provides an update on the status of the effort on two fronts: single-user and multi-user. On the single-user front, we review and critique the design of the initial OO7 Benchmark. We discuss some of its faults, the reasons for those faults, and things that might be done to correct them. On the multi-user front, we describe our current work on the development of a multi-user benchmark for OODBMSs. This effort includes changes and extensions to the OO7 database and the design of a family of interesting multi-user workloads. Michael J. Carey 0001, David J. DeWitt, Chander Kant, Jeffrey F. Naughton |
OOPSLA | 2 |
| 1994 | Shoring Up Persistent ApplicationsabstractSHORE (Scalable Heterogeneous Object REpository) is a persistent object system under development at the University of Wisconsin. SHORE represents a merger of object-oriented database and file system technologies. In this paper we give the goals and motivation for SHORE, and describe how SHORE provides features of both technologies. We also describe some novel aspects of the SHORE architecture, including a symmetric peer-to-peer server architecture, server customization through an extensible value-added server facility, and support for scalability on multiprocessor systems. An initial version of SHORE is already operational, and we expect a release of Version 1 in mid-1994. Michael J. Carey 0001, David J. DeWitt, Michael J. Franklin, Nancy E. Hall, Mark L. McAuliffe, Jeffrey F. Naughton, Daniel T. Schuh, Marvin H. Solomon, C. K. Tan, Odysseas G. Tsatalos, Seth J. White, Mike Zwilling |
SIGMOD Conference | 2 |
| 1994 | QuickStore: A High Performance Mapped Object StoreabstractThis paper presents, QuickStore, a memory-mapped storage system for persistent C++ built on top of the EXODUS Storage Manager. QuickStore provides fast access to in-memory objects by allowing application programs to access objects via normal virtual memory pointers. The paper also presents the results of a detailed performance study using the OO7 benchmark. The study compares the performance of QuickStore with the latest implementation of the E programming language. These systems exemplify the two basic approaches (hardware and software) that have been used to implement persistence in object-oriented database systems. Both systems use the same underlying storage manager and compiler allowing us to make a truly apples-to-apples comparison of the hardware and software techniques. Seth J. White, David J. DeWitt |
SIGMOD Conference | 2 |
| 1994 | Client-Server Paradise
David J. DeWitt, Navin Kabra, Jignesh M. Patel, Jie-Bing Yu |
VLDB | 1 |
| 1994 | MAGIC: A Multiattribute Declustering Mechanism for Multiprocessor Database MachinesabstractDuring the past decade, parallel database systems have gained increased popularity due to their high performance, scalability, and availability characteristics. With the predicted future database sizes and complexity of queries, the scalability of these systems to hundreds and thousands of processors is essential for satisfying the projected demand. Several studies have repeatedly demonstrated that both the performance and scalability of a parallel database system are contingent on the physical layout of the data across the processors of the system. If the data are not declustered appropriately, the execution of an operation might waste system resources, reducing the overall processing capability of the system. With earlier, single-attribute partitioning mechanisms such as those found in the Tandem, Teradata, Gamma, and Bubba parallel database systems, range selections on any attribute other than the partitioning attribute must be sent to all processors containing tuples of the relation, while range selections on the partitioning attribute can be directed to only a subset of the processors. Although using all the processors for an operation is reasonable for resource intensive operations, directing a query with minimal resource requirements to processors that contain no relevant tuples wastes CPU cycles, communication bandwidth, and I/O bandwidth. As a solution, this paper describes a new partitioning strategy, multiattribute grid declustering (MAGIC), which can use two or more attributes of a relation to decluster its tuples across multiple processors and disks. In addition, MAGIC declustering, unlike other multiattribute partitioning mechanisms that have been proposed, is able to support range selections as well as exact match selections on each of the partitioning attributes. This capability enables a greater variety of selection operations to be directed to a restricted subset of the processors in the system. Finally, MAGIC partitions each relation based on the resource requirements of the queries that constitute the workload for the relation and the processing capacity of the system in order to ensure that the proper number of processors are used to execute queries that reference the relation.> Shahram Ghandeharizadeh, David J. DeWitt |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 1993 | Batch Scheduling in Parallel Database SystemsabstractMany techniques for query scheduling in a parallel database system schedule a single query at a time. The scheduling of queries for parallel database systems by dividing the workload into batches is investigated. Scheduling algorithms that exploit the common operations within the queries in a batch are proposed. The performance of the proposed algorithms is studied using a simple analytical model and a detailed simulation model. It is shown that batch scheduling can provide significant savings compared to single query scheduling for a variety of system and workload parameters.> Manish Mehta 0002, Valery Soloviev, David J. DeWitt |
ICDE | 3 |
| 1993 | The oo7 BenchmarkabstractThe OO7 Benchmark represents a comprehensive test of OODBMS performance. In this paper we describe the benchmark and present performance results from its implementation in three OODBMS systems. It is our hope that the OO7 Benchmark will provide useful insight for end-users evaluating the performance of OODBMS systems; we also hope that the research community will find that OO7 provides a database schema, instance, and workload that is useful for evaluating new techniques and algorithms for OODBMS implementation. Michael J. Carey 0001, David J. DeWitt, Jeffrey F. Naughton |
SIGMOD Conference | 2 |
| 1993 | Dynamic Memory Allocation for Multiple-Query Workloads
Manish Mehta 0002, David J. DeWitt |
VLDB | 2 |
| 1993 | A Performance Study of Three High Available Data Replication Strategies
Hui-I Hsiao, David J. DeWitt |
Distributed Parallel Databases | 2 |
| 1992 | Crash Recovery in Client-Server EXODUSabstractIn this paper, we address the correctness and performance issues that arise when implementing logging and crash recovery in a page-server environment. The issues result from two characteristics of page-server systems: 1) the fact that data is modified and cached in client database buffers that are not accessible by the server, and 2) the performance and cost trade-offs that are inherent in a client-server environment. We describe a recovery system that we have implemented for the client-server version of the EXODUS storage manager. The implementation supports efficient buffer management policies, allows flexibility in the interaction between clients and the server, and reduces the server load by generating log records at clients. We also present a preliminary performance analysis of the implementation. Michael J. Franklin, Mike Zwilling, C. K. Tan, Michael J. Carey 0001, David J. DeWitt |
SIGMOD Conference | 5 |
| 1992 | A Performance Analysis of Alternative Multi-Attribute Declustering StrategiesabstractDuring the past decade, parallel database systems have gained increased popularity due to their high performance, scalability and availability characteristics. With the predicted future database sizes and the complexity of queries, the scalability of these systems to hundreds and thousands of processors is essential for satisfying the projected demand. Several studies have repeatedly demonstrated that both the performance and scalability of a paralel database system is contingent on the physical layout of data across the processors of the system. If the data is not declustered properly, the execution of an operator might waste resources, reducing the overall processing capability of the system. Shahram Ghandeharizadeh, David J. DeWitt, Waheed Qureshi |
SIGMOD Conference | 2 |
| 1992 | A Transformation-Based Approach to Optimizing Loops in Database Programming LanguagesabstractDatabase programming languages like O2, E, and O++ include the ability to iterate through a set. Nested iterators can be used to express joins. This paper describes compile-time optimizations similar to relational transformations like join reordering for such programming constructs. This paper also shows how to use a standard transformation-based optimizer to optimize these joins. An optimizer built using the EXODUS Optimizer Generator [GRAE87] was added to the Bell Labs O++ [AGRA89] compiler. We used the resulting optimizing compiler to experimentally validate the ideas in this paper. The experiments show that this technique can significantly improve the performance of database programming languages. Daniel F. Lieuwen, David J. DeWitt |
SIGMOD Conference | 2 |
| 1992 | Practical Skew Handling in Parallel Joins
David J. DeWitt, Jeffrey F. Naughton, Donovan A. Schneider, S. Seshadri |
VLDB | 1 |
| 1992 | A Performance Study of Alternative Object Faulting and Pointer Swizzling Strategies
Seth J. White, David J. DeWitt |
VLDB | 2 |
| 1991 | Algebraic Support for Complex Objects with Arrays, Identity, and InheritanceabstractAlgebraic query processing and optimization for relational databases is a proven and reasonably well-understood technology.Recently the algebraic approach has been extended to more advanced data models (nested relations, complex objects, object-oriented systems).Here we continue this evolution by presenting novel algebraic operators and transformations supporting grouping, arrays, references, and multisets.We also propose a new approach to processing and optimizing overridden methods in the presence of multiple inheritance.The utility of Lxsth the algebraic operators and the transformation rules is demonstrated with examples.Object identity is incorporated into the algebraic domains, giving an original, intuitive set-theoretic semantics for the domains of object identifiers in the presence of multiple inheritance.We prove that the algebra is eqtripollent to the QUEL-like user-level query language and discuss some other expressiveness issues. Scott L. Vandenberg, David J. DeWitt |
SIGMOD Conference | 2 |
| 1991 | An Evaluation of Non-Equijoin Algorithms
David J. DeWitt, Jeffrey F. Naughton, Donovan A. Schneider |
VLDB | 1 |
| 1990 | A Multiuser Performance Analysis of Alternative Declustering StrategiesabstractAn analysis is made of the impact of three alternative declustering strategies on the performance of the selection queries using different storage/access structures in a multiuser environment. The authors quantify the tradeoffs of each organization in the context of the Gamma database machine. The response time and throughput of the system are used as the performance metric for evaluating the alternative declustering strategies.> Shahram Ghandeharizadeh, David J. DeWitt |
ICDE | 2 |
| 1990 | Chained Declustering: A New Availability Strategy for Multiprocessor Database MachinesabstractA new strategy for increasing the availability of data in multiprocessor, shared-nothing database machines is presented. This technique, termed chained declustering, is demonstrated to provide superior performance in the event of failures while maintaining a very high degree of data availability. Furthermore, unlike most earlier replication strategies, the implementation of chained declustering requires no special hardware and only minimal modifications to existing software.> Hui-I Hsiao, David J. DeWitt |
ICDE | 2 |
| 1990 | Factors Affecting the Performance of Multiuser Database Management SystemsabstractWhile in the past 20 years database management systems (DBMS) have become a critical component of almost all organizations, their behavior in a multiuser environment has surprisingly not been studied carefully. In order to help us understand the multiuser performance of the multiprocessor Gamma database machine [DEWI90], we began by studying the performance of a single processor version of this system. In this paper, we describe some of the factors that affect the performance of DBMS in a multiuser environment. We refer the interested reader to [GHAN90] for more details. Shahram Ghandeharizadeh, David J. DeWitt |
SIGMETRICS | 2 |
| 1990 | The Object-Oriented Database System Manifesto
Malcolm P. Atkinson 0001, François Bancilhon, David J. DeWitt, Klaus R. Dittrich, David Maier 0001, Stanley B. Zdonik |
SIGMOD Conference | 3 |
| 1990 | A Study of Three Alternative Workstation-Server Architectures for Object Oriented Database Systems
David J. DeWitt, Philippe Futtersack, David Maier 0001, Fernando Vélez |
VLDB | 1 |
| 1990 | Hybrid-Range Partitioning Strategy: A New Declustering Strategy for Multiprocessor Database Machines
Shahram Ghandeharizadeh, David J. DeWitt |
VLDB | 2 |
| 1990 | Tradeoffs in Processing Complex Join Queries via Hashing in Multiprocessor Database Machines
Donovan A. Schneider, David J. DeWitt |
VLDB | 2 |
| 1990 | The Gamma Database Machine ProjectabstractThe design of the Gamma database machine and the techniques employed in its implementation are described. Gamma is a relational database machine currently operating on an Intel iPSC/2 hypercube with 32 processors and 32 disk drives. Gamma employs three key technical ideas which enable the architecture to be scaled to hundreds of processors. First, all relations are horizontally partitioned across multiple disk drives, enabling relations to be scanned in parallel. Second, parallel algorithms based on hashing are used to implement the complex relational operators, such as join and aggregate functions. Third, dataflow scheduling techniques are used to coordinate multioperator queries. By using these techniques, it is possible to control the execution of very complex queries with minimal coordination. The design of the Gamma software is described and a thorough performance evaluation of the iPSC/s hypercube version of Gamma is presented.> David J. DeWitt, Shahram Ghandeharizadeh, Donovan A. Schneider, Allan Bricker, Hui-I Hsiao, Rick Rasmussen |
IEEE Trans. Knowl. Data Eng. | 1 |
| 1989 | A Performance Evaluation of Four Parallel Join Algorithms in a Shared-Nothing Multiprocessor EnvironmentabstractIn this paper we analyze and compare four parallel join algorithms. Grace and Hybrid hash represent the class of hash-based join methods, Simple hash represents a looping algorithm with hashing, and our last algorithm is the more traditional sort-merge. The performance of each of the algorithms with different tuple distribution policies, the addition of bit vector filters, varying amounts of main-memory for joining, and non-uniformly distributed join attribute values is studied. The Hybrid hash-join algorithm is found to be superior except when the join attribute values of the inner relation are non-uniformly distributed and memory is limited. In this case, a more conservative algorithm such as the sort-merge algorithm should be used. The Gamma database machine serves as the host for the performance comparison. Donovan A. Schneider, David J. DeWitt |
SIGMOD Conference | 2 |
| 1988 | Optimization of Multiple-Relation Multiple-Disjunct QueriesabstractIn this paper we discuss the optimization of multiple-relation multiple-disjunct queries in a relational database system. Since optimization techniques for conjunctive (single disjunct) queries in relational databases are well known [Smith75, Wong76, Selinger79, Yao79, Youssefi79], the natural way to evaluate a multiple-disjunct query was to execute each disjunct independently [Bernstein81, Kerschberg82] However, evaluating each disjunct independently may be very inefficient. In this paper, we develop methods that merge two or more disjuncts to form a term. The advantage of merging disjuncts to form terms lies in the fact that each term can be evaluated with a single scan of each relation that is present in the term. In addition, the number of times a join is performed will also be reduced when two or more disjuncts are merged. The criteria for merging a set of disjuncts will be presented. As we will see, the number of times each relation in the query is scanned will be equal to the number of terms. Thus, minimizing the number of terms will minimize the number of scans for each relation. We will formulate the problem of minimizing the number of scans as one of covering a merge graph by a minimum number of complete merge graphs which are a restricted class of Cartesian product graphs. In general, the problem of minimizing the number of scans is NP-complete. We present polynomial time algorithms for special classes of merge graphs. We also present a heuristic for general merge graphs. M. Muralikrishna, David J. DeWitt |
PODS | 2 |
| 1988 | A Data Model and Query Language for EXODUSabstractIn this paper, we present the design of the EXTRA data model and the EXCESS query language for the EXODUS extensible database system. The EXTRA data model includes support for complex objects with shared subobjects, a novel mix of object- and value-oriented semantics for data, support for persistent objects of any type in the EXTRA type lattice, and user-defined abstract data types (ADTs). The EXCESS query language provides facilities for querying and updating complex object structures, and it can be extended through the addition of ADT functions and operators, procedures and functions for manipulating EXTRA schema types, and generic set functions EXTRA and EXCESS are intended to serve as a test vehicle for tools developed under the EXODUS extensible database system project. Michael J. Carey 0001, David J. DeWitt, Scott L. Vandenberg |
SIGMOD Conference | 2 |
| 1988 | A Performance Analysis of the Gamma Database MachineabstractThis paper presents the results of an initial performance evaluation of the Gamma database machine. In our experiments we measured the effect of relation size and indices on response time for selection, join, and aggregation queries, and single-tuple updates. A Teradata DBC/1012 database machine of similar size is used as a basis for interpreting the results obtained. We also analyze the performance of Gemma relative to the number of processors employed and study the impact of varying the memory size and disk page size on the execution time of a variety of selection and join queries. We analyze and interpret the results of these experiments based on our understanding of the system hardware and software, and conclude with an assessment of the strengths and weaknesses of Gamma. David J. DeWitt, Shahram Ghandeharizadeh, Donovan A. Schneider |
SIGMOD Conference | 1 |
| 1988 | Equi-Depth Histograms For Estimating Selectivity Factors For Multi-Dimensional QueriesabstractMulti-dimensional queries commonly occur in databases dealing with geographical, image, and VLSI databases.A typical two dimensional query in a geographical database might involve finding all cities within certain latitudinal and longitudinal bounds.Several multi-dimensional index struc tures for point data have been proposed in the literature.KDB trees [Robinson81] and and Grid files [Nievergelt84] are among the more popular ones.However, there has been no work in designing multi-dimensional histograms to aid in the optimization process using these multi-dimensional index structures.In order for an optimizer to select an appropriate access path for a multi-dimensional query, fairly accurate selectivity estimates must be available to it.Selectivity esti mates are also useful in determining appropriate join methods that follow the selections.In this paper we present an algorithm for generating equi-depth, multi-dimensional histograms.One might expect that the cost of building a D-dimensional histogram would be at least D times the cost of sorting the relation on a single attribute.We show, in our algorithm, that the sorting cost of building a D-dimensional histogram is significantly less than the cost of sorting the relation D times.We present a main memory data structure for storing the histograms and discuss two schemes for estimating the number of tuples that will be "etrieved by a given query.Experimental results are presented that show the efficacy of our histograms.The usefulness of a sampling technique in generating histograms at a very low cost is also explored. Related WorkThe System R optimizer [Selinger79] used simple statis tics, such as the minimum and maximum values in a given column, to estimate selectivity factors.Using such simple statistics will produce good selectivity estimates only if the attribute values are uniformly distributed.Since attribute values can have other distributions, it has become M. Muralikrishna, David J. DeWitt |
SIGMOD Conference | 2 |
| 1987 | The EXODUS Optimizer GeneratorabstractThis paper presents the design and an initial performance evaluation of the query optimizer generator designed for the EXODUS extensible database system. Algebraic transformation rules are translated into an executable query optimizer, which transforms query trees and selects methods for executing operations according to cost functions associated with the methods. The search strategy avoids exhaustive search and it modifies itself to take advantage of past experience. Computational results show that an optimizer generated for a relational system produces access plans almost as good as those produced by exhaustive search, with the search time cut to a small fraction. Goetz Graefe, David J. DeWitt |
SIGMOD Conference | 2 |
| 1987 | The Crystal Multicomputer: Design and Implementation ExperienceabstractThis paper presents an overview of the hardware and software components of the Crystal multicomputer project. The goal of the Crystal project is to design and implement a vehicle that serves a variety of research projects involving distributed computation. Crystal can be used simultaneously by multiple research projects by partitioning the available processors according to the requirements of each project. Users can employ the Crystal multicomputer in several ways. Projects such as operating systems and database machines that need direct control of processor resources (clock, memory management, communication devices) can be implemented using a reliable communication service (the "nugget" that resides on each node processor. Projects that prefer a higher-level interface can be implemented using the Charlotte distributed operating system. Finally, users interested in Crystal principally as a cycle server can run UNIX® jobs on node machines using the "remote" unix service. Development, debugging, and execution of projects can take place remotely under the control of any of several UNIX hosts. Acquiring a partition of machines, resetting each machine, and then loading an application onto each machine is performed by invoking a UNIX-resident program (the "nuggetmaster"). Communication with node machines in a partition is facilitated by a virtual terminal and window mechanism. Crystal is fully operational and has been used to support a variety of research projects. To illustrate the flexibility provided by the Crystal environment, four of these projects are described. David J. DeWitt, Raphael A. Finkel, Marvin H. Solomon |
IEEE Trans. Software Eng. | 1 |
| 1986 | Object and File Management in the EXODUS Extensible Database System
Michael J. Carey 0001, David J. DeWitt, Joel E. Richardson, Eugene J. Shekita |
VLDB | 2 |
| 1986 | GAMMA - A High Performance Dataflow Database Machine
David J. DeWitt, Robert H. Gerber, Goetz Graefe, Michael L. Heytens, Krishna B. Kumar, M. Muralikrishna |
VLDB | 1 |
| 1986 | An Evaluation of Buffer Management Strategies for Relational Database Systems
Hong-Tai Chou, David J. DeWitt |
Algorithmica | 2 |
| 1985 | Recovery Architectures for Multiprocessor Database MachinesabstractDunng the past decade.a number of database machme designs have been proposed Most of these desagns have been optamlzed wrth respect to retrreval querres, whrle rgnormg the issue of recovery and tts Impact on performance of the proposed archztecture In this paper, we propose several parallel recovery architectures for multaprocessor database machmes, examme the characterrstacs and performance of each, and evaluate thear Impact on the performance of the database machme Our results rndlcate that a recovery archatecture based on parallel loggmg has the best overall performance 1. llltroduction Rakesh Agrawal 0001, David J. DeWitt |
SIGMOD Conference | 2 |
| 1985 | An Evaluation of Buffer Management Strategies for Relational Database Systems
Hong-Tai Chou, David J. DeWitt |
VLDB | 2 |
| 1985 | Multiprocessor Hash-Based Join Algorithms
David J. DeWitt, Robert H. Gerber |
VLDB | 1 |
| 1985 | Design and Implementation of the Wisconsin Storage SystemabstractAbstract We describe the implementation of a flexible data storage system for the UNIX environment that has been designed as an experimental vehicle for building database management systems. The storage component forms a foundation upon which a variety of database systems can be constructed including support for unconventional types of data. We describe the system architecture, the design decisions incorporated within its implementation, our experiences in developing this large piece of software, and the applications that have been built on top of it. Hong-Tai Chou, David J. DeWitt, Randy H. Katz, Anthony C. Klug |
Softw. Pract. Exp. | 2 |
| 1985 | Integrated Concurrency Control and Recovery Mechanisms: Design and Performance EvaluationabstractIn spite of the wide variety of concurrency control and recovery mechanisms proposed during the past decade, the behavior and the performance of various concurrency control and recovery mechanisms remain largely not well understood. In addition, although concurrency control and recovery mechanisms are intimately related, the interaction between them has not been adequately explored. In this paper, we take a unified view of the problems associated with concurrency control and recovery for transaction-oriented multiuser centralized database management systems, and we present several integrated mechanisms. We then develop analytical models to study the behavior and compare the performance of these integrated mechanisms, and we present the results of our performance evaluation. Rakesh Agrawal 0001, David J. DeWitt |
ACM Trans. Database Syst. | 2 |
| 1985 | Efficient Support of Statistical OperationsabstractMost research in statistical databases has concentrated on retrieval, sampling, and aggregation type statistical queries. Data management issues associated with computational statistical operations have been ignored. As a first step towards integrating database management support of statistical operations, we have analyzed the performance of X'X, the QR decomposition, and the Singular Value Factorization. Alternative implementation strategies with respect to the relational and transposed storage organizations are developed. Implementation strategies corresponding to vector building block, vector-matrix, and direct algorithms with explicit buffer management are compared in terms of efficiency in performance. Setrag Khoshafian, Douglas M. Bates, David J. DeWitt |
IEEE Trans. Software Eng. | 3 |
| 1984 | A Methodology for Database System Performance EvaluationabstractThis paper presents a methodology for evaluating the performance of database management systems and database machines in a multiuser environment. Three main factors that affect transaction throughput in a multiuser environment are identified: multiprogramming level, degree of data sharing among simultaneously executing transactions, and transaction mix. We demonstrate that only four basic query types are needed to construct a benchmark that will evaluate the performance of a system under a wide variety of workloads. Finally, we present the results of applying our techniques to the Britton-Lee IDM 500 database machine Haran Boral, David J. DeWitt |
SIGMOD Conference | 2 |
| 1984 | Implementation Techniques for Main Memory Database SystemsabstractWith 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 Conference | 1 |
| 1983 | Benchmarking Database Systems A Systematic Approach
Dina Bitton, David J. DeWitt, Carolyn Turbyfill |
VLDB | 2 |
| 1983 | Updating Hypothetical Data Bases
Rakesh Agrawal 0001, David J. DeWitt |
Inf. Process. Lett. | 2 |
| 1983 | Parallel Algorithms for the Execution of Relational Database OperationsabstractThis paper presents and analyzes algorithms for parallel processing of relational database operations in a general multiprocessor framework. To analyze alternative algorithms, we introduce an analysis methodology which incorporates I/O, CPU, and message costs and which can be adjusted to fit different multiprocessor architectures. Algorithms are presented and analyzed for sorting, projection, and join operations. While some of these algorithms have been presented and analyzed previously, we have generalized each in order to handle the case where the number of pages is significantly larger than the number of processors. In addition, we present and analyze algorithms for the parallel execution of update and aggregate operations. Dina Bitton, Haran Boral, David J. DeWitt, Kevin Wilkinson |
ACM Trans. Database Syst. | 3 |
| 1983 | Duplicate Record Elimination in Large Data FilesabstractThe issue of duplicate elimination for large data files in which many occurrences of the same record may appear is addressed. A comprehensive cost analysis of the duplicate elimination operation is presented. This analysis is based on a combinatorial model developed for estimating the size of intermediate runs produced by a modified merge-sort procedure. The performance of this modified merge-sort procedure is demonstrated to be significantly superior to the standard duplicate elimination technique of sorting followed by a sequential pass to locate duplicate records. The results can also be used to provide critical input to a query optimizer in a relational database system. Dina Bitton, David J. DeWitt |
ACM Trans. Database Syst. | 2 |
| 1982 | A Framework for Research in Database Management for Statistical AnalysisabstractThis paper is intended to introduce those familiar with database management issues to the problems of managing large statistical databases. We begin with a characterization of statistical databases based on the structure and use of the data in the database. Several data management problems are then described. In particular, we discuss the problem of repetitive computations on large segments of the database during the lifetime of a statistical analysis. The organization of a data management system which avoids this problem by caching previously computed results and automatically maintaining their integrity is presented. We conclude with a list of problems that this organization raises and a discussion of related work. Douglas M. Bates, Haran Boral, David J. DeWitt |
SIGMOD Conference | 3 |
| 1982 | Performance evaluation of four assiciative disk designs
Haran Boral, David J. DeWitt, Kevin Wilkinson |
Inf. Syst. | 2 |
| 1982 | The Impact of Run-Time Schema Interpretation in a Network Data Model DBMSabstractThis paper describes a simulation study of the effect of runtime schema interpretation in a network data model database management system. To perform database operations, programmers use a data manipulation language which supports calls to the data manipulation routines. The data manipulation routines utilize database descriptors from the schema to determine which operations on the database are to be performed for a given actual parameter to the procedure. Current database systems perform the binding of schema descriptors in the data manipulation routines at run-time by interpretation. A niumber of researchers are studying methods to precompute the information required to determine the correct function to execute rather than using run-time interpretation. A. James Baroody Jr., David J. DeWitt |
IEEE Trans. Software Eng. | 2 |
| 1982 | Implementation of the Database Machine DIRECTabstractDIRECT is a multiprocessor database machine designed and implemented at the University of Wisconsin. This paper describes our experiences with the implementation of DIRECT. We start with a brief overview of the original machine proposal and how it differs from what was actually implemented. We then describe the structure of the DIRECT software. This includes software on host computers that interfaces with the database machine; software on the back-end controller of DIRECT; and software executed by the query processors. In addition to describing the structure of the software we will attempt to motivate and justify its design and implementation. We also discuss a number of implementation issues (e.g., debugging of the code across several machines). We conclude the paper with a list of the "lessons" we have learned from this experience. Haran Boral, David J. DeWitt, Dina Friedland, Nancy F. Jarrell, Kevin Wilkinson |
IEEE Trans. Software Eng. | 2 |
| 1982 | Performance Analysis of Alternative Database Machine ArchitecturesabstractThe rapid advances in the development of low-cost computer hardware have led to many proposals for the use of this hardware to improve the performance of database management systems. Usually the design proposals are quite vague about the performance of the system with respect to a given data management application. In this paper we predict the performance of several of the proposed database management machines with respect to several representative INGRES queries. The systems analyzed in this paper include associative disks, RAP, CASSM, DBC, DIRECT, and CAFS. We demonstrate that no one database machine is best for executing all types of queries. We will also show that for one class of queries the degree of performance improvement achieved does not warrant use of a database machine. Paula B. Hawthorn, David J. DeWitt |
IEEE Trans. Software Eng. | 2 |
| 1981 | A Performance Evaluation of Data Base Machine Architectures (Invited Paper)
David J. DeWitt, Paula B. Hawthorn |
VLDB | 1 |
| 1981 | An Object-Oriented Approach to Database System ImplementationabstractThis paper examines object-oriented programming as an implementation technique for database systems. The object-oriented approach encapsulates the representations of database entities and relationships with the procedures that manipulate them. To achieve this, we first define abstractions of the modeling constructs of the data model that describe their common properties and behavior. Then we represent the entity types and relationship types in the conceptual schema and the internal schema by objects that are instances of these abstractions. The generic procedures (data manipulation routines) that comprise the user interface can now be implemented as calls to the procedures associated with these objects. A generic procedure model of database implementation techniques is presented and discussed. Several current database system implementation techniques are illustrated as examples of this model, followed by a critical analysis of our implementation technique based on the use of objects. We demonstrate that the object-oriented approach has advantages of data independence, run-time efficiency due to eliminating access to system descriptors, and support for low-level views. A. James Baroody Jr., David J. DeWitt |
ACM Trans. Database Syst. | 2 |
| 1981 | Processor Allocation Strategies for Multiprocessor Database MachinesabstractIn this paper four alternative strategies for assigning processors to queries in multiprocessor database machines are described and evaluated. The results demonstrate that SIMD database machines are indeed a poor design when their performance is compared with that of the three MIMD strategies presented. Also introduced is the application of data-flow machine techniques to the processing of relational algebra queries. A strategy that employs data-flow techniques is shown to be superior to the other strategies described by several experiments. Furthermore, if the data-flow query processing strategy is employed, the results indicate that a two-level storage hierarchy (in which relations are paged between a shared data cache and mass storage) does not have a significant impact on performance. Haran Boral, David J. DeWitt |
ACM Trans. Database Syst. | 2 |
| 1980 | Design Considerations for Data-flow Database MachinesabstractThis paper presents a discussion of the application of data-flow machine concepts to the design and implementation of database machines which execute relational algebra queries. We analyze the performance of multiprocessor nested-loops and sort-merge join algorithms and show that the nested-loops algorithm is generally superior. Three levels of operand granularity for data-flow database machines are introduced and compared using the nested-loops join algorithm. We demonstrate that relation-level granularity is too coarse and that tuple-level granularity is too fine. The third level of granularity, a page of a relation, is shown to be the best choice from both hardware and software viewpoints. Finally a preliminary design for a data-flow database machine which utilizes page-level granularity and supports distributed control of instruction execution is presented. (Author) Haran Boral, David J. DeWitt |
SIGMOD Conference | 2 |
| 1979 | Query Execution in DIRECTabstractIn this paper query organization, execution, and optimization in the database machine DIRECT are discussed. We demonstrate that the use of a monitor for each relation referenced by a query along with the use of the NEXT PAGE construct permits the DIRECT back-end controller to assign a query to any number of processors for execution. Furthermore, these constructs also permit the controller to balance the load in the back-end by dynamically adjusting how many processors are assigned to each executing query.We also identify the problem of relation fragmentation which occurs when a query is executed by several processors in parallel and develop a technique for estimating the optimal number of processors to compress a relation so that the execution time of the entire query is minimized. These results appear to be applicable to all database machines which employ parallel processing techniques to enhance query execution. David J. DeWitt |
SIGMOD Conference | 1 |
| 1979 | DIRECT - A Multiprocessor Organization for Supporting Relational Database Management SystemsabstractThe design of DIRECT, a multiprocessor organization for supporting relational database management systems is presented. DIRECT has a multiple-instruction multiple-data stream (MIMD) architecture. It can simultaneously support both intra-query and inter-query concurrency. The number of processors assigned to a query is dynamically determined by the priority of the query, the type and number of relational algebra operations it contains, and the size of the relations referenced. Since DIRECT iS a virtual memory machine, the maximum relation size is not limited to that of the associative memory as in some other database machines. Concurrent updates are controlled through the use of locks on relations which are maintained by a controlling processor. David J. DeWitt |
IEEE Trans. Computers | 1 |
| 1978 | DIRECT - A Multiprocessor Organization for Supporting Relational Data Base Management SystemsabstractThe design of DIRECT, a multiprocessor organization for supporting relational data base management systems is presented. DIRECT has a MIMD (multiple instruction stream, multiple data stream) architecture. It can simultaneously support both intra-query and inter-query concurrency. The number of processors assigned to a query is dynamically determined by the priority of the query and the size of the relations it references. The size of a relation is not limited to that of the associative memory as in some previous data base machines. Concurrent updates are controlled through address translation tables which are maintained by a controlling processor. David J. DeWitt |
ISCA | 1 |