Theodore Johnson

dblp:j/TheodoreJohnson · also Ted Johnson · DBLP profile ↗
← Back
74ranked-venue papers
32as first author
0since 2021 · last 2018
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Databases, data management, data science and information retrieval · 52 · 21 first-authorSystems, architecture and hardware · 15 · 8 first-authorArtificial intelligence and machine learning · 5 · 3 first-authorSoftware engineering, systems software and programming languages · 4 · 2 first-authorSecurity and privacy · 2 · 1 first-authorTheory of computation · 2 · 2 first-authorComputer networks · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Databases, data mining, and information retrieval
38 papers
Data stream processing · 41% Data integration and cleaning · 24% Graph data management · 10%
Computer networks
8 papers
Network measurement and analytics · 92% Internet of things and sensor networks · 6% Network management and operations · 2%
Computer architecture, parallel and distributed computing, and storage systems
19 papers
Storage systems · 39% Parallel and multicore computing · 33% Performance modeling and evaluation · 15%

Topics — the 30 heaviest of 87, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Graph data management
graph database
0.422018
A Graph Database for a Virtualized Network Infrastructure · SIGMOD Conference 2018
Virtualized Network Service Topology Exploration Using Nepal · SIGMOD Conference 2017
Network measurement and analytics
topology discovery
0.422018
Virtualized Network Service Topology Exploration Using Nepal · SIGMOD Conference 2017
A Graph Database for a Virtualized Network Infrastructure · SIGMOD Conference 2018
Data stream processing
continuous query processing
0.352009
Stream warehousing with DataDepot · SIGMOD Conference 2009
Out-of-order processing: a new architecture for high-performance stream systems · Proc. VLDB Endow. 2008
Holistic UDAFs at streaming speeds · SIGMOD Conference 2004
Data integration and cleaning
data warehouse
0.232014
Enabling Real Time Data Analysis · Proc. VLDB Endow. 2010
Data stream warehousing · ICDE 2014
Data stream warehousing · SIGMOD Conference 2013
Query processing and optimization
view maintenance
0.222009
Stream warehousing with DataDepot · SIGMOD Conference 2009
Scheduling Updates in a Real-Time Stream Warehouse · ICDE 2009
Data stream processing
distributed stream processing
0.222008
Query-aware partitioning for monitoring massive network data streams · SIGMOD Conference 2008
Query-Aware Partitioning for Monitoring Massive Network Data Streams · ICDE 2008
Data stream processing
out-of-order stream processing
0.222008
Out-of-order processing: a new architecture for high-performance stream systems · Proc. VLDB Endow. 2008
Monitoring Regular Expressions on Out-of-Order Streams · ICDE 2007
Transaction processing and concurrency control › update management
update scheduling
0.112012
Scalable Scheduling of Updates in Streaming Data Warehouses · IEEE Trans. Knowl. Data Eng. 2012
Data integration and cleaning › data quality
data staleness
0.122012
Scheduling Updates in a Real-Time Stream Warehouse · ICDE 2009
Scalable Scheduling of Updates in Streaming Data Warehouses · IEEE Trans. Knowl. Data Eng. 2012
Storage systems › i/o scheduling
update scheduling
0.112009
Scheduling Updates in a Real-Time Stream Warehouse · ICDE 2009
Parallel and multicore computing
load balancing
0.122008
Query-Aware Partitioning for Monitoring Massive Network Data Streams · ICDE 2008
A study of dynamic load balancing in a distributed system · SIGCOMM 1986
Spatial and temporal data management › temporal query processing
time-travel query
0.112017
Virtualized Network Service Topology Exploration Using Nepal · SIGMOD Conference 2017
Network measurement and analytics › traffic measurement
traffic monitoring
0.122003
Gigascope: A Stream Database for Network Applications · SIGMOD Conference 2003
Gigascope: high performance network monitoring with an SQL interface · SIGMOD Conference 2002
Query processing and optimization › OLAP
OLAP query processing
0.122002
Efficient OLAP Query Processing in Distributed Data Warehouse · ICDE 2002
The MD-join: An Operator for Complex OLAP · ICDE 2001
Data stream processing
stream processing systems
0.112005
A Heartbeat Mechanism and Its Application in Gigascope · VLDB 2005
Data stream processing
stream sampling
0.112005
Sampling Algorithms in a Stream Operator · SIGMOD Conference 2005
Data integration and cleaning
data quality
0.122003
Data Quality and Data Cleaning: An Overview · SIGMOD Conference 2003
Mining database structure; or, how to build a data quality browser · SIGMOD Conference 2002
Network measurement and analytics › streaming data
network data stream monitoring
0.022008
Query-aware partitioning for monitoring massive network data streams · SIGMOD Conference 2008
Query-Aware Partitioning for Monitoring Massive Network Data Streams · ICDE 2008
Data stream processing › streaming aggregation
holistic aggregates
0.012004
Holistic UDAFs at streaming speeds · SIGMOD Conference 2004
Data integration and cleaning › data preprocessing
data cleaning
0.012003
Data Quality and Data Cleaning: An Overview · SIGMOD Conference 2003
Indexing and storage engines
bitmap index
0.032000
Performance Measurements of Compressed Bitmap Indices · VLDB 1999
Optimizing Queries on Compressed Bitmaps · VLDB 2000
Coarse Indices for a Tape-Based Data Warehouse · ICDE 1998
Distributed and cloud data management › distributed data store
distributed data warehouse
0.012002
Efficient OLAP Query Processing in Distributed Data Warehouse · ICDE 2002
Distributed and cloud data management › distributed analytics
distributed OLAP
0.012002
Efficient OLAP Query Processing in Distributed Data Warehouse · ICDE 2002
Data integration and cleaning
schema mapping
0.012002
Mining database structure; or, how to build a data quality browser · SIGMOD Conference 2002
Information retrieval
text summarization
0.012002
The Generalized MDL Approach for Summarization · VLDB 2002
Internet of things and sensor networks › wireless sensor network
network diagnosis
0.012010
Enabling Real Time Data Analysis · Proc. VLDB Endow. 2010
Data models and query languages
query algebra
0.012001
The MD-join: An Operator for Complex OLAP · ICDE 2001
Data mining › predictive modeling
forecasting
0.012000
Online Data Mining for Co-Evolving Time Sequences · ICDE 2000
Data integration and cleaning › missing data
missing value imputation
0.012000
Online Data Mining for Co-Evolving Time Sequences · ICDE 2000
Data mining › anomaly detection
outlier detection
0.012000
Online Data Mining for Co-Evolving Time Sequences · ICDE 2000

Methods — techniques the papers use, named apart from their topics

simulation · 0.3query plan partitioning · 0.2communication cost optimization · 0.2scheduling algorithms · 0.2query partitioning · 0.2heartbeats · 0.2distributed processing · 0.2trigger-based notification · 0.1file normalization · 0.1feed specification language · 0.1scheduling algorithm · 0.1stream progress indicators · 0.1sequential matching · 0.1parallel matching · 0.1SQL query interface · 0.1performance measurement · 0.0stream query language · 0.0analytical modeling · 0.0
YearPublicationVenuePosition
2018 A Graph Database for a Virtualized Network Infrastructure
abstract
Modern communication networks are large, dynamic, complex, and increasingly use virtualized network infrastructure. To deploy, maintain, and troubleshoot such networks, it is essential to understand how network elements - such as servers, switches, virtual machines, and virtual network functions - are connected to one another, and to be able to discover communication paths between them. For network maintenance applications such as troubleshooting and service quality management, it is also essential to understand how connections change over time, and be able to pose time-travel queries to retrieve information about past network states. With the industry-wide move to Software Defined Networks and Virtualized Network Functions (VNFs) [26][24], maintaining these inventory and topology databases becomes a critical issue.
Pramod A. Jamkhedkar, Theodore Johnson, Yaron Kanza, Aman Shaikh, N. K. Shankaranarayanan, Vladislav Shkapenyuk
SIGMOD Conference2
2018 Exploring Change - A New Dimension of Data Analytics
abstract
Data and metadata in datasets experience many different kinds of change. Values are inserted, deleted or updated; rows appear and disappear; columns are added or repurposed, etc. In such a dynamic situation, users might have many questions related to changes in the dataset, for instance which parts of the data are trustworthy and which are not? Users will wonder: How many changes have there been in the recent minutes, days or years? What kind of changes were made at which points of time? How dirty is the data? Is data cleansing required? The fact that data changed can hint at different hidden processes or agendas: a frequently crowd-updated city name may be controversial; a person whose name has been recently changed may be the target of vandalism; and so on. We show various use cases that benefit from recognizing and exploring such change. We envision a system and methods to interactively explore such change, addressing the variability dimension of big data challenges. To this end, we propose a model to capture change and the process of exploring dynamic data to identify salient changes. We provide exploration primitives along with motivational examples and measures for the volatility of data. We identify technical challenges that need to be addressed to make our vision a reality, and propose directions of future work for the data management community.
Tobias Bleifuß, Leon Bornemann, Theodore Johnson, Dmitri V. Kalashnikov, Felix Naumann, Divesh Srivastava
Proc. VLDB Endow.3
2017 Integrating the R Language Runtime System with a Data Stream Warehouse
Carlos Ordonez 0001, Theodore Johnson, Simon Urbanek, Vladislav Shkapenyuk, Divesh Srivastava
DEXA (2)2
2017 Virtualized Network Service Topology Exploration Using Nepal
abstract
Modern communication networks are large, dynamic, and complex. To deploy, maintain, and troubleshoot such networks, it is essential to understand how network elements such as servers, switches, virtual machines, and virtual network functions are connected to one another, and to be able to discover communication paths between them. For network maintenance applications such as troubleshooting and service quality management it is also essential to understand how connections change over time, and be able to pose time-travel queries to retrieve information about past network states. With the industry-wide move to SDNs and virtualized network functions [13], maintaining these inventory databases becomes a critical issue.
Pramod A. Jamkhedkar, Theodore Johnson, Yaron Kanza, Aman Shaikh, N. K. Shankaranarayanan, Vladislav Shkapenyuk, Gordon Woodhull
SIGMOD Conference2
2015 Data Stream Warehousing In Tidalrace
Theodore Johnson, Vladislav Shkapenyuk
CIDR1
2014 Data stream warehousing
abstract
Data stream warehousing is a data management technology designed to simultaneously handle big-data and fast-data. Conceptually, a data stream warehouse can be thought of as a data warehouse system that is updated in nearly-real time rather than during downtimes, or as a data stream management system that stores a very long history. In this tutorial, we 1) motivate the need for data stream warehouse systems using real-life examples drawn from our experiences in network and data center monitoring, 2) describe several possible system architectures for data stream warehousing, 3) discuss various issues in query languages, performance optimizations and data stream quality, and 4) conclude with a discussion of open problems.
Lukasz Golab, Theodore Johnson
ICDE2
2014 Hierarchical graph partitioning
abstract
One of the important optimization questions in highly parallel systems is the problem of assigning computational resources to communicating tasks. While scheduling tasks/operators, tasks assigned to nearby resources (e.g. on the same CPU core) have low communication costs, whereas tasks assigned to distant resources (e.g. on different server racks) have high communication costs. An optimal solution of task to resource assignment minimizes the communication cost of the task ensemble while satisfying the load balancing requirements. We model such an optimization question of minimizing communication cost as a new class of graph partitioning problems called hierarchical graph partitioning.
Mohammad Hajiaghayi, Theodore Johnson, M. Reza Khani, Barna Saha
SPAA2
2013 Data stream warehousing
abstract
tutorial Data stream warehousing Share on Authors: Lukasz Golab University of Waterloo, Waterloo, ON, Canada University of Waterloo, Waterloo, ON, CanadaView Profile , Theodore Johnson AT&T Labs - Research, Florham Park, NJ, USA AT&T Labs - Research, Florham Park, NJ, USAView Profile Authors Info & Claims SIGMOD '13: Proceedings of the 2013 ACM SIGMOD International Conference on Management of DataJune 2013 Pages 949–952https://doi.org/10.1145/2463676.2465337Online:22 June 2013Publication History 2citation603DownloadsMetricsTotal Citations2Total Downloads603Last 12 Months9Last 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
Lukasz Golab, Theodore Johnson
SIGMOD Conference2
2012 A Sequence-Oriented Stream Warehouse Paradigm for Network Monitoring Applications
Lukasz Golab, Theodore Johnson, Subhabrata Sen, Jennifer Yates
PAM2
2012 Scalable Scheduling of Updates in Streaming Data Warehouses
abstract
We discuss update scheduling in streaming data warehouses, which combine the features of traditional data warehouses and data stream systems. In our setting, external sources push append-only data streams into the warehouse with a wide range of interarrival times. While traditional data warehouses are typically refreshed during downtimes, streaming warehouses are updated as new data arrive. We model the streaming warehouse update problem as a scheduling problem, where jobs correspond to processes that load new data into tables, and whose objective is to minimize data staleness over time (at time t, if a table has been updated with information up to some earlier time r, its staleness is t minus r). We then propose a scheduling framework that handles the complications encountered by a stream warehouse: view hierarchies and priorities, data consistency, inability to preempt updates, heterogeneity of update jobs caused by different interarrival times and data volumes among different sources, and transient overload. A novel feature of our framework is that scheduling decisions do not depend on properties of update jobs (such as deadlines), but rather on the effect of update jobs on data staleness. Finally, we present a suite of update scheduling algorithms and extensive simulation experiments to map out factors which affect their performance.
Lukasz Golab, Theodore Johnson, Vladislav Shkapenyuk
IEEE Trans. Knowl. Data Eng.2
2011 Consistency in a Stream Warehouse
Lukasz Golab, Theodore Johnson
CIDR2
2011 Bistro data feed management system
abstract
Data feed management is a critical component of many data intensive applications that depend on reliable data delivery to support real-time data collection, correlation and analysis. Data is typically collected from a wide variety of sources and organizations, using a range of mechanisms - some data are streamed in real time, while other data are obtained at regular intervals or collected in an ad hoc fashion. Individual applications are forced to make separate arrangements with feed providers, learn the structure of incoming files, monitor data quality, and trigger any processing necessary. The Bistro data feed manager, designed and implemented at AT&T Labs- Research, simplifies and automates this complex task of data feed management: efficiently handling incoming raw files, identifying data feeds and distributing them to remote subscribers. Bistro supports a flexible specification language to define logical data feeds using the naming structure of physical data files, and to identify feed subscribers. Based on the specification, Bistro matches data files to feeds, performs file normalization and compression, efficiently delivers files, and notifies subscribers using a trigger mechanism. We describe our feed analyzer that discovers the naming structure of incoming data files to detect new feeds, dropped feeds, feed changes, or lost data in an existing feed. Bistro is currently deployed within AT&T Labs and is responsible for the real-time delivery of over 100 different raw feeds, distributing data to several large-scale stream warehouses.
Vladislav Shkapenyuk, Theodore Johnson, Divesh Srivastava
SIGMOD Conference2
2011 Update Propagation in a Streaming Warehouse
Theodore Johnson, Vladislav Shkapenyuk
SSDBM1
2010 Enabling Real Time Data Analysis
abstract
Network-based services have become a ubiquitous part of our lives, to the point where individuals and businesses have often come to critically rely on them. Building and maintaining such reliable, high performance network and service infrastructures requires the ability to rapidly investigate and resolve complex service and performance impacting issues. To achieve this, it is important to collect, correlate and analyze massive amounts of data from a diverse collection of data sources in real time. We have designed and implemented a variety of data systems at AT&T Labs-Research to build highly scalable databases that support real time data collection, correlation and analysis, including (a) the Daytona data management system, (b) the DataDepot data warehousing system, (c) the GS tool data stream management system, and (d) the Bistro data feed manager. Together, these data systems have enabled the creation and maintenance of a data warehouse and data analysis infrastructure for troubleshooting complex issues in the network. We describe these data systems and their key research contributions in this paper.
Divesh Srivastava, Lukasz Golab, Rick Greer, Theodore Johnson, Joseph Seidel, Vladislav Shkapenyuk, Oliver Spatscheck, Jennifer Yates
Proc. VLDB Endow.4
2009 Scheduling Updates in a Real-Time Stream Warehouse
abstract
This paper discusses updating a data warehouse that collects near-real-time data streams from a variety of external sources. The objective is to keep all the tables and materialized views up-to-date as new data arrive over time. We define the notion of data staleness, formalize the problem of scheduling updates in a way that minimizes average data staleness, and present scheduling algorithms designed to handle the complex environment of a real-time stream warehouse. A novel feature of our scheduling framework is that it considers the effect of an update on the staleness of the underlying tables rather than any property of the update job itself (such as deadline).
Lukasz Golab, Theodore Johnson, Vladislav Shkapenyuk
ICDE2
2009 Stream warehousing with DataDepot
abstract
We describe DataDepot, a tool for generating warehouses from streaming data feeds, such as network-traffic traces, router alerts, financial tickers, transaction logs, and so on. DataDepot is a streaming data warehouse designed to automate the ingestion of streaming data from a wide variety of sources and to maintain complex materialized views over these sources. As a streaming warehouse, DataDepot is similar to Data Stream Management Systems (DSMSs) with its emphasis on temporal data, best-effort consistency, and real-time response. However, as a data warehouse, DataDepot is designed to store tens to hundreds of terabytes of historical data, allow time windows measured in years or decades, and allow both real-time queries on recent data and deep analyses on historical data. In this paper we discuss the DataDepot architecture, with an emphasis on several of its novel and critical features. DataDepot is currently being used for five very large warehousing projects within AT&T; one of these warehouses ingests 500 Mbytes per minute (and is growing). We use these installations to illustrate streaming warehouse use and behavior, and design choices made in developing DataDepot. We conclude with a discussion of DataDepot applications and the efficacy of some optimizations.
Lukasz Golab, Theodore Johnson, J. Spencer Seidel, Vladislav Shkapenyuk
SIGMOD Conference2
2008 Query-Aware Partitioning for Monitoring Massive Network Data Streams
abstract
Data stream management systems (DSMS) are gaining acceptance for applications that need to process very large volumes of data in real time. The load generated by such applications frequently exceeds by far the computation capabilities of a single centralized server. In particular, a single-server instance of our DSMS, Gigascope, cannot keep up with the processing demands of the new OC-786 networks, which can generate more than 100 million packets per second. In this paper, we explore a mechanism for the distributed processing of very high speed data streams. Existing distributed DSMSs employ two mechanisms for distributing the load across the participating machines: partitioning of the query execution plans and partitioning of the input data stream in a query-independent fashion. However, for a large class of queries, both approaches fail to reduce the load as compared to centralized system, and can even lead to an increase in the load. In this paper we present an alternative approach - query-aware data stream partitioning that allows for more efficient scaling. We have developed methods for analyzing any given query node to determine a partition strategy, reconcile potentially conflicting requirements that different queries in a query set place on partitioning, and to choose an optimal partitioning which minimizes overall communication costs..
Theodore Johnson, S. Muthukrishnan 0001, Vladislav Shkapenyuk, Oliver Spatscheck
ICDE1
2008 Query-aware partitioning for monitoring massive network data streams
abstract
Data Stream Management Systems (DSMS) are gaining acceptance for applications that need to process very large volumes of data in real time. The load generated by such applications frequently exceeds by far the computation capabilities of a single centralized server. In particular, a single-server instance of our DSMS, Gigascope, cannot keep up with the processing demands of the new OC-786 networks, which can generate more than 100 million packets per second. In this paper, we explore a mechanism for the distributed processing of very high speed data streams.
Theodore Johnson, S. Muthukrishnan 0001, Vladislav Shkapenyuk, Oliver Spatscheck
SIGMOD Conference1
2008 Out-of-order processing: a new architecture for high-performance stream systems
abstract
Many stream-processing systems enforce an order on data streams during query evaluation to help unblock blocking operators and purge state from stateful operators. Such in-order processing (IOP) systems not only must enforce order on input streams, but also require that query operators preserve order. This order-preserving requirement constrains the implementation of stream systems and incurs significant performance penalties, particularly for memory consumption. Especially for high-performance, potentially distributed stream systems, the cost of enforcing order can be prohibitive. We introduce a new architecture for stream systems, out-of-order processing (OOP), that avoids ordering constraints. The OOP architecture frees stream systems from the burden of order maintenance by using explicit stream progress indicators, such as punctuation or heartbeats, to unblock and purge operators. We describe the implementation of OOP stream systems and discuss the benefits of this architecture in depth. For example, the OOP approach has proven useful for smoothing workload bursts caused by expensive end-of-window operations, which can overwhelm internal communication paths in IOP approaches. We have implemented OOP in two stream systems, Gigascope and NiagaraST. Our experimental study shows that the OOP approach can significantly outperform IOP in a number of aspects, including memory, throughput and latency.
Jin Li 0003, Kristin Tufte, Vladislav Shkapenyuk, Vassilis Papadimos, Theodore Johnson, David Maier 0001
Proc. VLDB Endow.5
2007 Monitoring Regular Expressions on Out-of-Order Streams
abstract
We present an efficient algorithm for regular expression matching on streams with out of order data, while maintaining a small state and without complete stream reconstruction. We have implemented three versions of the algorithm - sequential, parallel and mixed - and show by experimental study that the algorithms are highly effective in matching regular expressions on IP packet streams.
Theodore Johnson, S. Muthukrishnan 0001, Irina Rozenbaum
ICDE1
2005 Streams, Security and Scalability
Theodore Johnson, S. Muthukrishnan 0001, Oliver Spatscheck, Divesh Srivastava
DBSec1
2005 Sampling Algorithms in a Stream Operator
abstract
Complex queries over high speed data streams often need to rely on approximations to keep up with their input. The research community has developed a rich literature on approximate streaming algorithms for this application. Many of these algorithms produce samples of the input stream, providing better properties than conventional random sampling. In this paper, we abstract the stream sampling process and design a new stream sample operator. We show how it can be used to implement a wide variety of algorithms that perform sampling and sampling-based aggregations. Also, we show how to implement the operator in Gigascope - a high speed stream database specialized for IP network monitoring applications. As an example study, we apply the operator within such an enhanced Gigascope to perform subset-sum sampling which is of great interest for IP network management. We evaluate this implemention on a live, high speed internet traffic data stream and find that (a) the operator is a flexible, versatile addition to Gigascope suitable for tuning and algorithm engineering, and (b) the operator imposes only a small evaluation overhead. This is the first operational implementation we know of, for a wide variety of stream sampling algorithms at line speed within a data stream management system.
Theodore Johnson, S. Muthukrishnan 0001, Irina Rozenbaum
SIGMOD Conference1
2005 A Heartbeat Mechanism and Its Application in Gigascope
Theodore Johnson, S. Muthukrishnan 0001, Vladislav Shkapenyuk, Oliver Spatscheck
VLDB1
2005 Decision support queries on a tape-resident data warehouse
Damianos Chatziantoniou, Theodore Johnson
Inf. Syst.2
2004 Holistic UDAFs at streaming speeds
abstract
Many algorithms have been proposed to approximate holistic aggregates, such as quantiles and heavy hitters, over data streams. However, little work has been done to explore what techniques are required to incorporate these algorithms in a data stream query processor, and to make them useful in practice.In this paper, we study the performance implications of using user-defined aggregate functions (UDAFs) to incorporate selection-based and sketch-based algorithms for holistic aggregates into a data stream management system's query processing architecture. We identify key performance bottlenecks and tradeoffs, and propose novel techniques to make these holistic UDAFs fast and space-efficient for use in high-speed data stream applications. We evaluate performance using generated and actual IP packet data, focusing on approximating quantiles and heavy hitters. The best of our current implementations can process streaming queries at OC48 speeds (2x 2.4Gbps).
Graham Cormode, Theodore Johnson, Flip Korn, S. Muthukrishnan 0001, Oliver Spatscheck, Divesh Srivastava
SIGMOD Conference2
2003 Gigascope: A Stream Database for Network Applications
abstract
We have developed Gigascope, a stream database for network applications including traffic analysis, intrusion detection, router configuration analysis, network research, network monitoring, and performance monitoring and debugging. Gigascope is undergoing installation at many sites within the AT&T network, including at OC48 routers, for detailed monitoring. In this paper we describe our motivation for and constraints in developing Gigascope, the Gigascope architecture and query language, and performance issues. We conclude with a discussion of stream database research problems we have found in our application.
Chuck Cranor, Theodore Johnson, Oliver Spatscheck, Vladislav Shkapenyuk
SIGMOD Conference2
2003 Data Quality and Data Cleaning: An Overview
abstract
Data quality is a serious concern in any data-driven enterprise, often creating misleading findings during data mining, and causing process disruptions in operational databases. The manifestations of data quality problems can be very expensive- "losing" customers, "misplacing" billions of dollars worth of equipment, misallocated resources due to glitched forecasts, and so on. Solving data quality problems typically requires a very large investment of time and energy -- often 80% to 90% of a data analysis project is spent in making the data reliable enough that the results can be trusted.In this tutorial, we present a multi disciplinary approach to data quality problems. We start by discussing the meaning of data quality and the sources of data quality problems. We show how these problems can be addressed by a multidisciplinary approach, combining techniques from management science, statistics, database research, and metadata management. Next, we present an updated definition of data quality metrics, and illustrate their application with a case study. We conclude with a survey of recent database research that is relevant to data quality problems, and suggest directions for future research.
Theodore Johnson, Tamraparni Dasu
SIGMOD Conference1
2003 Efficient OLAP query processing in distributed data warehouses
Michael O. Akinde, Michael H. Böhlen, Theodore Johnson, Laks V. S. Lakshmanan, Divesh Srivastava
Inf. Syst.3
2002 Efficient OLAP Query Processing in Distributed Data Warehouses
Michael O. Akinde, Michael H. Böhlen, Theodore Johnson, Laks V. S. Lakshmanan, Divesh Srivastava
EDBT3
2002 Efficient OLAP Query Processing in Distributed Data Warehouse
abstract
The success of Internet applications has led to an explosive growth in the demand for bandwidth from ISPs. Managing an IP network includes complex data analysis that can often be expressed as OLAP queries. Current day OLAP tools assume the availability of the detailed data in a centralized warehouse. However, the inherently distributed nature of the data collection (e.g., flow-level traffic statistics are gathered at network routers) and the huge amount of data extracted at each collection point (of the order of several gigabytes per day for large IP networks) makes such an approach highly impractical. The natural solution to this problem is to maintain a distributed data warehouse, consisting of multiple local data warehouses (sites) adjacent to the collection points, together with a coordinator. In order for such a solution to make sense, we need a technology for distributed processing of complex OLAP queries. We have developed the Skalla system for this task. We conducted an experimental study of the Skalla evaluation scheme using TPC(R) data.
Michael O. Akinde, Michael H. Böhlen, Theodore Johnson, Laks V. S. Lakshmanan, Divesh Srivastava
ICDE3
2002 Gigascope: high performance network monitoring with an SQL interface
abstract
Operators of large networks and providers of network services need to monitor and analyze the network traffic flowing through their systems. Monitoring requirements range from the long term (e.g., monitoring link utilizations, computing traffic matrices) to the ad-hoc (e.g. detecting network intrusions, debugging performance problems). Many of the applications are complex (e.g., reconstruct TCP/IP sessions), query layer-7 data (find streaming media connections), operate over huge volumes of data (Gigabit and higher speed links), and have real-time reporting requirements (e.g., to raise performance or intrusion alerts).We have found that existing network monitoring technologies have severe limitations. One option is to use TCPdump to monitor a network port and a user-level application program to process the data. While this approach is very flexible, it is not fast enough to handle gigabit speeds on inexpensive equipment. Another approach is to use network monitoring devices. While these devices are capable of high speed monitoring, they are inflexible as the set of monitoring tasks is pre-defined. Adding new functionality is expensive and has long lead times. A similar approach is to use monitoring tools built into routers, such as SNMP, RMON, or NetFlow. These tools have similar characteristics --- fast but inflexible.A further problem with all of these tools is their lack of a query interface. The data from the monitors are dumped to a file or piped through a file stream without an association to the semantics of the data. The burden of managing and interpreting the data is left to the analyst. Due to the volume and complexity of the data, the burden can be severe. These problems make developing new applications needlessly slow and difficult. Also, many mistakes are made leading to incorrect analyses.
Chuck Cranor, Theodore Johnson, Vladislav Shkapenyuk, Oliver Spatscheck
SIGMOD Conference3
2002 Mining database structure; or, how to build a data quality browser
abstract
Data mining research typically assumes that the data to be analyzed has been identified, gathered, cleaned, and processed into a convenient form. While data mining tools greatly enhance the ability of the analyst to make data-driven discoveries, most of the time spent in performing an analysis is spent in data identification, gathering, cleaning and processing the data. Similarly, schema mapping tools have been developed to help automate the task of using legacy or federated data sources for a new purpose, but assume that the structure of the data sources is well understood. However the data sets to be federated may come from dozens of databases containing thousands of tables and tens of thousands of fields, with little reliable documentation about primary keys or foreign keys.We are developing a system, Bellman, which performs data mining on the structure of the database. In this paper, we present techniques for quickly identifying which fields have similar values, identifying join paths, estimating join directions and sizes, and identifying structures in the database. The results of the database structure mining allow the analyst to make sense of the database content. This information can be used to e.g., prepare data for data mining, find foreign key joins for schema mapping, or identify steps to be taken to prevent the database from collapsing under the weight of its complexity.
Tamraparni Dasu, Theodore Johnson, S. Muthukrishnan 0001, Vladislav Shkapenyuk
SIGMOD Conference2
2002 The Generalized MDL Approach for Summarization
Laks V. S. Lakshmanan, Raymond T. Ng, Christine Xing Wang, Theodore Johnson
VLDB5
2001 The MD-join: An Operator for Complex OLAP
abstract
OLAP queries (i.e. group-by or cube-by queries with aggregation) have proven to be valuable for data analysis and exploration. Many decision support applications need very complex OLAP queries, requiring a fine degree of control over both the group definition and the aggregates that are computed. For example, suppose that the user has access to a data cube whose measure attribute is Sum(Sales). Then the user might wish to compute the sum of sales in New York and the sum of sales in California for those data cube entries in which Sum(Sales)>$1,000,000. This type of complex OLAP query is often difficult to express and difficult to optimize using standard relational operators (including standard aggregation operators). In this paper, we propose the MD-join operator for complex OLAP queries. The MD-join provides a clean separation between group definition and aggregate computation, allowing great flexibility in the expression of OLAP queries. In addition, the MD-join has a simple and easily optimizable implementation, while the equivalent relational algebra expression is often complex and difficult to optimize. We present several algebraic transformations that allow relational algebra queries that include MD-joins to be optimized.
Damianos Chatziantoniou, Michael O. Akinde, Theodore Johnson, Samuel Kim
ICDE3
2000 Online Data Mining for Co-Evolving Time Sequences
abstract
In many applications, the data of interest comprises multiple sequences that evolve over time. Examples include currency exchange rates and network traffic data. We develop a fast method to analyze such co-evolving time sequences jointly to allow (a) estimation/forecasting of missing/delayed/future values, (b) quantitative data mining, and (c) outlier detection. Our method, MUSCLES, adapts to changing correlations among time sequences. It can handle indefinitely long sequences efficiently using an incremental algorithm and requires only a small amount of storage and less I/O operations. To make it scale for a large number of sequences, we present a variation, the Selective MUSCLES method and propose an efficient algorithm to reduce the problem size. Experiments on real datasets show that MUSCLES outperforms popular competitors in prediction accuracy up to 10 times, and discovers interesting correlations. Moreover, Selective MUSCLES scales up very well for large numbers of sequences, reducing response time up to 110 times over MUSCLES, and sometimes even improves the prediction quality.
Byoung-Kee Yi, Nicholas D. Sidiropoulos, Theodore Johnson, H. V. Jagadish, Christos Faloutsos, Alexandros Biliris
ICDE3
2000 Optimizing Queries on Compressed Bitmaps
Sihem Amer-Yahia, Theodore Johnson
VLDB2
2000 The 3W Model and Algebra for Unified Data Mining
Theodore Johnson, Laks V. S. Lakshmanan, Raymond T. Ng
VLDB1
2000 Incorporating Load Factor into the scheduling of Soft real-time transactions for main memory databases
Dong-Kweon Hong, Sharma Chakravarthy, Theodore Johnson
Inf. Syst.3
2000 An optimal algorithm for the construction of the system dependence graph
Panos E. Livadas, Theodore Johnson
Inf. Sci.2
1999 Extending Complex Ad-Hoc OLAP
abstract
Large scale data analysis and mining activities require sophisticated information extraction queries. Many queries require complex aggregation, and many of these aggregates are non-distributive. Conventional solutions to this problem involve defining User Defined Aggregate Functions (UDAFs). However, the use of UDAFs entails several problems. Defining a new UDAF can be a significant burden for the user, and optimizing queries involving UDAFs is difficult because of the “black box” nature of the UDAF.
Theodore Johnson, Damianos Chatziantoniou
CIKM1
1999 Squashing Flat Files Flatter
abstract
A feature of data mining that distinguishes it from "classical" machine learning (ML) and statistical modeling (SM) is scale. The community seems to agree on this yet progress to this point has been limited. We present a methodology that addresses scale in a novel fashion that has the potential for revolutionizing the field. While the methodology applies most directly to flat (row by column) data sets we believe that it can be adapted to other representations. Our approach to the problem is not to scale up individual ML and SM methods. Rather we prefer to leverage the entire collection of existing methods by scaling down the data set. We call the method squashing. Our method demonstrably outperforms random sampling and a theoretical argument suggests how and why it works well. Squashing consists of three modular steps: grouping, momentizing, and generating (GMG). These three steps describe the squashing pipeline whereby the original (very large data set) is sectioned off into mutual...
William DuMouchel, Chris Volinsky, Theodore Johnson, Corinna Cortes, Daryl Pregibon
KDD3
1999 Range Selectivity Estimation for Continuous Attributes
abstract
Many commercial database systems maintain histograms to efficiently estimate query selectivities as part of query optimization. Most work on histogram design is implicitly geared towards discrete or categorical attribute value domains. We consider approaches that are better suited for the continuous valued attributes commonly found in scientific and statistical databases. We propose two methods based on spline functions for estimating the selectivity of range queries over univariate and multivariate data. These methods are more accurate than histograms. As the results from our experiments on both real and synthetic data sets demonstrate, the proposed methods achieved substantially better (up to 5.5 times) estimation error than the state-of-the-art histograms, at exactly the same storage space and with comparable CPU runtime overhead; moreover, the superiority of the proposed spline methods is amplified when applied to multivariate data.
Flip Korn, Theodore Johnson, H. V. Jagadish
SSDBM2
1999 Performance Measurements of Compressed Bitmap Indices
Theodore Johnson
VLDB1
1998 Coarse Indices for a Tape-Based Data Warehouse
abstract
Data warehouses allow users to make sense of large quantities of detail data. While most queries can be answered through summary data, some queries can only be answered by accessing the detail data. It is usually not cost-effective to store terabytes of detail data online; instead, the detail data is stored on tape. The problem we address in this paper is how to index tape-based detail data. Conventional indices on tens of terabytes of data can require terabytes of storage themselves. We propose the use of coarse indices for tape-based detail data. Instead of specifying all locations of a record containing a particular key, the coarse index specifies whether or not a region of tape contains at least one record with a particular key value. Our proposal is based on the observation that while long tape seeks are fast, short tape seeks are slow. Therefore, indices that point to the exact record location on tape do not provide performance benefits to justify the cost of their storage. A few bits pointing to an appropriate location are enough. In this paper, we present the design of such a coarse index, and provide fast algorithms for its updating and querying. Our experiments on a large data set taken from an existing data warehouse show that using compressed bitmap indices offer an order-of-magnitude reduction in index size, permitting the online storage of the coarse indices. Analytical and simulation models of the time to fetch selected records from tape show that using coarse indices almost always improves reduces the total loading time as compared to using dense tape-based indices or to using no index at all.
Theodore Johnson
ICDE1
1998 Comparing Massive High-Dimensional Data Sets
Theodore Johnson, Tamraparni Dasu
KDD1
1998 Fast Computation of 2-Dimensional Depth Contours
Theodore Johnson, Ivy Kwok, Raymond T. Ng
KDD1
1998 Performance Measurements of Tertiary Storage Devices
Theodore Johnson, Ethan L. Miller
VLDB1
1998 Real-Time Transaction Scheduling: A Framework for Synthesizing Static and Dynamic Factors
Sharma Chakravarthy, Dong-Kweon Hong, Theodore Johnson
Real Time Syst.3
1997 A Prioritized Multiprocessor Spin Lock
abstract
In this paper, we present the PR lock, a prioritized spin lock mutual exclusion algorithm. The PR lock is a contention-free spin lock, in which blocked processes spin on locally stored or cached variables. In contrast to previous work on prioritized spin locks, our algorithm maintains a pointer to the lock holder. As a result, our spin lock can support operations on the lock holder (e.g., for abort ceiling protocols). Unlike previous algorithms, all work to maintain a priority queue is done while a process acquires a lock when it is blocked anyway. Releasing a lock is a constant time operation. We present simulation results that demonstrate the prioritized acquisition of locks, and compare the performance of the PR lock against that of the best alternative prioritized spin lock.
Theodore Johnson, Krishna Harathi
IEEE Trans. Parallel Distributed Syst.1
1996 Selection Predicate Indexing for Active Databases Using Interval Skip Lists
Eric N. Hanson, Theodore Johnson
Inf. Syst.2
1996 A Comparison of Fast and Low Overhead Distributed Priority Locks
Theodore Johnson, Richard E. Newman
J. Parallel Distributed Comput.1
1996 A Concurrent Dynamic Task Graph
Theodore Johnson, Timothy A. Davis 0001, Steven M. Hadfield
Parallel Comput.1
1996 An Analytical Performance Model of Robotic Storage Libraries
Theodore Johnson
Perform. Evaluation1
1995 Characterizing the Performance of Algorithms for Lock-Free Objects
abstract
Concurrent access to shared data objects must be regulated by a concurrency control protocol to ensure correctness. Many concurrency control protocols require that a process set a lock on the data it accesses. Recently, there has been considerable interest in lock-free concurrency control algorithms. Lock-free algorithms offer the potential for better system performance because slow or failed processes do not block fast processes. Process "slowdowns" can occur due to cache line faults, memory and bus contention, page faults, context switching, NUMA architectures, heterogeneous architectures, or differences in operation execution time. Much work has been done to characterize the performance of locking algorithms, but little has been done to characterize the performance of lock-free algorithms. In this paper, we present a performance model for analyzing lock-free algorithms that studies the effects of slowdowns on performance. We find that lock-free algorithms are better than locking algorithms if the slowdowns are transient, but worse if the slowdowns are permanent. One implication of this result is that lock-free concurrent objects are appropriate for UMA architectures, but NUMA architectures require special protocols.>
Theodore Johnson
IEEE Trans. Computers1
1995 Approximate Analysis of Reader/Writer Queues
abstract
We analyze the performance of queues that serve readers and writers. Readers are served concurrently, while writers require exclusive service. We approximately analyze a first-come-first-serve (FCFS) reader/writer queue, and derive simple formulae for computing waiting times and capacity under the assumption of Poisson arrivals and exponential service. We extend the analysis to handle a one writer queue, and a queue that includes write intention locks. The simple analyses that we present can be used as rules of thumb for designing concurrent systems.>
Theodore Johnson
IEEE Trans. Software Eng.1
1994 2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm
Theodore Johnson, Dennis E. Shasha
VLDB1
1994 A Highly Concurrent Priority Queue
Theodore Johnson
J. Parallel Distributed Comput.1
1994 A new approach to finding objects in programs
abstract
Abstract Software maintenance is difficult and costly because the maintainer must understand the existing relationships in the maintained code. The maintainer's job can be made considerably easier if the objects in the code (related groups of types, data, and procedures) are identified. In this paper, we discuss methods for identifying objects in programs, and present a new approach that relies on these key features. First, our internal program representation (IPR) lets us make a more precise identification of objects than previous methods allowed. Second, we introduce the idea of receiver‐based object identification. Third, we introduce the idea of two‐step object identification, which gives the user greater control in precisely identifying objects. Our object finding tool can be used with the other tools our IPR provides to create an integrated software maintenance environment.
Panos E. Livadas, Theodore Johnson
J. Softw. Maintenance Res. Pract.2
1994 A Nonblocking Algorithm for Shared Queues Using Compare-and-Swap
abstract
Nonblocking algorithms for concurrent objects guarantee that an object is always accessible, in contrast to blocking algorithms in which a slow or halted process can render part or all of the data structure inaccessible to other processes. A number of algorithms have been proposed for shared FIFO queues, but nonblocking implementations are few and either limit the concurrency or provide inefficient solutions. The authors present a simple and efficient nonblocking shared FIFO queue algorithm with O(n) system latency, no additional memory requirements, and enqueuing and dequeuing times independent of the size of the queue. They use the compare & swap operation as the basic synchronization primitive. They model their algorithm analytically and with a simulation, and compare its performance with that of a blocking FIFO queue. They find that the nonblocking queue has better performance if processors are occasionally slow, but worse performance if some processors are always slower than others.>
Sundeep Prakash, Yann-Hang Lee, Theodore Johnson
IEEE Trans. Computers3
1993 A Concurrent Dynamic Task Graph
abstract
Task graphs are used for scheduling tasks on parallel processors when the tasks have dependencies. If the execution of the program is known ahead of time, then the tasks can be statically and optimally allocated to the processors. If the tasks and task dependencies aren't known ahead of time (the case in some analysts-factor sparse matrix algorithms), then task scheduling must be performed on the fly. We present simple algorithms for a concurrent dynamic-task graph. A processor that needs to execute a new task can query the task graph for a new task, and new tasks can be added to the task graph on the fly. We present several alternatives for allocating tasks for processors and compare their performance.
Theodore Johnson
ICPP (2)1
1993 Real-Time Transaction Scheduling: A Cost Conscious Approach
abstract
Real-time databases are an important component of embedded real-time systems. In a real-time database context, transactions must not only maintain the consistency constraints of the database but must also satisfy the timing constraints specified for each transaction. Although several approaches have been proposed to integrate real-time scheduling and database concurrency control methods, none of them take into account the dynamic cost of scheduling a transaction. In this paper, we propose a new cost conscious real-time transaction scheduling algorithm which considers dynamic costs associated with a transaction. Our dynamic priority assignment algorithm adapts to changes in the system load without causing excessive numbers of transaction restarts. Our simulations show its superiority over EDF-HP algorithm.
D. Hong, Theodore Johnson, Sharma Chakravarthy
SIGMOD Conference2
1993 Lazy Updates for Distributed Search Structure
abstract
Very large database systems require distributed storage, which means that they need distributed search structures for fast and efficient access to the data. In this paper, we present an approach to maintaining distributed data structures that uses lazy updates, which take advantage of the semantics of the search structure operations to allow for scalable and low-overhead replication. Lazy updates can be used to design distributed search structures that support very high levels of concurrency. The alternatives to lazy update algorithms (eager updates) use synchronization to ensure consistency, while lazy update algorithms avoid blocking. Since lazy updates avoid the use of synchronization, they are much easier to implement than eager update algorithms. We demonstrate the application of lazy updates to the dB-tree, which is a distributed B+ tree that replicates its interior nodes for highly parallel access. We develop a correctness theory for lazy updates so that our algorithms can be applied to other distributed search structures.
Theodore Johnson, Padmashree Krishna
SIGMOD Conference1
1993 A Simple Correctness Proof of the MCS Contention-Free Lock
Theodore Johnson, Krishna Harathi
Inf. Process. Lett.1
1993 B-Trees with Inserts and Deletes: Why Free-at-Empty Is Better Than Merge-at-Half
abstract
The space utilization of B-tree nodes determines the number of levels in the B-tree and hence its performance. Until now, the only analytical aid to the determination of a B-tree's utilization has been the analysis by Yao and related work. Yao showed that the utilization of B-tree nodes under pure inserts is 69%. We derive analytically and verify by simulation the utilization of B-tree nodes constructed from a mixture of insert and delete operations. Assuming that nodes only merge (i.e., are freed) when they are empty we show that the utilization is 39% when the number of inserts is the same as the number of deletes. However, it there are just 5% more inserts than deletes, then the utilization is over 62%. We also calculate the probability of splitting and merging. We derive a simple rule-of-thumb that accurately calculates the probability of splitting. We also model B-trees that merge half-empty nodes. The utilization of merge-at-half B-trees is slightly larger than the utilization of free-at-empty B-trees, but the restructuring rate is much higher. For most purposes, this implies that free-at-empty B-trees are a better implementation choice than merge-at-half B-trees. We present two models for computing B-tree utilization, the more accurate of which remembers items inserted and then deleted in a node.
Theodore Johnson, Dennis E. Shasha
J. Comput. Syst. Sci.1
1993 A bistability throughput phenomenon in a shared-memory MIMD machine
Raymond R. Glenn, Daniel V. Pryor, John M. Conroy, Theodore Johnson
J. Supercomput.4
1993 The Performance of Current B-Tree Algorithms
abstract
article Free AccessThe performance of current B-tree algorithms Authors: Theodore Johnson Univ. of Florida, Gainesville Univ. of Florida, GainesvilleView Profile , Dennis Sasha New York Univ., New York, NY New York Univ., New York, NYView Profile Authors Info & Claims ACM Transactions on Database SystemsVolume 18Issue 1pp 51–101https://doi.org/10.1145/151284.151286Published:01 March 1993Publication History 57citation1,840DownloadsMetricsTotal Citations57Total Downloads1,840Last 12 Months77Last 6 weeks15 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
Theodore Johnson, Dennis E. Shasha
ACM Trans. Database Syst.1
1991 A Non-Blocking Algorithm for Shared Queues Using Compare-and-Swap
Sundeep Prakash, Yann-Hang Lee, Theodore Johnson
ICPP (2)3
1991 Characterizing memory hot spots in a shared memory MIMD machine
abstract
This paper analyzes two memory hot spot problems associated with massively parallel MIMD computers.The jirst is the memory stride problem, which is similar to stride problems found in existing supercomputers.Pseudo-random interleaving, as proposed by Norton and Melton, is the preferred solution.The second hot spot problem occurs in designs that use two separate memory accesses to lock and unlock critical sections (split transaction) and employ a jirst comeljirst serve queuing mechanism for shared memory locations.A bistabilip in throughput brought about by these conditions is analyzed and experimentally demonstrated.Simple equations are presented which predict the throughput at a critical section of code as a function of the number of applied threads.These equations also express the maximum number of threads that can safely be applied without the possibility of stalling.
Raymond R. Glenn, Daniel V. Pryor, John M. Conroy, Theodore Johnson
SC4
1990 A Framework for the Performance Analysis of Concurrent B-tree Algorithms
abstract
Many concurrent B-tree algorithms have been proposed, but they have not yet been satisfactorily analyzed. When transaction processing systems require high levels of concurrency, a restrictive serialization technique on the B-tree index can cause a bottleneck. In this paper, we present a framework for constructing analytical performance models of concurrent B-tree algorithms. The models can predict the response time and maximum throughput. We analyze three algorithms: Naive Lock-coupling, Optimistic Descent, and the Lehman-Yao algorithm. The analyses are validated by simulations of the algorithms on actual B-trees. Simple and instructive rules of thumb for predicting performance are also derived. We apply the analyses to determine the effect of database recovery on B-tree concurrency.
Theodore Johnson, Dennis E. Shasha
PODS1
1990 Approximate Analysis of Reader and Writer Access to a Shared Resource
abstract
In this paper we present a queue that has two classes of customers: readers and writers. Readers access the resource concurrently and writers access the resource serially. The queue discipline is FCFS: readers must wait until all writers that arrived earlier have completed service, and vice versa. The approximation can predict both the expected waiting times for readers and writers and the capacity of the queue. The queue can be used for the analysis of operating system and software resources that can be accessed both serially and concurrently, such as shared files. We have used the queue to analyze the performance of concurrent B-tree algorithms.
Theodore Johnson
SIGMETRICS1
1990 Sensitivity Study of the Load Balancing Algorithm in a Distributed System
Anna Hác, Theodore Johnson
J. Parallel Distributed Comput.2
1990 A performance comparison of a closely-coupled and a loosely-coupled architecture
Anna Hác, Theodore Johnson
J. Syst. Softw.2
1989 Utilization of B-trees with Inserts, Deletes and Modifies
abstract
The utilization of B-tree nodes determines the number of levels in the B-tree and hence its performance. Until now, the only analytical aid to the determination of a B-tree's utilization has been the analysis by Yao and related work. Yao showed that the utilization of B-tree nodes under pure inserts was 69%. We derive analytically and verify by simulation the utilization of B-tree nodes constructed from N inserts followed by M modifies (where M > N), where each modify is a delete followed by an insert. Assuming that nodes only merge when they are empty (the technique used in most database management systems), we show that the utilization is 39% as M becomes large. We extend this model to a parameterized mixture of inserts and modifies. Surprisingly, if the modifies are mixed with just 10% inserts, then the utilization is over 62%. We also calculated the probability of splitting and merging. We derive a simple rule-of-thumb that accurately calculates the probability of splitting. We present two models for computing this utilization, the more accurate of which remembers items inserted and then deleted in a node - we call such items ghosts.
Theodore Johnson, Dennis E. Shasha
PODS1
1986 A study of dynamic load balancing in a distributed system
abstract
This paper presents a study of a distributed system consisting of a number of hosts connected by a local area network. The system model is based on the LOCUS distributed file system. The LOCUS file system allows replicated files, and the synchronization policy is enforced by the use of the Centralized Synchronization Sites (CSS). All requests to open a file for access must be sent to the file's CSS which checks for access conflicts. Our simulation model allows process migration. The focus of this study is on load balancing as applied to optimal process and read site placement. An algorithm is proposed that increases system performance through load balancing. This algorithm uses data collected by the system on which to base its decisions. The characteristics of the algorithm and their effects on system performance are analyzed and discussed.
Anna Hác, Theodore Johnson
SIGCOMM2