Demo Data from EDBT 2026 / reviewers in the wild / expert
Shivnath Babu
dblp:b/ShivnathBabu
· DBLP profile ↗
74ranked-venue papers
14as first author
0since 2021 · last 2020
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Databases, data management, data science and information retrieval · 68 · 12 first-authorSystems, architecture and hardware · 6 · 2 first-authorArtificial intelligence and machine learning · 2Software engineering, systems software and programming languages · 1 · 1 first-author
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
29 papers |
Cloud and datacenter computing · 60% Performance modeling and evaluation · 15% Storage systems · 8% | |
| Databases, data mining, and information retrieval
48 papers |
Database system architecture and tuning · 40% Query processing and optimization · 28% Data stream processing · 12% | |
| Software engineering, system software, and programming languages
5 papers |
Operating systems · 50% Debugging and program repair · 36% Runtime systems and virtual machines · 14% |
Topics — the 30 heaviest of 102, 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 | 6 | 2020 | iQCAR: inter-Query Contention Analyzer for Data Analytics Frameworks · SIGMOD Conference 2019 iQCAR: A Demonstration of an Inter-Query Contention Analyzer for Cluster Computing Frameworks · SIGMOD Conference 2018 Cumulon: Matrix-Based Data Analytics in the Cloud with Spot Instances · Proc. VLDB Endow. 2015 |
Cloud and datacenter computing › cluster resource management and scheduling
cluster resource management |
1.0 | 4 | 2019 | MIFO: A Query-Semantic Aware Resource Allocation Policy · SIGMOD Conference 2019 Thoth in Action: Memory Management in Modern Data Analytics · Proc. VLDB Endow. 2017 Thoth: Towards Managing a Multi-System Cluster · Proc. VLDB Endow. 2014 |
Performance modeling and evaluation
workload characterization |
0.6 | 4 | 2019 | iQCAR: inter-Query Contention Analyzer for Data Analytics Frameworks · SIGMOD Conference 2019 iQCAR: A Demonstration of an Inter-Query Contention Analyzer for Cluster Computing Frameworks · SIGMOD Conference 2018 QShuffler: Getting the Query Mix Right · ICDE 2008 |
Database system architecture and tuning
configuration tuning |
0.6 | 3 | 2019 | Speedup Your Analytics: Automatic Parameter Tuning for Databases and Big Data Systems · Proc. VLDB Endow. 2019 iTuned: a tool for configuring and visualizing database parameters · SIGMOD Conference 2010 Tuning Database Configuration Parameters with iTuned · Proc. VLDB Endow. 2009 |
Data stream processing
continuous query processing |
0.5 | 8 | 2013 | Execution and optimization of continuous queries with cyclops · SIGMOD Conference 2013 The CQL continuous query language: semantic foundations and query execution · VLDB J. 2006 Adaptive Caching for Continuous Queries · ICDE 2005 |
Parallel and multicore computing › data-parallel programming
mapreduce |
0.4 | 3 | 2012 | Stubby: A Transformation-based Optimizer for MapReduce Workflows · Proc. VLDB Endow. 2012 MapReduce Programming and Cost-based Optimization? Crossing this Chasm with Starfish · Proc. VLDB Endow. 2011 Profiling, What-if Analysis, and Cost-based Optimization of MapReduce Programs · Proc. VLDB Endow. 2011 |
Database system architecture and tuning › configuration tuning
automatic parameter tuning |
0.4 | 1 | 2019 | Speedup Your Analytics: Automatic Parameter Tuning for Databases and Big Data Systems · Proc. VLDB Endow. 2019 |
Database system architecture and tuning › self-managing database systems
database diagnosis |
0.4 | 4 | 2009 | DIADS: A Problem Diagnosis Tool for Databases and Storage Area Networks · Proc. VLDB Endow. 2009 Fa: A System for Automating Failure Diagnosis · ICDE 2009 Automated Diagnosis of System Failures with Fa · ICDE 2009 |
Cloud and datacenter computing
big data platform |
0.4 | 1 | 2019 | Cost-Effective, Workload-Adaptive Migration of Big Data Applications to the Cloud · SIGMOD Conference 2019 |
Cloud and datacenter computing
cloud migration |
0.4 | 1 | 2019 | Cost-Effective, Workload-Adaptive Migration of Big Data Applications to the Cloud · SIGMOD Conference 2019 |
Cloud and datacenter computing › resource management
workload management |
0.3 | 2 | 2013 | Workload management for big data analytics · SIGMOD Conference 2013 Workload management for Big Data analytics · ICDE 2013 |
Cloud and datacenter computing
resource management |
0.3 | 2 | 2016 | Tempo: Robust and Self-Tuning Resource Management in Multi-tenant Parallel Databases · Proc. VLDB Endow. 2016 On Suspending and Resuming Dataflows · ICDE 2007 |
Operating systems › resource management
memory management |
0.3 | 1 | 2017 | Thoth in Action: Memory Management in Modern Data Analytics · Proc. VLDB Endow. 2017 |
Memory systems
memory management |
0.3 | 1 | 2017 | Thoth in Action: Memory Management in Modern Data Analytics · Proc. VLDB Endow. 2017 |
High-performance computing
cost-based optimization |
0.2 | 2 | 2011 | MapReduce Programming and Cost-based Optimization? Crossing this Chasm with Starfish · Proc. VLDB Endow. 2011 Profiling, What-if Analysis, and Cost-based Optimization of MapReduce Programs · Proc. VLDB Endow. 2011 |
Storage systems › storage reliability › data corruption
data corruption detection and repair |
0.2 | 2 | 2011 | Proactive Detection and Repair of Data Corruption: Towards a Hassle-free Declarative Approach with Amulet · Proc. VLDB Endow. 2011 Warding off the dangers of data corruption with amulet · SIGMOD Conference 2011 |
Cloud and datacenter computing › multi-tenancy
multi-tenant database |
0.2 | 1 | 2016 | Tempo: Robust and Self-Tuning Resource Management in Multi-tenant Parallel Databases · Proc. VLDB Endow. 2016 |
Performance modeling and evaluation
profiling |
0.2 | 2 | 2011 | MapReduce Programming and Cost-based Optimization? Crossing this Chasm with Starfish · Proc. VLDB Endow. 2011 Profiling, What-if Analysis, and Cost-based Optimization of MapReduce Programs · Proc. VLDB Endow. 2011 |
Storage systems
storage reliability |
0.2 | 2 | 2011 | Proactive Detection and Repair of Data Corruption: Towards a Hassle-free Declarative Approach with Amulet · Proc. VLDB Endow. 2011 Warding off the dangers of data corruption with amulet · SIGMOD Conference 2011 |
Performance modeling and evaluation
what-if analysis |
0.2 | 2 | 2011 | MapReduce Programming and Cost-based Optimization? Crossing this Chasm with Starfish · Proc. VLDB Endow. 2011 Profiling, What-if Analysis, and Cost-based Optimization of MapReduce Programs · Proc. VLDB Endow. 2011 |
Query processing and optimization
query optimization |
0.2 | 2 | 2011 | Query optimization techniques for partitioned tables · SIGMOD Conference 2011 Xplus: A SQL-Tuning-Aware Query Optimizer · Proc. VLDB Endow. 2010 |
Database system architecture and tuning › workload management
workload scheduling |
0.2 | 2 | 2011 | Interaction-aware scheduling of report-generation workloads · VLDB J. 2011 Interaction-aware prediction of business intelligence workload completion times · ICDE 2010 |
Distributed and cloud data management › big data systems
SQL-on-Hadoop |
0.2 | 1 | 2015 | Tutorial: SQL-on-Hadoop Systems · Proc. VLDB Endow. 2015 |
Cloud and datacenter computing › job scheduling › economic scheduling
cost-aware scheduling |
0.2 | 1 | 2015 | Cumulon: Matrix-Based Data Analytics in the Cloud with Spot Instances · Proc. VLDB Endow. 2015 |
Cloud and datacenter computing › utility computing › cloud pricing
spot instance |
0.2 | 1 | 2015 | Cumulon: Matrix-Based Data Analytics in the Cloud with Spot Instances · Proc. VLDB Endow. 2015 |
Debugging and program repair
root cause analysis |
0.2 | 2 | 2009 | Fa: A System for Automating Failure Diagnosis · ICDE 2009 Automated Diagnosis of System Failures with Fa · ICDE 2009 |
Query processing and optimization
query execution |
0.2 | 3 | 2010 | Query suspend and resume · SIGMOD Conference 2007 On Suspending and Resuming Dataflows · ICDE 2007 Xplus: A SQL-Tuning-Aware Query Optimizer · Proc. VLDB Endow. 2010 |
Query processing and optimization › query optimization
cost-based optimization |
0.2 | 1 | 2013 | Cumulon: optimizing statistical data analysis in the cloud · SIGMOD Conference 2013 |
Query processing and optimization
parallel query processing |
0.2 | 1 | 2013 | Workload management for Big Data analytics · ICDE 2013 |
Query processing and optimization
adaptive query processing |
0.1 | 3 | 2005 | Adaptive Caching for Continuous Queries · ICDE 2005 StreaMon: An Adaptive Engine for Stream Query Processing · SIGMOD Conference 2004 Adaptive Ordering of Pipelined Stream Filters · SIGMOD Conference 2004 |
Methods — techniques the papers use, named apart from their topics
directed acyclic graph modeling · 1.1machine learning · 1.1cost modeling · 1.0deep distributed policy gradient · 0.9bayesian optimization · 0.9analytical modeling · 0.9simulation-based tuning · 0.8rule-based tuning · 0.8experiment-driven tuning · 0.8adaptive tuning · 0.8multi-system cluster management · 0.3memory profiling · 0.3confidence estimation · 0.1clustering · 0.1classification · 0.1automated repair · 0.1automated diagnosis · 0.1anomaly-based clustering · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2020 | Black or White? How to Develop an AutoTuner for Memory-based AnalyticsabstractThere is a lot of interest today in building autonomous (or, self-driving) data processing systems. An emerging school of thought is to leverage AI-driven "black box" algorithms for this purpose. In this paper, we present a contrarian view. We study the problem of autotuning the memory allocation for applications running on modern distributed data processing systems. We show that an empirically-driven "white-box" algorithm, called RelM, that we have developed provides a close-to-optimal tuning at a fraction of the overheads compared to state-of-the-art AI-driven "black box" algorithms, namely, Bayesian Optimization (BO) and Deep Distributed Policy Gradient (DDPG). The main reason for RelM's superior performance is that the memory management in modern memory-based data analytics systems is an interplay of algorithms at multiple levels: (i) at the resource-management level across various containers allocated by resource managers like Kubernetes and YARN, (ii) at the container level among the OS, pods, and processes such as the Java Virtual Machine (JVM), (iii) at the application level for caching, aggregation, data shuffles, and application data structures, and (iv) at the JVM level across various pools such as the Young and Old Generation. RelM understands these interactions and uses them in building an analytical solution to autotune the memory management knobs. In another contribution, called Guided-BO (GBO), we use RelM's analytical models to speed up BO. Through an evaluation based on Apache Spark, we showcase that the RelM's recommendations are significantly better than what commonly-used Spark deployments provide, and are close to the ones obtained by brute-force exploration; while GBO provides optimality guarantees for a higher, but still significantly lower cost overhead compared to the state-of-the-art AI-driven policies. Mayuresh Kunjir, Shivnath Babu |
SIGMOD Conference | 2 |
| 2019 | Automated Performance Management for the Big Data Stack
Anastasios Arvanitis, Shivnath Babu, Eric Chu, Alkis Simitsis, Kevin Wilkinson |
CIDR | 2 |
| 2019 | Cost-Effective, Workload-Adaptive Migration of Big Data Applications to the CloudabstractMore than 10,000 enterprises worldwide use the big data stack composed of multiple distributed systems. At Unravel, we build the next-generation APM platform for the big data stack, and we have worked with a representative sample of these enterprises that covers most industry verticals. This sample covers the spectrum of choices for deploying the big data stack across on-premises datacenters, private and public cloud deployments, and hybrid combinations of these. In this paper, we present a solution for assisting enterprises planning the migration of their big data stacks from on-premises deployments to the cloud. Our solution is goal driven and adapts to various migration scenarios. We present the system architecture we built and several cloud mapping options. We also describe a demonstration script that involves practical, real-world use-cases of the path to cloud adoption. Victor Giannakouris, Alejandro Fernandez, Alkis Simitsis, Shivnath Babu |
SIGMOD Conference | 4 |
| 2019 | MIFO: A Query-Semantic Aware Resource Allocation PolicyabstractData Analytics Frameworks encourage sharing of clusters for execution of mixed workloads by promising fairness and isolation along with high performance and resource utilization. However, concurrent query executions on such shared clusters result in increased queue and resource waiting times for queries affecting their overall performance. MIFO is a dataflow aware scheduling policy that mitigates the impacts due to queue and resource contentions by reducing the waiting times for queries near completion. We present heuristics that exploit query semantics to proactively trigger MIFO-based allocations in a workload. Our experiments on Apache Spark using TPCDS benchmark show that compared to a FAIR policy, MIFO provides an improved mean response time, reduced makespan of the workload and average speedup between 1.2x-2.7x in highly concurrent setting with only a momentary deviation in fairness. Prajakta Kalmegh, Shivnath Babu |
SIGMOD Conference | 2 |
| 2019 | iQCAR: inter-Query Contention Analyzer for Data Analytics FrameworksabstractResource interferences caused by concurrent queries is one of the key reasons for unpredictable performance and missed workload SLAs in cluster computing systems. Analyzing these inter-query resource interactions is critical in order to answer time-sensitive questions like 'who is creating resource conflicts to my query'. More importantly, diagnosing whether the resource blocked times of a 'victim' query are caused by other queries or some other external factor can help the database administrator narrow down the many possibilities of query performance degradation. We introduce iQCAR, an inter-Query Contention Analyzer, that attributes blame for the slowdown of a query to concurrent queries. iQCAR models the resource conflicts using a multi-level directed acyclic graph that can help administrators compare impacts from concurrent queries, identify most contentious queries, resources and hosts in an online execution for a selected time window. Our experiments using TPCDS queries on Apache Spark show that our approach is substantially more accurate than other methods based on overlap time between concurrent queries. Prajakta Kalmegh, Shivnath Babu, Sudeepa Roy 0001 |
SIGMOD Conference | 2 |
| 2019 | Speedup Your Analytics: Automatic Parameter Tuning for Databases and Big Data SystemsabstractDatabase and big data analytics systems such as Hadoop and Spark have a large number of configuration parameters that control memory distribution, I/O optimization, parallelism, and compression. Improper parameter settings can cause significant performance degradation and stability issues. However, regular users and even expert administrators struggle to understand and tune them to achieve good performance. In this tutorial, we review existing approaches on automatic parameter tuning for databases, Hadoop, and Spark, which we classify into six categories: rule-based, cost modeling, simulation-based, experiment-driven, machine learning, and adaptive tuning. We describe the foundations of different automatic parameter tuning algorithms and present pros and cons of each approach. We also highlight real-world applications and systems, and identify research challenges for handling cloud services, resource heterogeneity, and real-time analytics. Jiaheng Lu, Yuxing Chen 0003, Herodotos Herodotou, Shivnath Babu |
Proc. VLDB Endow. | 4 |
| 2018 | iQCAR: Inter-Query Contention AnalyzerabstractThere are many approaches in use today to either prevent or minimize the impact of inter-query interactions on a shared cluster. Preventive measures often provide query execution isolation at the resource allocation level to guarantee a predictable query performance. Despite these measures, performance issues due to concurrent executions of mixed workloads are a common problem in large scale data processing systems. As a result, answering questions like who is causing my query to slowdown is important to diagnose resource conflicts in a multi-tenant environment for accurate blame attribution. However, accurate analysis of resource contention is challenging owing to a complex cause-effect relationship between resource utilization and runtime of concurrent queries (see Figure 1). For example, when some tasks get delayed because of a high demand for a particular resource (e.g. if they are blocked on CPU), they hold on to other resources (e.g. memory) as well, thus causing contention for other concurrently running queries on the held resources. Based on our user-study experience, this process is non-trivial and tedious, and involves hours of manually debugging through a cycle of query interactions. Prajakta Kalmegh, Shivnath Babu, Sudeepa Roy 0001 |
SoCC | 2 |
| 2018 | iQCAR: A Demonstration of an Inter-Query Contention Analyzer for Cluster Computing FrameworksabstractUnpredictability in query runtimes can arise in a shared cluster as a result of resource contentions caused by inter-query interactions. iQCAR - inter Query Contention AnalyzeR is a system that formally models these interferences between concurrent queries and provides a framework to attribute blame for contentions. iQCAR leverages a multi-level directed acyclic graph called iQCAR-Graph to diagnose the aberrations in query schedules that lead to these resource contentions. The demonstration will enable users to perform a step-wise deep exploration of such resource contentions faced by a query at various stages of its execution. The interface will allow users to identify top-k victims and sources of contentions, diagnose high-contention nodes and resources in the cluster, and rank their impacts on the performance of a query. Users will also be able to navigate through a set of rules recommended by iQCAR to compare how application of each rule by the cluster scheduler resolves the contentions in subsequent executions. Prajakta Kalmegh, Harrison Lundberg, Frederick Xu, Shivnath Babu, Sudeepa Roy 0001 |
SIGMOD Conference | 4 |
| 2017 | ROBUS: Fair Cache Allocation for Data-parallel WorkloadsabstractSystems for processing big data---e.g., Hadoop, Spark, and massively parallel databases---need to run workloads on behalf of multiple tenants simultaneously. The abundant disk-based storage in these systems is usually complemented by a smaller, but much faster, cache. Cache is a precious resource: Tenants who get to use the cache can see two orders of magnitude performance improvement. Cache is also a limited and hence shared resource: Unlike a resource like a CPU core which can be used by only one tenant at a time, a cached data item can be accessed by multiple tenants at the same time. Cache, therefore, has to be shared by a multi-tenancy-aware policy across tenants, each having a unique set of priorities and workload characteristics. Mayuresh Kunjir, Brandon Fain, Kamesh Munagala, Shivnath Babu |
SIGMOD Conference | 4 |
| 2017 | Thoth in Action: Memory Management in Modern Data AnalyticsabstractAllocation and usage of memory in modern data-processing platforms is based on an interplay of algorithms at multiple levels: (i) at the resource-management level across containers allocated by resource managers like Mesos and Yarn, (ii) at the container level among the OS and processes such as the Java Virtual Machine (JVM), (iii) at the framework level for caching, aggregation, data shuffles, and application data structures, and (iv) at the JVM level across various pools such as the Young and Old Generation as well as the heap versus off-heap. We use Thoth, a data-driven platform for multi-system cluster management, to build a deep understanding of different interplays in memory management options. Through multiple memory management apps built in Thoth, we demonstrate how Thoth can deal with multiple levels of memory management as well as multi-tenant nature of clusters. Mayuresh Kunjir, Shivnath Babu |
Proc. VLDB Endow. | 2 |
| 2016 | Tempo: Robust and Self-Tuning Resource Management in Multi-tenant Parallel DatabasesabstractMulti-tenant database systems have a component called the Resource Manager, or RM that is responsible for allocating resources to tenants. RMs today do not provide direct support for performance objectives such as: "Average job response time of tenant A must be less than two minutes", or "No more than 5% of tenant B's jobs can miss the deadline of 1 hour." Thus, DBAs have to tinker with the RM's low-level configuration settings to meet such objectives. We propose a framework called Tempo that brings simplicity , self-tuning , and robustness to existing RMs. Tempo provides a simple interface for DBAs to specify performance objectives declaratively, and optimizes the RM configuration settings to meet these objectives. Tempo has a solid theoretical foundation which gives key robustness guarantees. We report experiments done on Tempo using production traces of data-processing workloads from companies such as Facebook and Cloudera. These experiments demonstrate significant improvements in meeting desired performance objectives over RM configuration settings specified by human experts. Zilong Tan, Shivnath Babu |
Proc. VLDB Endow. | 2 |
| 2015 | Tutorial: SQL-on-Hadoop SystemsabstractEnterprises are increasingly using Apache Hadoop, more specifically HDFS, as a central repository for all their data; data coming from various sources, including operational systems, social media and the web, sensors and smart devices, as well as their applications. At the same time many enterprise data management tools (e.g. from SAP ERP and SAS to Tableau) rely on SQL and many enterprise users are familiar and comfortable with SQL. As a result, SQL processing over Hadoop data has gained significant traction over the recent years, and the number of systems that provide such capability has increased significantly. In this tutorial we use the term SQL-on-Hadoop to refer to systems that provide some level of declarative SQL(-like) processing over HDFS and noSQL data sources, using architectures that include computational or storage engines compatible with Apache Hadoop. Daniel J. Abadi, Shivnath Babu, Fatma Özcan 0001, Ippokratis Pandis |
Proc. VLDB Endow. | 2 |
| 2015 | Cumulon: Matrix-Based Data Analytics in the Cloud with Spot InstancesabstractWe describe Cümülön, a system aimed at helping users develop and deploy matrix-based data analysis programs in a public cloud. A key feature of Cümülön is its end-to-end support for the so-called spot instances ---machines whose market price fluctuates over time but is usually much lower than the regular fixed price. A user sets a bid price when acquiring spot instances, and loses them as soon as the market price exceeds the bid price. While spot instances can potentially save cost, they are difficult to use effectively, and run the risk of not finishing work while costing more. Cümülön provides a highly elastic computation and storage engine on top of spot instances, and offers automatic cost-based optimization of execution, deployment, and bidding strategies. Cümülön further quantifies how the uncertainty in the market price translates into the cost uncertainty of its recommendations, and allows users to specify their risk tolerance as an optimization constraint. Botong Huang, Nicholas W. D. Jarrett, Shivnath Babu, Sayan Mukherjee 0001, Jun Yang 0001 |
Proc. VLDB Endow. | 3 |
| 2014 | PStorM: Profile Storage and Matching for Feedback-Based Tuning of MapReduce JobsabstractThe MapReduce programming model has become widely adopted for large scale analytics on big data. MapReduce systems such as Hadoop have many tuning parameters, many of which have a significant impact on performance. The map and reduce functions that make up a MapReduce job are developed using arbitrary programming constructs, which makes them black-box in nature and prevents users from making good parameter tuning decisions for a submitted MapReduce job. Some research projects, such as the Starfish system, aim to provide automatic tuning decisions for input MapReduce jobs. Starfish and similar systems rely on an execution profile of a MapReduce job being tuned, and this profile is assumed to come from a previous execution of the same job. Managing these execution profiles has not been previously studied. This thesis presents PStorM, a profile store that organizes the collected profiling information in a scalable and extensible data model, and a profile matcher that accurately picks the relevant profiling information even for previously unseen MapReduce jobs. PStorM is currently integrated with the Starfish system, providing the necessary profiles that Starfish needs to tune a job. The thesis presents results that demonstrate the accuracy and efficiency of profile matching. The results also show that the profiles returned by PStorM lead to Starfish tuning decisions that are as good as the decisions made by profiles collected from a previous run of the job. Mostafa Ead, Herodotos Herodotou, Ashraf Aboulnaga, Shivnath Babu |
EDBT | 4 |
| 2014 | Front Matter
Shivnath Babu |
Proc. VLDB Endow. | 1 |
| 2014 | Thoth: Towards Managing a Multi-System ClusterabstractFollowing the 'no one size fits all' philosophy, active research in big data platforms is focusing on creating an environment for multiple 'one-size' systems to co-exist and cooperate in the same cluster. Consequently, it has now become imperative to provide an integrated management solution that provides a database-centric view of the underlying multi-system environment. We outline the proposal of DBMS + , a database management platform over multiple 'one-size' systems. Our prototype implementation of DBMS + , called Thoth , adaptively chooses a best-fit system based on application requirements. In this demonstration, we propose to showcase Thoth DM , a data management framework for Thoth which consists of a data collection pipeline utility, data consolidation and dispatcher module, and a warehouse for storing this data. We further introduce the notion of apps ; an app is a utility that registers with Thoth DM and interfaces with its warehouse to provide core database management functionalities like dynamic provisioning of resources, designing a multi-system-aware optimizer, tuning of configuration parameters on each system, data storage, and layout schemes. We will demonstrate Thoth DM in action over Hive, Hadoop, Shark, Spark, and the Hadoop Distributed File System. This demonstration will focus on the following apps : (i) Dashboard for administration and control that will let the audience monitor and visualize a database-centric view of the multi-system cluster, and (ii) Data Layout Recommender app will allow searching for the optimal data layout in the multi-system setting. Mayuresh Kunjir, Prajakta Kalmegh, Shivnath Babu |
Proc. VLDB Endow. | 3 |
| 2013 | How to Fit when No One Size Fits
Harold Lim, Yuzhang Han, Shivnath Babu |
CIDR | 3 |
| 2013 | Rapid experimentation for testing and tuning a production database deploymentabstractThe need to perform testing and tuning of database instances with production-like workloads (W), configurations (C), data (D), and resources (R) arises routinely. The further W, C, D, and R used in testing and tuning deviate from what is observed on the production database instance, the lower is the trustworthiness of the testing and tuning tasks done. For example, it is common to hear about performance degradation observed after the production database is upgraded from one software version to another. A typical cause of this problem is that the W, C, D, or R used during upgrade testing differed in some way from that on the production database. Performing testing and tuning tasks in principled and automated ways is very important, especially since---spurred by innovations in cloud computing---the number of database instances that a database administrator (DBA) has to manage is growing rapidly. Nedyalko Borisov, Shivnath Babu |
EDBT | 2 |
| 2013 | Workload management for Big Data analyticsabstractParallel database systems and MapReduce systems are essential components of today's infrastructure for Big Data analytics. These systems process multiple concurrent workloads consisting of complex user requests, where each request is associated with an (explicit or implicit) service level objective. Ashraf Aboulnaga, Shivnath Babu |
ICDE | 2 |
| 2013 | Workload management for big data analyticsabstracttutorial Share on Workload management for big data analytics Authors: Ashraf Aboulnaga University of Waterloo, Waterloo, ON, Canada University of Waterloo, Waterloo, ON, CanadaView Profile , Shivnath Babu Duke University, Durham, NC, USA Duke University, Durham, NC, USAView Profile Authors Info & Claims SIGMOD '13: Proceedings of the 2013 ACM SIGMOD International Conference on Management of DataJune 2013Pages 929–932https://doi.org/10.1145/2463676.2467801Published:22 June 2013Publication History 4citation676DownloadsMetricsTotal Citations4Total Downloads676Last 12 Months5Last 6 weeks0 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Ashraf Aboulnaga, Shivnath Babu |
SIGMOD Conference | 2 |
| 2013 | Cumulon: optimizing statistical data analysis in the cloudabstractWe present Cumulon, a system designed to help users rapidly develop and intelligently deploy matrix-based big-data analysis programs in the cloud. Cumulon features a flexible execution model and new operators especially suited for such workloads. We show how to implement Cumulon on top of Hadoop/HDFS while avoiding limitations of MapReduce, and demonstrate Cumulon's performance advantages over existing Hadoop-based systems for statistical data analysis. To support intelligent deployment in the cloud according to time/budget constraints, Cumulon goes beyond database-style optimization to make choices automatically on not only physical operators and their parameters, but also hardware provisioning and configuration settings. We apply a suite of benchmarking, simulation, modeling, and search techniques to support effective cost-based optimization over this rich space of deployment plans. Botong Huang, Shivnath Babu, Jun Yang 0001 |
SIGMOD Conference | 2 |
| 2013 | Execution and optimization of continuous queries with cyclopsabstractAs the data collected by enterprises grows in scale, there is a growing trend of performing data analytics on large datasets. Batch processing systems that can handle petabyte scale of data, such as Hadoop, have flourished and gained traction in the industry. As the results of batch analytics have been used to continuously improve front-facing user experience, there is a growing interest in pushing the processing latency down. This trend has fueled a resurgence in the development and usage of execution engines that can process continuous queries. Harold Lim, Shivnath Babu |
SIGMOD Conference | 2 |
| 2012 | A practical concurrent index for solid-state drivesabstractSolid-state drives are becoming a viable alternative to magnetic disks in database systems, but their performance characteristics, particularly those caused by their erase-before-write behavior, make conventional database indexes a poor fit. There have been various proposals of indexes specialized for these devices, but to make such indexes practical, we must address the issue of concurrency control. Good concurrency control is especially critical to indexes on solid-state drives, because they typically rely on batch updates, which may take long and block concurrent index accesses. We design, implement, and evaluate an index structure called FD+tree and an associated concurrency control scheme called FD+FC. Our evaluation confirms significant performance advantages of our approach over less sophisticated ones, and brings ou insights on data structure design and OLTP performance tuning on solid-state drives. Risi Thonangi, Shivnath Babu, Jun Yang 0001 |
CIKM | 2 |
| 2012 | Stubby: A Transformation-based Optimizer for MapReduce WorkflowsabstractThere is a growing trend of performing analysis on large datasets using workflows composed of MapReduce jobs connected through producer-consumer relationships based on data. This trend has spurred the development of a number of interfaces---ranging from program-based to query-based interfaces---for generating MapReduce workflows. Studies have shown that the gap in performance can be quite large between optimized and unoptimized workflows. However, automatic cost-based optimization of MapReduce workflows remains a challenge due to the multitude of interfaces, large size of the execution plan space, and the frequent unavailability of all types of information needed for optimization. We introduce a comprehensive plan space for MapReduce workflows generated by popular workflow generators. We then propose Stubby , a cost-based optimizer that searches selectively through the subspace of the full plan space that can be enumerated correctly and costed based on the information available in any given setting. Stubby enumerates the plan space based on plan-to-plan transformations and an efficient search algorithm. Stubby is designed to be extensible to new interfaces and new types of optimizations, which is a desirable feature given how rapidly MapReduce systems are evolving. Stubby's efficiency and effectiveness have been evaluated using representative workflows from many domains. Harold Lim, Herodotos Herodotou, Shivnath Babu |
Proc. VLDB Endow. | 3 |
| 2011 | Starfish: A Self-tuning System for Big Data Analytics
Herodotos Herodotou, Harold Lim, Nedyalko Borisov, Fatma Bilgen Cetin, Shivnath Babu |
CIDR | 7 |
| 2011 | No one (cluster) size fits all: automatic cluster sizing for data-intensive analyticsabstractInfrastructure-as-a-Service (IaaS) cloud platforms have brought two unprecedented changes to cluster provisioning practices. First, any (nonexpert) user can provision a cluster of any size on the cloud within minutes to run her data-processing jobs. The user can terminate the cluster once her jobs complete, and she needs to pay only for the resources used and duration of use. Second, cloud platforms enable users to bypass the traditional middleman---the system administrator---in the cluster-provisioning process. These changes give tremendous power to the user, but place a major burden on her shoulders. The user is now faced regularly with complex cluster sizing problems that involve finding the cluster size, the type of resources to use in the cluster from the large number of choices offered by current IaaS cloud platforms, and the job configurations that best meet the performance needs of her workload. Herodotos Herodotou, Shivnath Babu |
SoCC | 3 |
| 2011 | Predicting completion times of batch query workloads using interaction-aware models and simulationabstractA question that database administrators (DBAs) routinely need to answer is how long a batch query workload will take to complete. This question arises, for example, while planning the execution of different report-generation workloads to fit within available time windows. To answer this question accurately, we need to take into account that the typical workload in a database system consists of mixes of concurrent queries. Interactions among different queries in these mixes need to be modeled, rather than the conventional approach of considering each query separately. This paper presents a new approach for estimating workload completion times that takes the significant impact of query interactions into account. This approach builds performance models using an experiment-driven technique, by sampling the space of possible query mixes and fitting statistical models to the observed performance at these samples. No prior assumptions are made about the internal workings of the database system or the cause of query interactions, making the models robust and portable. We show that a careful choice of sampling and statistical modeling strategies can result in accurate models, and we present a novel interaction-aware workload simulator that uses these models to estimate workload completion times. An experimental evaluation with complex TPC-H queries on IBM DB2 shows that this approach consistently predicts workload completion times with less than 20% error. Mumtaz Ahmad 0001, Songyun Duan, Ashraf Aboulnaga, Shivnath Babu |
EDBT | 4 |
| 2011 | Warding off the dangers of data corruption with amuletabstractOccasional corruption of stored data is an unfortunate byproduct of the complexity of modern systems. Hardware errors, software bugs, and mistakes by human administrators can corrupt important sources of data. The dominant practice to deal with data corruption today involves administrators writing ad hoc scripts that run data-integrity tests at the application, database, file-system, and storage levels. This manual approach is tedious, error-prone, and provides no understanding of the potential system unavailability and data loss if a corruption were to occur. We introduce the Amulet system that addresses the problem of verifying the correctness of stored data proactively and continuously. To our knowledge, Amulet is the first system that: (i) gives administrators a declarative language to specify their objectives regarding the detection and repair of data corruption; (ii) contains optimization and execution algorithms to ensure that the administrator's objectives are met robustly and with least cost, e.g., using pay-as-you cloud resources; and (iii) provides timely notification when corruption is detected, allowing proactive repair of corruption before it impacts users and applications. We describe the implementation and a comprehensive evaluation of Amulet for a database software stack deployed on an infrastructure-as-a-service cloud provider. Nedyalko Borisov, Shivnath Babu, NagaPramod Mandagere, Sandeep Uttamchandani |
SIGMOD Conference | 2 |
| 2011 | Query optimization techniques for partitioned tablesabstractTable partitioning splits a table into smaller parts that can be accessed, stored, and maintained independent of one another. From their traditional use in improving query performance, partitioning strategies have evolved into a powerful mechanism to improve the overall manageability of database systems. Table partitioning simplifies administrative tasks like data loading, removal, backup, statistics maintenance, and storage provisioning. Query language extensions now enable applications and user queries to specify how their results should be partitioned for further use. However, query optimization techniques have not kept pace with the rapid advances in usage and user control of table partitioning. We address this gap by developing new techniques to generate efficient plans for SQL queries involving multiway joins over partitioned tables. Our techniques are designed for easy incorporation into bottom-up query optimizers that are in wide use today. We have prototyped these techniques in the PostgreSQL optimizer. An extensive evaluation shows that our partition-aware optimization techniques, with low optimization overhead, generate plans that can be an order of magnitude better than plans produced by current optimizers. Herodotos Herodotou, Nedyalko Borisov, Shivnath Babu |
SIGMOD Conference | 3 |
| 2011 | Proactive Detection and Repair of Data Corruption: Towards a Hassle-free Declarative Approach with Amulet
Nedyalko Borisov, Shivnath Babu |
Proc. VLDB Endow. | 2 |
| 2011 | Profiling, What-if Analysis, and Cost-based Optimization of MapReduce Programs
Herodotos Herodotou, Shivnath Babu |
Proc. VLDB Endow. | 2 |
| 2011 | MapReduce Programming and Cost-based Optimization? Crossing this Chasm with Starfish
Herodotos Herodotou, Shivnath Babu |
Proc. VLDB Endow. | 3 |
| 2011 | Interaction-aware scheduling of report-generation workloads
Mumtaz Ahmad 0001, Ashraf Aboulnaga, Shivnath Babu, Kamesh Munagala |
VLDB J. | 3 |
| 2010 | Towards automatic optimization of MapReduce programsabstractTimely and cost-effective processing of large datasets has become a critical ingredient for the success of many academic, government, and industrial organizations. The combination of MapReduce frameworks and cloud computing is an attractive proposition for these organizations. However, even to run a single program in a MapReduce framework, a number of tuning parameters have to be set by users or system administrators. Users often run into performance problems because they don't know how to set these parameters, or because they don't even know that these parameters exist. With MapReduce being a relatively new technology, it is not easy to find qualified administrators. In this position paper, we make a case for techniques to automate the setting of tuning parameters for MapReduce programs. The objective is to provide good out-of-the-box performance for ad hoc MapReduce programs run on large datasets. This feature can go a long way towards improving the productivity of users who lack the skills to optimize programs themselves due to lack of familiarity with MapReduce or with the data being processed. Shivnath Babu |
SoCC | 1 |
| 2010 | Interaction-aware prediction of business intelligence workload completion timesabstractWhile planning the execution of report-generation workloads, database administrators often need to know how long different query workloads will take to run. Database systems run mixes of multiple queries of different types concurrently. Hence, estimating the completion time of a query workload requires reasoning about query mixes and inter-query interactions in the mixes; rather than considering queries or query types in isolation. This paper presents a novel approach for estimating workload completion time based on experiment-driven modeling and simulation of the impact of inter-query interactions. A preliminary evaluation of this approach with TPC-H queries on IBM DB2 shows how our approach can consistently predict workload completion times with good accuracy. Mumtaz Ahmad 0001, Songyun Duan, Ashraf Aboulnaga, Shivnath Babu |
ICDE | 4 |
| 2010 | iTuned: a tool for configuring and visualizing database parametersabstractiTuned is a tool that takes a SQL workload as input and recommends good settings for database configuration parameters such as buffer pool sizes, multi-programming level, and number of I/O daemons. iTuned also provides response-surface and sensitivity-analysis plots that help the end-user analyze the impact of each parameter. iTuned has the following novel features: (i) a technique called Adaptive Sampling that proactively brings in appropriate data through planned experiments to find high-impact parameters and high-performance parameter settings, (ii) an executor that supports on-line experiments in production database environments through a cycle-stealing paradigm that places minimal overhead on the production workload, and (iii) portability across different database systems. This demonstration will focus on the interesting use-case scenarios of iTuned, and show the effectiveness of recommended configuration settings on popular database benchmarks. Vamsidhar Thummala, Shivnath Babu |
SIGMOD Conference | 2 |
| 2010 | Xplus: A SQL-Tuning-Aware Query OptimizerabstractThe need to improve a suboptimal execution plan picked by the query optimizer for a repeatedly run SQL query arises routinely. Complex expressions, skewed or correlated data, and changing conditions can cause the optimizer to make mistakes. For example, the optimizer may pick a poor join order, overlook an important index, use a nested-loop join when a hash join would have done better, or cause an expensive, but avoidable, sort to happen. SQL tuning is also needed while tuning multi-tier services to meet service-level objectives. The difficulty of SQL tuning can be lessened considerably if users and higher-level tuning tools can tell the optimizer: "I am not satisfied with the performance of the plan p being used for the query Q that runs repeatedly. Can you generate a (δ%) better plan?" This paper designs, implements, and evaluates Xplus which, to our knowledge, is the first query optimizer to provide this feature. Xplus goes beyond the traditional plan-first-execute-next approach: Xplus runs some (sub)plans proactively, collects monitoring data from the runs, and iterates. A nontrivial challenge is in choosing a small set of plans to run. Xplus guides this process efficiently using an extensible architecture comprising SQL-tuning experts with different goals, and a policy to arbitrate among the experts. We show the effectiveness of Xplus on real-life tuning scenarios created using TPC-H queries on a PostgreSQL database. Herodotos Herodotou, Shivnath Babu |
Proc. VLDB Endow. | 2 |
| 2009 | DIADS: Addressing the "My-Problem-or-Yours" Syndrome with Integrated SAN and Database Diagnosis
Shivnath Babu, Nedyalko Borisov, Sandeep Uttamchandani, Ramani Routray, Aameek Singh |
FAST | 1 |
| 2009 | Automated Experiment-Driven Management of (Database) Systems
Shivnath Babu, Nedyalko Borisov, Songyun Duan, Herodotos Herodotou, Vamsidhar Thummala |
HotOS | 1 |
| 2009 | Automated Diagnosis of System Failures with FaabstractWhile quick failure diagnosis and system recovery is critical, database and system administrators continue to struggle with this problem. The spectrum of possible causes of failure is huge: performance problems like resource contention, crashes due to hardware faults or software bugs, misconfiguration by system operators, and many others. The scale, complexity, and dynamics of modern systems make it laborious and time-consuming to track down the cause of failures manually. Conventional data-mining techniques like clustering and classification have a lot to offer to the hard problem of failure diagnosis. These techniques can be applied to the wealth of monitoring data that operational systems collect. However, some novel challenges need to be solved before these techniques can deliver an automated, efficient, and reasonably-accurate tool for diagnosing failures using monitoring data; a tool that is easy and intuitive to use. Fa is a new system for automated diagnosis of system failures that is designed to address the above challenges. When a system is running, Fa collects monitoring data periodically and stores it in a database. Songyun Duan, Shivnath Babu |
ICDE | 2 |
| 2009 | Fa: A System for Automating Failure DiagnosisabstractFailures of Internet services and enterprise systems lead to user dissatisfaction and considerable loss of revenue. Since manual diagnosis is often laborious and slow, there is considerable interest in tools that can diagnose the cause of failures quickly and automatically from system-monitoring data. This paper identifies two key data-mining problems arising in a platform for automated diagnosis called Fa. Fa uses monitoring data to construct a database of failure signatures against which data from undiagnosed failures can be matched. Two novel challenges we address are to make signatures robust to the noisy monitoring data in production systems, and to generate reliable confidence estimates for matches. Fa uses a new technique called anomaly- based clustering when the signature database has no high- confidence match for an undiagnosed failure. This technique clusters monitoring data based on how it differs from the failure data, and pinpoints attributes linked to the failure. We show the effectiveness of Fa through a comprehensive experimental evaluation based on failures from a production setting, a variety of failures injected in a testbed, and synthetic data. Songyun Duan, Shivnath Babu, Kamesh Munagala |
ICDE | 2 |
| 2009 | Shaman: A Self-Healing Database SystemabstractA self-healing system is a grand-challenge vision where the system will detect, diagnose, and repair performance problems and hardware/software faults automatically. These systems take humans out of the failure-recovery loop, enabling recovery to happen at fast machine timescales rather than slower human timescales. Are self-healing database systems Utopia or just a hard puzzle to solve? We argue for the latter and propose to demonstrate a self-healing database system, called Shaman, that is being prototyped at Duke. Songyun Duan, Peter Franklin, Vamsidhar Thummala, Shivnath Babu |
ICDE | 5 |
| 2009 | Large-scale uncertainty management systems: learning and exploiting your dataabstractThe database community has made rapid strides in capturing, representing, and querying uncertain data. Probabilistic databases capture the inherent uncertainty in derived tuples as probability estimates. Data acquisition and stream systems can produce succinct summaries of very large and time-varying datasets. This tutorial addresses the natural next step in harnessing uncertain data: How can we efficiently and quantifiably determine what, how, and how much to learn in order to make good decisions based on the imprecise information available. Shivnath Babu, Sudipto Guha, Kamesh Munagala |
SIGMOD Conference | 1 |
| 2009 | DIADS: A Problem Diagnosis Tool for Databases and Storage Area NetworksabstractMany enterprise environments have databases running on network-attached storage infrastructure (referred to as Storage Area Networks or SANs ). Both the database and the SAN are complex subsystems that are managed by separate teams of administrators. As often as not, database administrators have limited understanding of SAN configuration and behavior, and limited visibility into the SAN's run-time performance; and vice versa for the SAN administrators. Diagnosing the cause of performance problems is a challenging exercise in these environments. We propose to remedy the situation through a novel tool, called Diads, for database and SAN problem diagnosis. This demonstration proposal summarizes the technical innovations in Diads: (i) a powerful abstraction called Annotated Plan Graphs (APGs) that ties together the execution path of queries in the database and the SAN using low-overhead monitoring data, and (ii) a diagnosis workflow that combines domain-specific knowledge with machine-learning techniques. The scenarios presented in the demonstration are also described. Nedyalko Borisov, Shivnath Babu, Sandeep Uttamchandani, Ramani Routray, Aameek Singh |
Proc. VLDB Endow. | 2 |
| 2009 | Tuning Database Configuration Parameters with iTunedabstractDatabase systems have a large number of configuration parameters that control memory distribution, I/O optimization, costing of query plans, parallelism, many aspects of logging, recovery, and other behavior. Regular users and even expert database administrators struggle to tune these parameters for good performance. The wave of research on improving database manageability has largely overlooked this problem which turns out to be hard to solve. We describe iTuned, a tool that automates the task of identifying good settings for database configuration parameters. iTuned has three novel features: (i) a technique called Adaptive Sampling that proactively brings in appropriate data through planned experiments to find high-impact parameters and high-performance parameter settings, (ii) an executor that supports online experiments in production database environments through a cycle-stealing paradigm that places near-zero overhead on the production workload; and (iii) portability across different database systems. We show the effectiveness of iTuned through an extensive evaluation based on different types of workloads, database systems, and usage scenarios. Songyun Duan, Vamsidhar Thummala, Shivnath Babu |
Proc. VLDB Endow. | 3 |
| 2008 | Modeling and exploiting query interactions in database systemsabstractThe typical workload in a database system consists of a mixture of multiple queries of different types, running concurrently and interacting with each other. Hence, optimizing performance requires reasoning about query mixes and their interactions, rather than considering individual queries or query types. In this paper, we show the significant impact that query interactions can have on workload performance. We present a new approach based on planning experiments and statistical modeling to capture the impact of query interactions. This approach requires no prior assumptions about the internal workings of the database system or the nature or cause of query interactions, making it portable across systems. As a concrete demonstration of the potential of capturing, modeling, and exploiting query interactions, we develop a novel interaction-aware query scheduler that targets report-generation workloads in Business Intelligence (BI) settings. Under certain assumptions, the schedule found by this scheduler is within a constant factor of optimal. An experimental evaluation with TPC-H queries on IBM DB2 demonstrates that our scheduler consistently outperforms (up to 4x) conventional schedulers that do not account for query interactions. Mumtaz Ahmad 0001, Ashraf Aboulnaga, Shivnath Babu, Kamesh Munagala |
CIKM | 3 |
| 2008 | QShuffler: Getting the Query Mix RightabstractThe typical workload in a database system consists of a mixture of multiple queries of different types, running concurrently and interacting with each other. Hence, optimizing performance requires reasoning about query mixes and their interactions, rather than considering individual queries or query types. In this paper, we use such a reasoning approach to develop a query scheduler. We treat the database system as a black box and experimentally build a model to estimate the performance of different query mixes. Our scheduler uses this model to decide which query mixes to schedule, with the goal of maximizing throughput. We experimentally demonstrate the effectiveness of our scheduler using queries from the TPC-H benchmark on DB2. Mumtaz Ahmad 0001, Ashraf Aboulnaga, Shivnath Babu, Kamesh Munagala |
ICDE | 3 |
| 2008 | Processing Diagnosis Queries: A Principled and Scalable ApproachabstractMany popular Web sites suffer occasional user-visible problems such as slow responses, blank pages or error messages being displayed, items not being added to shopping carts, database slowdowns, and others. Such deviations of systems from desired behavior, or failures, can cause user dissatisfaction and considerable loss of revenue. The scale, complexity, and dynamics of modern systems make it hard to track down the cause of failures manually. We address this problem through a new class of declarative queries, called diagnosis queries, that a system administrator or user can pose to pinpoint the cause of a failure. We describe how diagnosis queries are specified over system-monitoring data, and the challenges faced by current techniques to process these queries. We develop and evaluate a new algorithm, based on a combination of clustering and classification, to process diagnosis queries automatically, efficiently, and with good accuracy. Shivnath Babu, Songyun Duan, Kamesh Munagala |
ICDE | 1 |
| 2008 | Finding Good Configurations in High-Dimensional Spaces: Doing More with Less
Risi Thonangi, Vamsidhar Thummala, Shivnath Babu |
MASCOTS | 3 |
| 2008 | Cutting Corners: Workbench Automation for Server Benchmarking
Piyush Shivam, Varun Marupadi, Jeffrey S. Chase, Thileepan Subramaniam, Shivnath Babu |
USENIX ATC | 5 |
| 2007 | On Suspending and Resuming DataflowsabstractConsider a long-running, resource-intensive query Q running on a database management system (DBMS). Suppose another task T with much higher priority arrives, and we need to process T as quickly as possible and with all available resources. Ideally, the system should suspend the execution of Q, quickly release all resources held by Q, and start T using all resources. Query Q can be resumed once T finishes execution, ideally without losing any significant fraction of the work that Q had done prior to suspend. Beyond supporting mixed-priority DBMS workloads, suspend/resume of queries, or dataflows in general, is important in many other settings: Utility and grid: Dataflows now run frequently on computational utilities and grids composed of autonomous resources. When the owner of resources wants to use them, dataflows running on these resources must release control quickly, and migrate to other resources. Software rejuvenation: Benefits of software rejuvenation, the practice of rebooting enterprise computing systems regularly, are now recognized widely. Reboot is critical when performance degrades due to resource exhaustion caused by resource leaks. Suspend and resume is important in this setting because (1) the challenge of predicting completion times accurately makes it difficult to schedule task completion to match a rejuvenation schedule; (2) when performance degrades, it may not be cost-effective to wait for all dataflows to complete before rebooting. Badrish Chandramouli, Christopher N. Bond, Shivnath Babu, Jun Yang 0001 |
ICDE | 3 |
| 2007 | Query suspend and resumeabstractSuppose a long-running analytical query is executing on a database server and has been allocated a large amount of physical memory. A high-priority task comes in and we need to run it immediately with all available resources. We have several choices. We could swap out the old query to disk, but writing out a large execution state may take too much time. Another option is to terminate the old query and restart it after the new task completes, but we would waste all the work already performed by the old query. Yet another alternative is to periodically checkpoint the query during execution, but traditional synchronous checkpointing carries high overhead. In this paper, we advocate a database-centric approach to implementing query suspension and resumption, with negligible execution overhead, bounded suspension cost, and efficient resumption. The basic idea is to let each physical query operator perform lightweight checkpointing according to its own semantics, and coordinate asynchronous checkpoints among operators through a novel contracting mechanism. At the time of suspension, we find an optimized suspend plan for the query, which may involve a combination of dumping current state to disk and going back to previous checkpoints. The plan seeks to minimize the suspend/resume overhead while observing the constraint on suspension time. Our approach requires only small changes to the iterator interface, which we have implemented in the PREDATOR database system. Experiments with our implementation demonstrate significant advantages of our approach over traditional alternatives. Badrish Chandramouli, Christopher N. Bond, Shivnath Babu, Jun Yang 0001 |
SIGMOD Conference | 3 |
| 2007 | Automated and on-demand provisioning of virtual machines for database applicationsabstractUtility computing delivers compute and storage resources to applications as an 'on-demand utility', much like electricity, from a distributed collection of computing resources. There is great interest in running database applications on utility resources (e.g., Oracle's Grid initiative) due to reduced infrastructure and management costs, higher resource utilization, and the ability to handle sudden load surges. Virtual Machine (VM) technology offers powerful mechanisms to manage a utility resource infrastructure. However, provisioning VMs for applications to meet system performance goals, e.g., to meet service level agreements (SLAs), is an open problem. We are building two systems at Duke - Shirako and NIMO - that collectively address this problem. Piyush Shivam, Azbayar Demberel, Pradeep Gunda, David Irwin 0001, Laura E. Grit, Aydan R. Yumerefendi, Shivnath Babu, Jeffrey S. Chase |
SIGMOD Conference | 7 |
| 2007 | Processing Forecasting Queries
Songyun Duan, Shivnath Babu |
VLDB | 2 |
| 2006 | Proactive identification of performance problemsabstractWe propose to demonstrate Fa, an automated tool for timely and accurate prediction of Service-Level-Agreement (SLA) violations caused by performance problems in database systems. Fa periodically collects performance data at three levels: applications, database server, and operating system. This data is used to construct probabilistic models for predicting SLA violations. Fa currently uses graphical Bayesian network models because of their ability to support a wide range of inferences, including prediction and diagnosis, as well as their support for interactive visualization and presentation of complex system behavior in intuitive ways. Songyun Duan, Shivnath Babu |
SIGMOD Conference | 2 |
| 2006 | Active and Accelerated Learning of Cost Models for Optimizing Scientific Applications
Piyush Shivam, Shivnath Babu, Jeffrey S. Chase |
VLDB | 2 |
| 2006 | The CQL continuous query language: semantic foundations and query execution
Arvind Arasu, Shivnath Babu, Jennifer Widom |
VLDB J. | 2 |
| 2005 | Adaptive Query Processing in the Looking Glass
Shivnath Babu, Pedro Bizarro |
CIDR | 1 |
| 2005 | Adaptive Caching for Continuous QueriesabstractWe address the problem of executing continuous multiway join queries in unpredictable and volatile environments. Our query class captures windowed join queries in data stream systems as well as conventional maintenance of materialized join views. Our adaptive approach handles streams of updates whose rates and data characteristics may change over time, as well as changes in system conditions such as memory availability. In this paper we focus specifically on the problem of adaptive placement and removal of caches to optimize join performance. Our approach automatically considers conventional tree-shaped join plans with materialized subresults at every intermediate node, sub result-free MJoins, and the entire spectrum between them. We provide algorithms for selecting caches, monitoring their cost and benefits in current conditions, allocating memory to caches, and adapting as conditions change. All of our algorithms are implemented in the STREAM prototype data stream management system and a thorough experimental evaluation is included. Shivnath Babu, Kamesh Munagala, Jennifer Widom, Rajeev Motwani 0001 |
ICDE | 1 |
| 2005 | The Pipelined Set Cover Problem
Kamesh Munagala, Shivnath Babu, Rajeev Motwani 0001, Jennifer Widom |
ICDT | 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 | 1 |
| 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 | 1 |
| 2005 | Content-Based Routing: Different Plans for Different Data
Pedro Bizarro, Shivnath Babu, David J. DeWitt, Jennifer Widom |
VLDB | 2 |
| 2004 | Adaptive Ordering of Pipelined Stream FiltersabstractWe consider the problem of pipelined filters, where a continuous stream of tuples is processed by a set of commutative filters. Pipelined filters are common in stream applications and capture a large class of multiway stream joins. We focus on the problem of ordering the filters adaptively to minimize processing cost in an environment where stream and filter characteristics vary unpredictably over time. Our core algorithm, A-Greedy (for Adaptive Greedy), has strong theoretical guarantees: If stream and filter characteristics were to stabilize, A-Greedy would converge to an ordering within a small constant factor of optimal. (In experiments A-Greedy usually converges to the optimal ordering.) One very important feature of A-Greedy is that it monitors and responds to selectivities that are correlated across filters (i.e., that are nonindependent), which provides the strong quality guarantee but incurs run-time overhead. We identify a three-way tradeoff among provable convergence to good orderings, run-time overhead, and speed of adaptivity. We develop a suite of variants of A-Greedy that lie at different points on this tradeoff spectrum. We have implemented all our algorithms in the STREAM prototype Data Stream Management System and a thorough performance evaluation is presented. Shivnath Babu, Rajeev Motwani 0001, Kamesh Munagala, Itaru Nishizawa, Jennifer Widom |
SIGMOD Conference | 1 |
| 2004 | StreaMon: An Adaptive Engine for Stream Query ProcessingabstractStreaMon is the adaptive query processing engine of the STREAM prototype Data Stream Management System (DSMS) [4]. A fundamental challenge in many DSMS applications (e.g., network monitoring, financial monitoring over stock tickers, sensor processing) is that conditions may vary significantly over time. Since queries in these systems are usually long-running, or continuous [4], it is important to consider adaptive approaches to query processing. Without adaptivity, performance may drop drastically as stream data and arrival characteristics, query loads, and system conditions change over time.StreaMon uses several techniques to support adaptive query processing [1, 2, 3]; we demonstrate three of them:•Reducing run-time memory requirements for continuous queries by exploiting stream data and arrival patterns.•Adaptive join ordering for pipelined multiway stream joins, with strong quality guarantees.•Placing subresult caches adaptively in pipelined multiway stream joins to avoid recomputation of intermediate results. Shivnath Babu, Jennifer Widom |
SIGMOD Conference | 1 |
| 2004 | Characterizing memory requirements for queries over continuous data streamsabstractThis article deals with continuous conjunctive queries with arithmetic comparisons and optional aggregation over multiple data streams. An algorithm is presented for determining whether or not any given query can be evaluated using a bounded amount of memory for all possible instances of the data streams. For queries that can be evaluated using bounded memory, an execution strategy based on constant-sized synopses of the data streams is proposed. For queries that cannot be evaluated using bounded memory, data stream scenarios are identified in which evaluating the queries requires memory linear in the size of the unbounded streams. Arvind Arasu, Brian Babcock, Shivnath Babu, Jon McAlister, Jennifer Widom |
ACM Trans. Database Syst. | 3 |
| 2004 | Exploiting k-constraints to reduce memory overhead in continuous queries over data streamsabstractContinuous queries often require significant run-time state over arbitrary data streams. However, streams may exhibit certain data or arrival patterns, or constraints , that can be detected and exploited to reduce state considerably without compromising correctness. Rather than requiring constraints to be satisfied precisely, which can be unrealistic in a data streams environment, we introduce k-constraints , where k is an adherence parameter specifying how closely a stream adheres to the constraint. (Smaller k 's are closer to strict adherence and offer better memory reduction.) We present a query processing architecture, called k-Mon , that detects useful k -constraints automatically and exploits the constraints to reduce run-time state for a wide range of continuous queries. Experimental results showed dramatic state reduction, while only modest computational overhead was incurred for our constraint monitoring and query execution algorithms. Shivnath Babu, Utkarsh Srivastava, Jennifer Widom |
ACM Trans. Database Syst. | 1 |
| 2004 | Operator scheduling in data stream systems
Brian Babcock, Shivnath Babu, Mayur Datar, Rajeev Motwani 0001, Dilys Thomas |
VLDB J. | 2 |
| 2003 | Query Processing, Approximation, and Resource Management in a Data Stream Management System
Rajeev Motwani 0001, Jennifer Widom, Arvind Arasu, Brian Babcock, Shivnath Babu, Mayur Datar, Gurmeet Singh Manku, Christopher Olston, Justin Rosenstein, Rohit Varma |
CIDR | 5 |
| 2003 | STREAM: The Stanford Stream Data Manager
Arvind Arasu, Brian Babcock, Shivnath Babu, Mayur Datar, Keith Ito, Itaru Nishizawa, Justin Rosenstein, Jennifer Widom |
SIGMOD Conference | 3 |
| 2003 | Chain : Operator Scheduling for Memory Minimization in Data Stream SystemsabstractIn many applications involving continuous data streams, data arrival is bursty and data rate fluctuates over time. Systems that seek to give rapid or real-time query responses in such an environment must be prepared to deal gracefully with bursts in data arrival without compromising system performance. We discuss one strategy for processing bursty streams --- adaptive, load-aware scheduling of query operators to minimize resource consumption during times of peak load. We show that the choice of an operator scheduling strategy can have significant impact on the run-time system memory usage. We then present Chain scheduling, an operator scheduling strategy for data stream systems that is near-optimal in minimizing run-time memory usage for any collection of single-stream queries involving selections, projections, and foreign-key joins with stored relations. Chain scheduling also performs well for queries with sliding-window joins over multiple streams, and multiple queries of the above types. A thorough experimental evaluation is provided where we demonstrate the potential benefits of Chain scheduling, compare it with competing scheduling strategies, and validate our analytical conclusions. Brian Babcock, Shivnath Babu, Mayur Datar, Rajeev Motwani 0001 |
SIGMOD Conference | 2 |
| 2002 | Characterizing Memory Requirements for Queries over Continuous Data StreamsabstractWe consider conjunctive queries with arithmetic comparisons over multiple continuous data streams. We specify an algorithm for determining whether or not a query can be evaluated using a bounded amount of memory for all possible instances of the data streams. When a query can be evaluated using bounded memory, we produce an execution strategy based on constant-sized synopses of the data streams. Arvind Arasu, Brian Babcock, Shivnath Babu, Jon McAlister, Jennifer Widom |
PODS | 3 |
| 2002 | Models and Issues in Data Stream SystemsabstractIn this overview paper we motivate the need for and research issues arising from a new model of data processing. In this model, data does not take the form of persistent relations, but rather arrives in multiple, continuous, rapid, time-varying data streams. In addition to reviewing past work relevant to data stream systems and current projects in the area, the paper explores topics in stream query languages, new requirements and challenges in query processing, and algorithmic issues. Brian Babcock, Shivnath Babu, Mayur Datar, Rajeev Motwani 0001, Jennifer Widom |
PODS | 2 |
| 2001 | SPARTAN: A Model-Based Semantic Compression System for Massive Data TablesabstractWhile a variety of lossy compression schemes have been developed for certain forms of digital data (e.g., images, audio, video), the area of lossy compression techniques for arbitrary data tables has been left relatively unexplored. Nevertheless, such techniques are clearly motivated by the ever-increasing data collection rates of modern enterprises and the need for effective, guaranteed-quality approximate answers to queries over massive relational data sets. In this paper, we propose SPARTAN, a system that takes advantage of attribute semantics and data-mining models to perform lossy compression of massive data tables. SPARTAN is based on the novel idea of exploiting predictive data correlations and prescribed error tolerances for individual attributes to construct concise and accurate Classification and Regression Tree (CaRT) models for entire columns of a table. More precisely, SPARTAN selects a certain subset of attributes for which no values are explicitly stored in the compressed table; instead, concise CaRTs that predict these values (within the prescribed error bounds) are maintained. To restrict the huge search space and construction cost of possible CaRT predictors, SPARTAN employs sophisticated learning techniques and novel combinatorial optimization algorithms. Our experimentation with several real-life data sets offers convincing evidence of the effectiveness of SPARTAN's model-based approach — SPARTAN is able to consistently yield substantially better compression ratios than existing semantic or syntactic compression tools (e.g., gzip) while utilizing only small data samples for model inference. Shivnath Babu, Minos N. Garofalakis, Rajeev Rastogi |
SIGMOD Conference | 1 |