Dennis E. Shasha

dblp:s/DennisShasha · also Dennis Elliot Shasha, Dennis Shasha · DBLP profile ↗
← Back
162ranked-venue papers
24as first author
18since 2021 · last 2026
0000-0002-7036-3312ORCID · verified

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

Databases, data management, data science and information retrieval · 99 · 18 first-author · 8 since 2021Artificial intelligence and machine learning · 22 · 1 first-author · 5 since 2021Applied, interdisciplinary, general and emerging computing · 18 · 2 since 2021Software engineering, systems software and programming languages · 8 · 2 first-author · 2 since 2021Graphics, computer vision, multimedia, augmented reality and games · 8 · 2 since 2021Human-computer interaction and ubiquitous computing · 8 · 1 first-author · 1 since 2021Theory of computation · 7Systems, architecture and hardware · 6 · 2 first-authorSecurity and privacy · 3Computer networks · 2 · 1 since 2021
YearPublicationVenuePosition
2026 Efficient Detection of Seasonal Bursts: Applications to Climate Time Series
Guillaume Coulaud, Audrey Brouillet, Reza Akbarinia, Florent Masseglia, Dennis E. Shasha
DEXA (2)5
2025 ClimBurst: A Dynamic Visualization Tool to Display Climatological Anomalies over Time and Space
abstract
Detecting abnormal climate events across temporal and spatial scales is crucial to the understanding of local and regional climate trends. This demonstration introduces ClimBurst, a dynamic tool to detect climate bursts, which are unusually high or low values of one or more climate variables over some time interval. ClimBurst detects bursts without prior assumptions about their temporal duration. The demonstration will allow users to interact directly with our system to see both a summary showing the presence/absence of bursts over a user-specified year and spatial range. The demonstration will also allow users to perform time-travel queries to see how bursts propagate over space and time.
Guillaume Coulaud, Benoit Lange, Dennis E. Shasha, Audrey Brouillet, Reza Akbarinia, Florent Masseglia
CIKM3
2025 MultiGraphMatch: A Subgraph Matching Algorithm for Multigraphs
abstract
Subgraph matching is the problem of finding all the occurrences of a small graph, called the query, in a larger graph, called the target. Although the problem has been widely studied in simple graphs, few solutions have been proposed for multigraphs, in which two nodes can be connected by multiple edges, each denoting a possibly different type of relationship. In our new algorithm MultiGraphMatch (MGM), nodes and edges can be associated with labels and multiple properties. MGM introduces a novel data structure called bit matrix to efficiently index both the query and the target and filter the set of target edges that are matchable with each query edge. In addition, the algorithm proposes a new technique for ordering the processing of query edges based on the cardinalities of the sets of matchable edges. Using the CYPHER query definition language, MGM can perform queries with logical conditions on node and edge labels. We compare MGM with SuMGra and graph database systems Memgraph and Neo4J, showing comparable or better performance in all queries on a wide variety of synthetic and real-world graphs.
Giovanni Micale, Antonio Di Maria, Roberto Grasso, Vincenzo Bonnici, Alfredo Ferro, Dennis E. Shasha, Rosalba Giugno, Alfredo Pulvirenti
ACM Trans. Knowl. Discov. Data6
2024 Verifying Lock-Free Search Structure Templates
abstract
We present and verify template algorithms for lock-free concurrent search structures that cover a broad range of existing implementations based on lists and skiplists. Our linearizability proofs are fully mechanized in the concurrent separation logic Iris. The proofs are modular and cover the broader design space of the underlying algorithms by parameterizing the verification over aspects such as the low-level representation of nodes and the style of data structure maintenance. As a further technical contribution, we present a mechanization of a recently proposed method for reasoning about future-dependent linearization points using hindsight arguments. The mechanization builds on Iris' support for prophecy reasoning and user-defined ghost resources. We demonstrate that the method can help to reduce the proof effort compared to direct prophecy-based proofs.
Nisarg Patel, Dennis E. Shasha, Thomas Wies
ECOOP2
2024 ArcMatch: high-performance subgraph matching for labeled graphs by exploiting edge domains
abstract
Abstract Consider a large labeled graph (network), denoted the target. Subgraph matching is the problem of finding all instances of a small subgraph, denoted the query, in the target graph. Unlike the majority of existing methods that are restricted to graphs with labels solely on vertices, our proposed approach, named can effectively handle graphs with labels on both vertices and edges. ntroduces an efficient new vertex/edge domain data structure filtering procedure to speed up subgraph queries. The procedure, called path-based reduction, filters initial domains by scanning them for paths up to a specified length that appear in the query graph. Additionally, ncorporates existing techniques like variable ordering and parent selection, as well as adapting the core search process, to take advantage of the information within edge domains. Experiments in real scenarios such as protein–protein interaction graphs, co-authorship networks, and email networks, show that s faster than state-of-the-art systems varying the number of distinct vertex labels over the whole target graph and query sizes.
Vincenzo Bonnici, Roberto Grasso, Giovanni Micale, Antonio Di Maria, Dennis E. Shasha, Alfredo Pulvirenti, Rosalba Giugno
Data Min. Knowl. Discov.5
2024 Bankruptcy prediction with low-quality financial information
Eduardo da Silva Mattos, Dennis E. Shasha
Expert Syst. Appl.2
2024 AutoTag: automated metadata tagging for film post-production
abstract
Abstract Film post-production can be time- and money-inefficient. The reason is that a lot of the work involves a person or group of people, called metadata taggers, going through each individual piece of media and marking it up with relevant tags, such as the scene number, transcripts, and the type of shot for video footage. Such a task is particularly time-consuming for films with high shooting ratios (i.e., footage shot/footage shown). AutoTag automates much of the tagging process across 16 languages, saving both time and money. We describe the algorithms and implementation of AutoTag and report on some case studies.
Marcelo Sandoval-Castañeda, Scandar Copti, Dennis E. Shasha
Multim. Tools Appl.3
2023 Planning Multiple Epidemic Interventions with Reinforcement Learning
abstract
Combating an epidemic entails finding a plan that describes when and how to apply different interventions, such as mask-wearing mandates, vaccinations, school or workplace closures. An optimal plan will curb an epidemic with minimal loss of life, disease burden, and economic cost. Finding an optimal plan is an intractable computational problem in realistic settings. Policy-makers, however, would greatly benefit from tools that can efficiently search for plans that minimize disease and economic costs especially when considering multiple possible interventions over a continuous and complex action space given a continuous and equally complex state space. We formulate this problem as a Markov decision process. Our formulation is unique in its ability to represent multiple continuous interventions over any disease model defined by ordinary differential equations. We illustrate how to effectively apply state-of-the-art actor-critic reinforcement learning algorithms (PPO and SAC) to search for plans that minimize overall costs. We empirically evaluate the learning performance of these algorithms and compare their performance to hand-crafted baselines that mimic plans constructed by policy-makers. Our method outperforms baselines. Our work confirms the viability of a computational approach to support policy-makers.
Anh L. Mai, Nikunj Gupta, Azza Abouzeid, Dennis E. Shasha
IJCAI4
2023 EnsInfer: a simple ensemble approach to network inference outperforms any single method
abstract
This study evaluates both a variety of existing base causal inference methods and a variety of ensemble methods. We show that: (i) base network inference methods vary in their performance across different datasets, so a method that works poorly on one dataset may work well on another; (ii) a non-homogeneous ensemble method in the form of a Naive Bayes classifier leads overall to as good or better results than using the best single base method or any other ensemble method; (iii) for the best results, the ensemble method should integrate all methods that satisfy a statistical test of normality on training data. The resulting ensemble model EnsInfer easily integrates all kinds of RNA-seq data as well as new and existing inference methods. The paper categorizes and reviews state-of-the-art underlying methods, describes the EnsInfer ensemble approach in detail, and presents experimental results. The source code and data used will be made available to the community upon publication.
Bingran Shen, Gloria M. Coruzzi, Dennis E. Shasha
BMC Bioinform.3
2023 BugDoc
Raoni Lourenço, Juliana Freire, Eric Simon, Gabriel Weber, Dennis E. Shasha
VLDB J.5
2023 Correction to: BugDoc Iterative debugging and explanation of pipeline executions
Raoni Lourenço, Juliana Freire, Eric Simon, Gabriel Weber, Dennis E. Shasha
VLDB J.5
2022 AcX: System, Techniques, and Experiments for Acronym Expansion
abstract
In this information-accumulating world, each of us must learn continuously. To participate in a new field, or even a sub-field, one must be aware of the terminology including the acronyms that specialists know so well, but newcomers do not. Building on state-of-the art acronym tools, our end-to-end acronym expander system called AcX takes a document, identifies its acronyms, and suggests expansions that are either found in the document or appropriate given the subject matter of the document. As far as we know, AcX is the first open source and extensible system for acronym expansion that allows mixing and matching of different inference modules. As of now, AcX works for English, French, and Portuguese with other languages in progress. This paper describes the design and implementation of AcX, proposes three new acronym expansion benchmarks , compares state-of-the-art techniques on them, and proposes ensemble techniques that improve on any single technique. Finally, the paper evaluates the performance of AcX and related work MadDog system in end-to-end experiments on a new human-annotated dataset of Wikipedia documents. Our experiments show that AcX outperforms MadDog but that human performance is still substantially better than the best automated approaches. Thus, achieving Acronym Expansion at a human level is still a rich and open challenge.
João L. M. Pereira, João Casanova, Helena Galhardas, Dennis E. Shasha
Proc. VLDB Endow.4
2021 Planning Epidemic Interventions with EpiPolicy
abstract
Model-driven policymaking for epidemic control is a challenging collaborative process. It begins when a team of public-health officials, epidemiologists, and economists construct a reasonably predictive disease model representative of the team’s region of interest as a function of its unique socio-economic and demographic characteristics. As the team considers possible interventions such as school closures, social distancing, vaccination drives, etc., they need to simultaneously model each intervention’s effect on disease spread and economic cost. The team then engages in an extensive what-if analysis process to determine a cost-effective policy: a schedule of when, where and how extensively each intervention should be applied. This policymaking process is often an iterative and laborious programming-intensive effort where parameters are introduced and refined, model and intervention behaviors are modified, and schedules changed. We have designed and developed EpiPolicy to support this effort.
Zain Tariq, Miro Mannino, Mai Le Xuan Anh, Whitney Bagge, Azza Abouzeid, Dennis E. Shasha
UIST6
2021 Pheniqs 2.0: accurate, high-performance Bayesian decoding and confidence estimation for combinatorial barcode indexing
abstract
BACKGROUND: Systems biology increasingly relies on deep sequencing with combinatorial index tags to associate biological sequences with their sample, cell, or molecule of origin. Accurate data interpretation depends on the ability to classify sequences based on correct decoding of these combinatorial barcodes. The probability of correct decoding is influenced by both sequence quality and the number and arrangement of barcodes. The rising complexity of experimental designs calls for a probability model that accounts for both sequencing errors and random noise, generalizes to multiple combinatorial tags, and can handle any barcoding scheme. The needs for reproducibility and community benchmark standards demand a peer-reviewed tool that preserves decoding quality scores and provides tunable control over classification confidence that balances precision and recall. Moreover, continuous improvements in sequencing throughput require a fast, parallelized and scalable implementation. RESULTS AND DISCUSSION: We developed a flexible, robustly engineered software that performs probabilistic decoding and supports arbitrarily complex barcoding designs. Pheniqs computes the full posterior decoding error probability of observed barcodes by consulting basecalling quality scores and prior distributions, and reports sequences and confidence scores in Sequence Alignment/Map (SAM) fields. The product of posteriors for multiple independent barcodes provides an overall confidence score for each read. Pheniqs achieves greater accuracy than minimum edit distance or simple maximum likelihood estimation, and it scales linearly with core count to enable the classification of > 11 billion reads in 1 h 15 m using < 50 megabytes of memory. Pheniqs has been in production use for seven years in our genomics core facility. CONCLUSION: We introduce a computationally efficient software that implements both probabilistic and minimum distance decoders and show that decoding barcodes using posterior probabilities is more accurate than available methods. Pheniqs allows fine-tuning of decoding sensitivity using intuitive confidence thresholds and is extensible with alternative decoders and new error models. Any arbitrary arrangement of barcodes is easily configured, enabling computation of combinatorial confidence scores for any barcoding strategy. An optimized multithreaded implementation assures that Pheniqs is faster and scales better with complex barcode sets than existing tools. Support for POSIX streams and multiple sequencing formats enables easy integration with automated analysis pipelines.
Lior Galanti, Dennis E. Shasha, Kristin C. Gunsalus
BMC Bioinform.2
2021 Pi-Radio v1: Calibration techniques to enable fully-digital beamforming at 60 GHz
Aditya Dhananjay, Kai Zheng 0003, Marco Mezzavilla, Lorenzo Iotti, Dennis E. Shasha, Sundeep Rangan
Comput. Networks5
2021 BestNeighbor: efficient evaluation of kNN queries on large time series databases
Oleksandra Levchenko, Boyan Kolev, Djamel Edine Yagoubi, Reza Akbarinia, Florent Masseglia, Themis Palpanas, Dennis E. Shasha, Patrick Valduriez
Knowl. Inf. Syst.7
2021 Verifying concurrent multicopy search structures
abstract
Multicopy search structures such as log-structured merge (LSM) trees are optimized for high insert/update/delete (collectively known as upsert) performance. In such data structures, an upsert on key k , which adds ( k , v ) where v can be a value or a tombstone, is added to the root node even if k is already present in other nodes. Thus there may be multiple copies of k in the search structure. A search on k aims to return the value associated with the most recent upsert. We present a general framework for verifying linearizability of concurrent multicopy search structures that abstracts from the underlying representation of the data structure in memory, enabling proof-reuse across diverse implementations. Based on our framework, we propose template algorithms for (a) LSM structures forming arbitrary directed acyclic graphs and (b) differential file structures, and formally verify these templates in the concurrent separation logic Iris. We also instantiate the LSM template to obtain the first verified concurrent in-memory LSM tree implementation.
Nisarg Patel, Siddharth Krishna 0001, Dennis E. Shasha, Thomas Wies
Proc. ACM Program. Lang.3
2021 SafePredict: A Meta-Algorithm for Machine Learning That Uses Refusals to Guarantee Correctness
abstract
SafePredict is a novel meta-algorithm that works with any base prediction algorithm for online data to guarantee an arbitrarily chosen correctness rate, 1-ϵ, by allowing refusals. Allowing refusals means that the meta-algorithm may refuse to emit a prediction produced by the base algorithm so that the error rate on non-refused predictions does not exceed ϵ. The SafePredict error bound does not rely on any assumptions on the data distribution or the base predictor. When the base predictor happens not to exceed the target error rate ϵ, SafePredict refuses only a finite number of times. When the error rate of the base predictor changes through time SafePredict makes use of a weight-shifting heuristic that adapts to these changes without knowing when the changes occur yet still maintains the correctness guarantee. Empirical results show that (i) SafePredict compares favorably with state-of-the-art confidence-based refusal mechanisms which fail to offer robust error guarantees; and (ii) combining SafePredict with such refusal mechanisms can in many cases further reduce the number of refusals. Our software is included in the supplementary material, which can be found on the Computer Society Digital Library at http://doi.ieeecomputersociety.org/10.1109/TPAMI.2019.2932415.
Mustafa Anil Koçak, David Ramírez 0002, Elza Erkip, Dennis E. Shasha
IEEE Trans. Pattern Anal. Mach. Intell.4
2020 Fully-digital beamforming demonstration with Pi-Radio mmWave SDR platform
abstract
Pi-Radio's vision is to democratize wireless research by providing advanced mmWave Software Defined Radio (SDR) platforms to the community at plainly affordable price points. Pi-Radio's v1 SDR features a 4-channel fully-digital transceiver that operates in the 57-64 GHz band. Fully-digital (a.k.a. MIMO) transceiver architectures enable multiple simultaneous TX/RX beams, standing in stark contrast with phased arrays featuring analog beamformers that are capable of transmitting/receiving only one beam at a time. This opens up a whole set of research problems to work on, across virtually every layer of the protocol stack. In this demo, the team will: (1) prove the correct formation of different TX/RX beams by applying geometrically determined beamforming weights, and (2) prove the benefits of fully-digital beamforming by transmitting four independent streams of data with an OFDM-based physical layer.
Aditya Dhananjay, Kai Zheng 0003, Marco Mezzavilla, Dennis E. Shasha, Sundeep Rangan
MobiHoc4
2020 Verifying concurrent search structure templates
abstract
Concurrent separation logics have had great success reasoning about concurrent data structures. This success stems from their application of modularity on multiple levels, leading to proofs that are decomposed according to program structure, program state, and individual threads. Despite these advances, it remains difficult to achieve proof reuse across different data structure implementations. For the large class of search structures, we demonstrate how one can achieve further proof modularity by decoupling the proof of thread safety from the proof of structural integrity. We base our work on the template algorithms of Shasha and Goodman that dictate how threads interact but abstract from the concrete layout of nodes in memory. Building on the recently proposed flow framework of compositional abstractions and the separation logic Iris, we show how to prove correctness of template algorithms, and how to instantiate them to obtain multiple verified implementations.
Siddharth Krishna 0001, Nisarg Patel, Dennis E. Shasha, Thomas Wies
PLDI3
2020 BugDoc: Algorithms to Debug Computational Processes
abstract
Data analysis for scientific experiments and enterprises, large-scale simulations, and machine learning tasks all entail the use of complex computational pipelines to reach quantitative and qualitative conclusions. If some of the activities in a pipeline produce erroneous outputs, the pipeline may fail to execute or produce incorrect results. Inferring the root cause(s) of such failures is challenging, usually requiring time and much human thought, while still being error-prone. We propose a new approach that makes use of iteration and provenance to automatically infer the root causes and derive succinct explanations of failures. Through a detailed experimental evaluation, we assess the cost, precision, and recall of our approach compared to the state of the art. Our experimental data and processing software is available for use, reproducibility, and enhancement.
Raoni Lourenço, Juliana Freire, Dennis E. Shasha
SIGMOD Conference3
2020 BugDoc: A System for Debugging Computational Pipelines
abstract
Data analysis for scientific experiments and enterprises, large-scale simulations, and machine learning tasks all entail the use of complex computational pipelines to reach quantitative and qualitative conclusions. If some of the activities in a pipeline produce erroneous outputs, the pipeline may fail to execute or produce incorrect results. Inferring the root cause(s) of such failures is challenging, usually requiring time and much human thought, while still being error-prone. We recently proposed a new approach that makes provenance to automatically and iteratively infer root causes and derive succinct explanations of failures; such an approach was implemented in our prototype, BugDoc. In this demonstration, we will illustrate BugDoc's capabilities to debug pipelines using few configuration instances.
Raoni Lourenço, Juliana Freire, Dennis E. Shasha
SIGMOD Conference3
2019 Deferred Runtime Pipelining for contentious multicore software transactions
abstract
DRP is a new concurrency control protocol for software transactional memory that achieves high throughput, even for skewed workloads that exhibit high contention. DRP builds on prior works that chop transactions into pieces to expose more concurrency opportunities, but unlike these works, DRP performs no static analyses and supports arbitrary workloads. DRP achieves a high degree of concurrency across most workloads and guarantees deadlock freedom, strict serializability, and opacity. We incorporate DRP into the software transactional objects library STO [18] and find that DRP improves STO's throughput on several STAMP benchmarks by up to 3.6x. Additionally, an in-memory multicore database implemented with our modified variant of STO outperforms databases that use OCC or transaction chopping for concurrency control. Specifically, DRP achieves 6.6x higher throughput than OCC when contention is high. Compared to transaction chopping, our DRP achieves 3.3x higher throughput when contention is medium or low. Furthermore, our implementation achieves comparable performance to OCC and transaction chopping at other contention levels.
Shuai Mu 0001, Sebastian Angel, Dennis E. Shasha
EuroSys3
2019 Distributed Algorithms to Find Similar Time Series
abstract
International audience
Oleksandra Levchenko, Boyan Kolev, Djamel Edine Yagoubi, Dennis E. Shasha, Themis Palpanas, Patrick Valduriez, Reza Akbarinia, Florent Masseglia
ECML/PKDD (3)4
2019 TACITuS: transcriptomic data collector, integrator, and selector on big data platform
abstract
BACKGROUND: Several large public repositories of microarray datasets and RNA-seq data are available. Two prominent examples include ArrayExpress and NCBI GEO. Unfortunately, there is no easy way to import and manipulate data from such resources, because the data is stored in large files, requiring large bandwidth to download and special purpose data manipulation tools to extract subsets relevant for the specific analysis. RESULTS: TACITuS is a web-based system that supports rapid query access to high-throughput microarray and NGS repositories. The system is equipped with modules capable of managing large files, storing them in a cloud environment and extracting subsets of data in an easy and efficient way. The system also supports the ability to import data into Galaxy for further analysis. CONCLUSIONS: TACITuS automates most of the pre-processing needed to analyze high-throughput microarray and NGS data from large publicly-available repositories. The system implements several modules to manage large files in an easy and efficient way. Furthermore, it is capable deal with Galaxy environment allowing users to analyze data through a user-friendly interface.
Salvatore Alaimo, Antonio Di Maria, Dennis E. Shasha, Alfredo Ferro, Alfredo Pulvirenti
BMC Bioinform.3
2018 Spark-parSketch: A Massively Distributed Indexing of Time Series Datasets
abstract
A growing number of domains (finance, seismology, internet-of-things, etc.) collect massive time series. When the number of series grow to the hundreds of millions or even billions, similarity queries become intractable on a single machine. Further, naive (quadratic) parallelization won't work well. So, we need both efficient indexing and parallelization. We propose a demonstration of Spark-parSketch, a complete solution based on sketches / random projections to efficiently perform both the parallel indexing of large sets of time series and a similarity search on them. Because our method is approximate, we explore the tradeoff between time and precision. A video showing the dynamics of the demonstration can be found by the link http://parsketch.gforge.inria.fr/video/parSketchdemo_720p.mov.
Oleksandra Levchenko, Djamel Edine Yagoubi, Reza Akbarinia, Florent Masseglia, Boyan Kolev, Dennis E. Shasha
CIKM6
2018 Improving Tourism Prediction Models Using Climate and Social Media Data: A Fine-Grained Approach
Amir Khatibi, Fabiano Muniz Belém, Ana P. Silva, Dennis E. Shasha, Marcos André Gonçalves
ICWSM4
2018 Point pattern search in big data
abstract
Consider a set of points P in space with at least some of the pairwise distances specified. Given this set P, consider the following three kinds of queries against a database D of points : (i) pure constellation query: find all sets S in D of size |P| that exactly match the pairwise distances within P up to an additive error ϵ; (ii) isotropic constellation queries: find all sets S in D of size |P| such that there exists some scale factor f for which the distances between pairs in S exactly match f times the distances between corresponding pairs of P up to an additive ϵ; (iii) non-isotropic constellation queries: find all sets S in D of size |P| such that there exists some scale factor f and for at least some pairs of points, a maximum stretch factor mi,j > 1 such that (f X mi,jXdist(pi, pj))+ϵ > dist(si,sj) > (f X dist(pi, pj)) - ϵ. Finding matches to such queries has applications to spatial data in astronomical, seismic, and any domain in which (approximate, scale-independent) geometrical matching is required. Answering the isotropic and non-isotropic queries is challenging because scale factors and stretch factors may take any of an infinite number of values. This paper proposes practically efficient sequential and distributed algorithms for pure, isotropic, and non-isotropic constellation queries. As far as we know, this is the first work to address isotropic and non-isotropic queries.
Fábio Porto 0001, João N. Rittmeyer, Eduardo S. Ogasawara, Alberto Krone-Martins, Patrick Valduriez, Dennis E. Shasha
SSDBM6
2018 SuperNoder: a tool to discover over-represented modular structures in networks
abstract
BACKGROUND: Networks whose nodes have labels can seem complex. Fortunately, many have substructures that occur often ("motifs"). A societal example of a motif might be a household. Replacing such motifs by named supernodes reduces the complexity of the network and can bring out insightful features. Doing so repeatedly may give hints about higher level structures of the network. We call this recursive process Recursive Supernode Extraction. RESULTS: This paper describes algorithms and a tool to discover disjoint (i.e. non-overlapping) motifs in a network, replacing those motifs by new nodes, and then recursing. We show applications in food-web and protein-protein interaction (PPI) networks where our methods reduce the complexity of the network and yield insights. CONCLUSIONS: SuperNoder is a web-based and standalone tool which enables the simplification of big graphs based on the reduction of high frequency motifs. It applies various strategies for identifying disjoint motifs with the goal of enhancing the understandability of networks.
Danilo Dessì, Jacopo Cirrone, Diego Reforgiato Recupero, Dennis E. Shasha
BMC Bioinform.4
2018 Fast analytical methods for finding significant labeled graph motifs
Giovanni Micale, Rosalba Giugno, Alfredo Ferro, Misael Mongiovì, Dennis E. Shasha, Alfredo Pulvirenti
Data Min. Knowl. Discov.5
2018 ParCorr: efficient parallel methods to identify similar time series pairs across sliding windows
Djamel Edine Yagoubi, Reza Akbarinia, Boyan Kolev, Oleksandra Levchenko, Florent Masseglia, Patrick Valduriez, Dennis E. Shasha
Data Min. Knowl. Discov.7
2018 Go with the flow: compositional abstractions for concurrent data structures
abstract
Concurrent separation logics have helped to significantly simplify correctness proofs for concurrent data structures. However, a recurring problem in such proofs is that data structure abstractions that work well in the sequential setting are much harder to reason about in a concurrent setting due to complex sharing and overlays. To solve this problem, we propose a novel approach to abstracting regions in the heap by encoding the data structure invariant into a local condition on each individual node. This condition may depend on a quantity associated with the node that is computed as a fixpoint over the entire heap graph. We refer to this quantity as a flow . Flows can encode both structural properties of the heap (e.g. the reachable nodes from the root form a tree) as well as data invariants (e.g. sortedness). We then introduce the notion of a flow interface , which expresses the relies and guarantees that a heap region imposes on its context to maintain the local flow invariant with respect to the global heap. Our main technical result is that this notion leads to a new semantic model of separation logic. In this model, flow interfaces provide a general abstraction mechanism for describing complex data structures. This abstraction mechanism admits proof rules that generalize over a wide variety of data structures. To demonstrate the versatility of our approach, we show how to extend the logic RGSep with flow interfaces. We have used this new logic to prove linearizability and memory safety of nontrivial concurrent data structures. In particular, we obtain parametric linearizability proofs for concurrent dictionary algorithms that abstract from the details of the underlying data structure representation. These proofs cannot be easily expressed using the abstraction mechanisms provided by existing separation logics.
Siddharth Krishna 0001, Dennis E. Shasha, Thomas Wies
Proc. ACM Program. Lang.2
2017 Pre-processing and Indexing Techniques for Constellation Queries in Big Data
Amir Khatibi, Fábio Porto 0001, João N. Rittmeyer, Eduardo S. Ogasawara, Patrick Valduriez, Dennis E. Shasha
DaWaK6
2017 RadiusSketch: Massively Distributed Indexing of Time Series
abstract
Performing similarity queries on hundreds of millions of time series is a challenge requiring both efficient indexing techniques and parallelization. We propose a sketch/random projection-based approach that scales nearly linearly in parallel environments, and provides high quality answers. We illustrate the performance of our approach, called RadiusSketch, on real and synthetic datasets of up to 1 Terabytes and 500 million time series. The sketch method, as we have implemented, is superior in both quality and response time compared with the state of the art approach, iSAX2+. Already, in the sequential case it improves recall and precision by a factor of two, while giving shorter response times. In a parallel environment with 32 processors, on both real and synthetic data, our parallel approach improves by a factor of up to 100 in index time construction and up to 15 in query answering time. Finally, our data structure makes use of idle computing time to improve the recall and precision yet further.
Djamel Edine Yagoubi, Reza Akbarinia, Florent Masseglia, Dennis E. Shasha
DSAA4
2017 Crowdsourcing Thousands of Specialized Labels: A Bayesian Active Training Approach
abstract
Large-scale annotated corpora have yielded impressive performance improvements in computer vision and multimedia content analysis. However, such datasets depend on an enormous amount of human labeling effort. When the labels correspond to well-known concepts, it is straightforward to train the annotators by giving a few examples with known answers. It is also straightforward to judge the quality of their labels. Neither is true when there are thousands of complex domain-specific labels. Training on all labels is infeasible and the quality of an annotator's judgements may be vastly different for some subsets of labels than for others. This paper proposes a set of data-driven algorithms to 1) train image annotators on how to disambiguate among automatically generated candidate labels, 2) evaluate the quality of annotators' label suggestions, and 3) weigh predictions. The algorithms adapt to the skills of each annotator both in the questions asked and the weights given to their answers. The underlying judgements are Bayesian, based on adaptive priors. We measure the benefits of these algorithms on a live user experiment related to image-based plant identification involving around 1000 people. The proposed methods are shown to enable huge gains in annotation accuracy. A standard user can correctly label around 2% of our data. This goes up to 80% with machine learning assisted training and assignment and up to almost 90% when doing a weighted combination of several annotators' labels.
Maximilien Servajean, Alexis Joly, Dennis E. Shasha, Julien Champ, Esther Pacitti
IEEE Trans. Multim.3
2016 ThePlantGame: Actively Training Human Annotators for Domain-specific Crowdsourcing
abstract
In a typical citizen science/crowdsourcing environment, the contributors label items. When there are few labels, it is straightforward to train contributors and judge the quality of their labels by giving a few examples with known answers. Neither is true when there are thousands of domain-specific labels and annotators with heterogeneous skills. This demo paper presents an Active User Training framework implemented as a serious game called ThePlantGame. It is based on a set of data-driven algorithms allowing to (i) actively train annotators, and (ii) evaluate the quality of contributors' answers on new test items to optimize predictions.
Maximilien Servajean, Alexis Joly, Dennis E. Shasha, Julien Champ, Esther Pacitti
ACM Multimedia3
2016 A Course on Programming and Problem Solving
abstract
At its core, Computer Science is the study of algorithmic problem solving. Although it is necessary to teach programming, data structures, computer organization, etc., students should ultimately learn to use these things to solve problems, understand what is good and bad about their solutions, and share their solutions with others.
Swapneel Sheth, Christian Murphy, Kenneth A. Ross, Dennis E. Shasha
SIGCSE4
2016 ReproZip: Computational Reproducibility With Ease
abstract
We present ReproZip, the recommended packaging tool for the SIGMOD Reproducibility Review. ReproZip was designed to simplify the process of making an existing computational experiment reproducible across platforms, even when the experiment was put together without reproducibility in mind. The tool creates a self-contained package for an experiment by automatically tracking and identifying all its required dependencies. The researcher can share the package with others, who can then use ReproZip to unpack the experiment, reproduce the findings on their favorite operating system, as well as modify the original experiment for reuse in new research, all with little effort. The demo will consist of examples of non-trivial experiments, showing how these can be packed in a Linux machine and reproduced on different machines and operating systems. Demo visitors will also be able to pack and reproduce their own experiments.
Fernando Seabra Chirigati, Rémi Rampin, Dennis E. Shasha, Juliana Freire
SIGMOD Conference3
2016 Conjugate Conformal Prediction for Online Binary Classification
Mustafa Anil Koçak, Dennis E. Shasha, Elza Erkip
UAI2
2016 A collaborative approach to computational reproducibility
Fernando Seabra Chirigati, Rebecca Capone, Rémi Rampin, Juliana Freire, Dennis E. Shasha
Inf. Syst.5
2015 Quiet: Faster Belief Propagation for Images and Related Applications
Yasuhiro Fujiwara, Dennis E. Shasha
IJCAI2
2014 Negative Example Selection for Protein Function Prediction: The NoGO Database
abstract
Negative examples - genes that are known not to carry out a given protein function - are rarely recorded in genome and proteome annotation databases, such as the Gene Ontology database. Negative examples are required, however, for several of the most powerful machine learning methods for integrative protein function prediction. Most protein function prediction efforts have relied on a variety of heuristics for the choice of negative examples. Determining the accuracy of methods for negative example prediction is itself a non-trivial task, given that the Open World Assumption as applied to gene annotations rules out many traditional validation metrics. We present a rigorous comparison of these heuristics, utilizing a temporal holdout, and a novel evaluation strategy for negative examples. We add to this comparison several algorithms adapted from Positive-Unlabeled learning scenarios in text-classification, which are the current state of the art methods for generating negative examples in low-density annotation contexts. Lastly, we present two novel algorithms of our own construction, one based on empirical conditional probability, and the other using topic modeling applied to genes and annotations. We demonstrate that our algorithms achieve significantly fewer incorrect negative example predictions than the current state of the art, using multiple benchmarks covering multiple organisms. Our methods may be applied to generate negative examples for any type of method that deals with protein function, and to this end we provide a database of negative examples in several well-studied organisms, for general use (The NoGO database, available at: bonneaulab.bio.nyu.edu/nogo.html).
Noah Youngs, Duncan Penfold-Brown, Richard Bonneau, Dennis E. Shasha
PLoS Comput. Biol.4
2013 AppSleuth: a tool for database tuning at the application level
abstract
Excellent work ([1]-[6]) has shown that memory management and transaction concurrency levels can often be tuned automatically by the database management systems. Other excellent work ([7]]-[14]) has shown how to use the optimizer to do automatic physical design or to make the optimizer itself more self-adaptive ([15]-[17]). Our performance tuning experience across various industries (finance, gaming, data warehouses, and travel) has shown that enormous additional tuning benefits (sometimes amounting to orders of magnitude) can come from reengineering application code and table design. The question is: can a tool help in this effort? We believe so. We present a tool called AppSleuth that parses application code and the tracing log for two popular database management systems in order to lead a competent tuner to the hot spots in an application. This paper discusses (i) representative application "delinquent design patterns", (ii) an application code parser to find them, (iii) a log parser to identify the patterns that are critical, and (iv) a display to give a global view of the issue. We present an extended sanitized case study from a real travel application to show the results of the tool at different stages of a tuning engagement, yielding a 300 fold improvement. This is the first tool of its kind that we know of.
Dennis E. Shasha
EDBT2
2013 Tuning in action
abstract
Imagine that your database has all the right indexes. Its buffer manager has been tuned to give a high hit ratio, the buffer fits in RAM, and the data is well distributed on disk. You're done, right? Well, no, because the application code might be poorly written. It might include delinquent design patterns. The demoed tuning tool AppSleuth will find those delinquent design patterns but it is the demo visitor's job to fix them.
Dennis E. Shasha
EDBT2
2013 Packing experiments for sharing and publication
abstract
Reproducibility is a core component of the scientific process. Revisiting and reusing past results allow science to move forward - "standing on the shoulders of giants", as Newton once said. An impediment to the adoption of computational reproducibility is that authors find it difficult to generate a compendium that encompasses all the required components to correctly reproduce their experiments. Even when a compendium is available, reviewers and readers may have difficulties in verifying the results on platforms different from the ones where the experiments were originally run. As a step towards simplifying the process of creating reproducible experiments, we have developed ReproZip, a tool that automatically captures the provenance of experiments and packs all the necessary files, library dependencies and variables to reproduce the results. Reviewers can then unpack and run the experiments without having to install any additional software. We will demonstrate real use cases for ReproZip, how packages are created, and how reviewers can validate and explore experiments.
Fernando Seabra Chirigati, Dennis E. Shasha, Juliana Freire
SIGMOD Conference2
2013 Parametric Bayesian priors and better choice of negative examples improve protein function prediction
abstract
MOTIVATION: Computational biologists have demonstrated the utility of using machine learning methods to predict protein function from an integration of multiple genome-wide data types. Yet, even the best performing function prediction algorithms rely on heuristics for important components of the algorithm, such as choosing negative examples (proteins without a given function) or determining key parameters. The improper choice of negative examples, in particular, can hamper the accuracy of protein function prediction. RESULTS: We present a novel approach for choosing negative examples, using a parameterizable Bayesian prior computed from all observed annotation data, which also generates priors used during function prediction. We incorporate this new method into the GeneMANIA function prediction algorithm and demonstrate improved accuracy of our algorithm over current top-performing function prediction methods on the yeast and mouse proteomes across all metrics tested. AVAILABILITY: Code and Data are available at: http://bonneaulab.bio.nyu.edu/funcprop.html
Noah Youngs, Duncan Penfold-Brown, Kevin Drew, Dennis E. Shasha, Richard Bonneau
Bioinform.4
2013 A subgraph isomorphism algorithm and its application to biochemical data
abstract
BACKGROUND: Graphs can represent biological networks at the molecular, protein, or species level. An important query is to find all matches of a pattern graph to a target graph. Accomplishing this is inherently difficult (NP-complete) and the efficiency of heuristic algorithms for the problem may depend upon the input graphs. The common aim of existing algorithms is to eliminate unsuccessful mappings as early as and as inexpensively as possible. RESULTS: We propose a new subgraph isomorphism algorithm which applies a search strategy to significantly reduce the search space without using any complex pruning rules or domain reduction procedures. We compare our method with the most recent and efficient subgraph isomorphism algorithms (VFlib, LAD, and our C++ implementation of FocusSearch which was originally distributed in Modula2) on synthetic, molecules, and interaction networks data. We show a significant reduction in the running time of our approach compared with these other excellent methods and show that our algorithm scales well as memory demands increase. CONCLUSIONS: Subgraph isomorphism algorithms are intensively used by biochemical tools. Our analysis gives a comprehensive comparison of different software approaches to subgraph isomorphism highlighting their weaknesses and strengths. This will help researchers make a rational choice among methods depending on their application. We also distribute an open-source package including our system and our own C++ implementation of FocusSearch together with all the used datasets (http://ferrolab.dmi.unict.it/ri.html). In future work, our findings may be extended to approximate subgraph isomorphism algorithms.
Vincenzo Bonnici, Rosalba Giugno, Alfredo Pulvirenti, Dennis E. Shasha, Alfredo Ferro
BMC Bioinform.4
2012 Computational reproducibility: state-of-the-art, challenges, and database research opportunities
abstract
Computational experiments have become an integral part of the scientific method, but reproducing, archiving, and querying them is still a challenge. The first barrier to a wider adoption is the fact that it is hard both for authors to derive a compendium that encapsulates all the components needed to reproduce a result and for reviewers to verify the results. In this tutorial, we will present a series of guidelines and, through hands-on examples, review existing tools to help authors create of reproducible results. We will also outline open problems and new directions for database-related research having to do with querying computational experiments.
Juliana Freire, Philippe Bonnet, Dennis E. Shasha
SIGMOD Conference3
2012 JustMyFriends: full SQL, full transactional amenities, and access privacy
abstract
A major obstacle to using Cloud services for many enterprises is the fear that the data will be stolen. Bringing the Cloud in-house is an incomplete solution to the problem because that implies that data center personnel as well as myriad repair personnel must be trusted. An ideal security solution would be to share data among precisely the people who should see it ("my friends") and nobody else.
Arthur Meacham, Dennis E. Shasha
SIGMOD Conference2
2012 miR-EdiTar: a database of predicted A-to-I edited miRNA target sites
abstract
MOTIVATION: A-to-I RNA editing is an important mechanism that consists of the conversion of specific adenosines into inosines in RNA molecules. Its dysregulation has been associated to several human diseases including cancer. Recent work has demonstrated a role for A-to-I editing in microRNA (miRNA)-mediated gene expression regulation. In fact, edited forms of mature miRNAs can target sets of genes that differ from the targets of their unedited forms. The specific deamination of mRNAs can generate novel binding sites in addition to potentially altering existing ones. RESULTS: This work presents miR-EdiTar, a database of predicted A-to-I edited miRNA binding sites. The database contains predicted miRNA binding sites that could be affected by A-to-I editing and sites that could become miRNA binding sites as a result of A-to-I editing. AVAILABILITY: miR-EdiTar is freely available online at http://microrna.osumc.edu/mireditar. CONTACT: [email protected] or [email protected] SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online.
Alessandro Laganà, Alessio Paone, Dario Veneziano, Luciano Cascione, Pierluigi Gasparini, Stefania Carasi, Francesco Russo 0004, Giovanni Nigita, Valentina Macca, Rosalba Giugno, Alfredo Pulvirenti, Dennis E. Shasha, Alfredo Ferro, Carlo Maria Croce
Bioinform.12
2012 Fast Elastic Peak Detection for Mass Spectrometry Data Mining
abstract
We study a data mining problem concerning the elastic peak detection in 2D liquid chromatography-mass spectrometry (LC-MS) data. These data can be modeled as time series, in which the X-axis represents time points and the Y-axis represents intensity values. A peak occurs in a set of 2D LC-MS data when the sum of the intensity values in a sliding time window exceeds a user-determined threshold. The elastic peak detection problem is to locate all peaks across multiple window sizes of interest in the data set. We propose a new data structure, called a Shifted Aggregation Tree or AggTree for short, and use the data structure to find the different peaks. Our method, called PeakID, solves the elastic peak detection problem in 2D LC-MS data yielding neither false positives nor false negatives. The method works by first constructing an AggTree in a bottom-up manner from the given data set, and then searching the AggTree for the peaks in a top-down manner. We describe a state-space algorithm for finding the topology and structure of an efficient AggTree to be used by PeakID. Our experimental results demonstrate the superiority of the proposed method over other methods on both synthetic and real-world data.
Xin Zhang 0095, Dennis E. Shasha, Jason Tsong-Li Wang
IEEE Trans. Knowl. Data Eng.2
2011 Exploring the Coming Repositories of Reproducible Experiments: Challenges and Opportunities
Juliana Freire, Philippe Bonnet, Dennis E. Shasha
Proc. VLDB Endow.3
2010 SING: Subgraph search In Non-homogeneous Graphs
abstract
BACKGROUND: Finding the subgraphs of a graph database that are isomorphic to a given query graph has practical applications in several fields, from cheminformatics to image understanding. Since subgraph isomorphism is a computationally hard problem, indexing techniques have been intensively exploited to speed up the process. Such systems filter out those graphs which cannot contain the query, and apply a subgraph isomorphism algorithm to each residual candidate graph. The applicability of such systems is limited to databases of small graphs, because their filtering power degrades on large graphs. RESULTS: In this paper, SING (Subgraph search In Non-homogeneous Graphs), a novel indexing system able to cope with large graphs, is presented. The method uses the notion of feature, which can be a small subgraph, subtree or path. Each graph in the database is annotated with the set of all its features. The key point is to make use of feature locality information. This idea is used to both improve the filtering performance and speed up the subgraph isomorphism task. CONCLUSIONS: Extensive tests on chemical compounds, biological networks and synthetic graphs show that the proposed system outperforms the most popular systems in query time over databases of medium and large graphs. Other specific tests show that the proposed system is effective for single large graphs.
Raffaele Di Natale, Alfredo Ferro, Rosalba Giugno, Misael Mongiovì, Alfredo Pulvirenti, Dennis E. Shasha
BMC Bioinform.6
2009 The Blind Stone Tablet: Outsourcing Durability to Untrusted Parties
Radu Sion, Dennis E. Shasha
NDSS3
2009 Revelation on demand
Nicolas Anciaux, Mehdi Benzine, Luc Bouganim, Philippe Pucheral, Dennis E. Shasha
Distributed Parallel Databases5
2009 A Systems Approach Uncovers Restrictions for Signal Interactions Regulating Genome-wide Responses to Nutritional Cues in Arabidopsis
abstract
As sessile organisms, plants must cope with multiple and combined variations of signals in their environment. However, very few reports have studied the genome-wide effects of systematic signal combinations on gene expression. Here, we evaluate a high level of signal integration, by modeling genome-wide expression patterns under a factorial combination of carbon (C), light (L), and nitrogen (N) as binary factors in two organs (O), roots and leaves. Signal management is different between C, N, and L and in shoots and roots. For example, L is the major factor controlling gene expression in leaves. However, in roots there is no obvious prominent signal, and signal interaction is stronger. The major signal interaction events detected genome wide in Arabidopsis roots are deciphered and summarized in a comprehensive conceptual model. Surprisingly, global analysis of gene expression in response to C, N, L, and O revealed that the number of genes controlled by a signal is proportional to the magnitude of the gene expression changes elicited by the signal. These results uncovered a strong constraining structure in plant cell signaling pathways, which prompted us to propose the existence of a "code" of signal integration.
Gabriel Krouk, Daniel Tranchina, Laurence Lejay, Alexis A. Cruikshank, Dennis E. Shasha, Gloria M. Coruzzi, Rodrigo A. Gutiérrez
PLoS Comput. Biol.5
2009 Foreword to TODS SIGMOD/PODS 2008 special issue
abstract
No abstract available.
Dennis E. Shasha, Maurizio Lenzerini, Z. Meral Özsoyoglu
ACM Trans. Database Syst.1
2008 Biocomputational puzzles: data, algorithms, and visualization
abstract
I solve puzzles for a living. Over the last few years, I've tried to make this activity useful to biologists and scientists in general. This talk will give an overview of some of those attempts, involving the use of combinatorial design to reduce the size of experimental search spaces, visualization of experimental data, and biochemical calculations using DNA. I will attempt to convey the ideas and show the tools rather than focus on mathematical details.
Dennis E. Shasha
EDBT1
2008 GraphFind: enhancing graph searching by low support data mining techniques
abstract
BACKGROUND: Biomedical and chemical databases are large and rapidly growing in size. Graphs naturally model such kinds of data. To fully exploit the wealth of information in these graph databases, a key role is played by systems that search for all exact or approximate occurrences of a query graph. To deal efficiently with graph searching, advanced methods for indexing, representation and matching of graphs have been proposed. RESULTS: This paper presents GraphFind. The system implements efficient graph searching algorithms together with advanced filtering techniques that allow approximate search. It allows users to select candidate subgraphs rather than entire graphs. It implements an effective data storage based also on low-support data mining. CONCLUSIONS: GraphFind is compared with Frowns, GraphGrep and gIndex. Experiments show that GraphFind outperforms the compared systems on a very large collection of small graphs. The proposed low-support mining technique which applies to any searching system also allows a significant index space reduction.
Alfredo Ferro, Rosalba Giugno, Misael Mongiovì, Alfredo Pulvirenti, Dmitry Skripin, Dennis E. Shasha
BMC Bioinform.6
2007 GhostDB: querying visible and hidden data without leaks
abstract
Imagine that you have been entrusted with private data, such as corporate product information, sensitive government information, or symptom and treatment information about hospital patients. You may want to issue queries whose result will combine private and public data, but private data must not be revealed. GhostDB is an architecture and system to achieve this. You carry private data in a smart USB key (a large Flash persistent store combined with a tamper and snoop-resistant CPU and small RAM). When the key is plugged in, you can issue queries that link private and public data and be sure that the only information revealed to a potential spy is which queries you pose. Queries linking public and private data entail novel distributed processing techniques on extremely unequal devices (standard computer and smart USB key). This paper presents the basic framework to make this all work intuitively and efficiently.
Nicolas Anciaux, Mehdi Benzine, Luc Bouganim, Philippe Pucheral, Dennis E. Shasha
SIGMOD Conference5
2007 GhostDB: Hiding Data from Prying Eyes
Christophe Salperwyck, Nicolas Anciaux, Mehdi Benzine, Luc Bouganim, Philippe Pucheral, Dennis E. Shasha
VLDB6
2007 NetMatch: a Cytoscape plugin for searching biological networks
abstract
UNLABELLED: NetMatch is a Cytoscape plugin which allows searching biological networks for subcomponents matching a given query. Queries may be approximate in the sense that certain parts of the subgraph-query may be left unspecified. To make the query creation process easy, a drawing tool is provided. Cytoscape is a bioinformatics software platform for the visualization and analysis of biological networks. AVAILABILITY: The full package, a tutorial and associated examples are available at the following web sites: http://alpha.dmi.unict.it/~ctnyu/netmatch.html, http://baderlab.org/Software/NetMatch.
Alfredo Ferro, Rosalba Giugno, Giuseppe Pigola, Alfredo Pulvirenti, Dmitry Skripin, Gary D. Bader, Dennis E. Shasha
Bioinform.7
2007 Sungear: interactive visualization and functional analysis of genomic datasets
abstract
UNLABELLED: Sungear is a software system that supports a rapid, visually interactive and biologist-driven comparison of large datasets. The datasets can come from microarray experiments (e.g. genes induced in each experiment), from comparative genomics (e.g. genes present in each genome) or even from non-biological applications (e.g. demographics or baseball statistics). Sungear represents multiple datasets as vertices in a polygon. Each possible intersection among the sets is represented as a circle inside the polygon. The position of the circle is determined by the position of the vertices represented in the intersection and the area of the circle is determined by the number of elements in the intersection. Sungear shows which Gene Ontology terms are over-represented in a subset of circles or anchors. The intuitive Sungear interface has enabled biologists to determine quickly which dataset or groups of datasets play a role in a biological function of interest. AVAILABILITY: A live online version of Sungear can be found at http://virtualplant-prod.bio.nyu.edu/cgi-bin/sungear/index.cgi
Christopher S. Poultney, Rodrigo A. Gutiérrez, Manpreet S. Katari, Miriam L. Gifford, W. Bradford Paley, Gloria M. Coruzzi, Dennis E. Shasha
Bioinform.7
2006 Better Burst Detection
abstract
A burst is a large number of events occurring within a certain time window. Many data stream applications require the detection of bursts across a variety of window sizes. For example, stock traders may be interested in bursts having to do with institutional purchases or sales that are spread out over minutes or hours. In this paper, we present a new algorithmic framework for elastic burst detection [1]: a family of data structures that generalizes the Shifted Binary Tree, and a heuristic search algorithm to find an efficient structure given the input. We study how different inputs affect the desired structures and the probability to trigger a detailed search. Experiments on both synthetic and real world data show a factor of up to 35 times improvement compared with the Shifted Binary Tree over a wide variety of inputs, depending on the inputs.
Xin Zhang 0095, Dennis E. Shasha
ICDE2
2005 Incremental Methods for Simple Problems in Time Series: Algorithms and Experiments
abstract
A time series (or equivalently a data stream) consists of data arriving in time order. Single or multiple data streams arise in fields including physics, finance, medicine, and music, to name a few. Often the data comes from sensors (in physics and medicine for example) whose data rates continue to improve dramatically as sensor technology improves and as the number of sensors increases. So fast algorithms become ever more critical in order to distill knowledge from the data. This paper presents our recent work regarding the incremental computation of various primitives: windowed correlation, matching pursuit, sparse null space discovery and elastic burst detection. The incremental idea reflects the fact that recent data is more important than older data. Our StatStream system contains an implementation of these algorithms, permitting us to do empirical studies on both simulated and real data.
Xiaojian Zhao, Xin Zhang 0095, Tyler Neylon, Dennis E. Shasha
IDEAS4
2005 Fast window correlations over uncooperative time series
abstract
Data arriving in time order (a data stream) arises in fields including physics, finance, medicine, and music, to name a few. Often the data comes from sensors (in physics and medicine for example) whose data rates continue to improve dramatically as sensor technology improves. Further, the number of sensors is increasing, so correlating data between sensors becomes ever more critical in order to distill knowlege from the data. In many applications such as finance, recent correlations are of far more interest than long-term correlation, so correlation over sliding windows (windowed correlation) is the desired operation. Fast response is desirable in many applications (e.g., to aim a telescope at an activity of interest or to perform a stock trade). These three factors -- data size, windowed correlation, and fast response -- motivate this work.Previous work [10, 14] showed how to compute Pearson correlation using Fast Fourier Transforms and Wavelet transforms, but such techniques don't work for time series in which the energy is spread over many frequency components, thus resembling white noise. For such "uncooperative" time series, this paper shows how to combine several simple techniques -- sketches (random projections), convolution, structured random vectors, grid structures, and combinatorial design -- to achieve high performance windowed Pearson correlation over a variety of data sets.
Richard Cole 0001, Dennis E. Shasha, Xiaojian Zhao
KDD2
2005 Computing for biologists: lessons from some successful case studies
abstract
My presentation will be online at the address http://cs.nyu.edu/cs/faculty/shasha/papers/sigmodtut05.ppt in addition to at the SIGMOD site. The presentation discusses computational techniques that have helped biologists, including combinatorial design to support a disciplined experimental design, visualization techniques to display the interaction among multiple inputs, and the discovery of gene function through the search through related species, and others.In this writeup, I confine myself to informal remarks describing both social and technical lessons I have learned while working with biologists. I intersperse these comments with references to relevant papers when appropriate.The tutorial is meant to appeal to researchers and practitioners in databases, data mining, and combinatorial algorithms as well as to natural scientists, especially biologists.
Dennis E. Shasha
SIGMOD Conference1
2005 Antipole Tree Indexing to Support Range Search and K-Nearest Neighbor Search in Metric Spaces
abstract
Range and k-nearest neighbor searching are core problems in pattern recognition. Given a database S of objects in a metric space M and a query object q in M, in a range searching problem the goal is to find the objects of S within some threshold distance to g, whereas in a k-nearest neighbor searching problem, the k elements of S closest to q must be produced. These problems can obviously be solved with a linear number of distance calculations, by comparing the query object against every object in the database. However, the goal is to solve such problems much faster. We combine and extend ideas from the M-tree, the multivantage point structure, and the FQ-tree to create a new structure in the "bisector tree" class, called the Antipole tree. Bisection is based on the proximity to an "Antipole" pair of elements generated by a suitable linear randomized tournament. The final winners a, b of such a tournament is far enough apart to approximate the diameter of the splitting set. If dist(a, b) is larger than the chosen cluster diameter threshold, then the cluster is split. The proposed data structure is an indexing scheme suitable for (exact and approximate) best match searching on generic metric spaces. The Antipole tree outperforms by a factor of approximately two existing structures such as list of clusters, M-trees, and others and, in many cases, it achieves better clustering properties.
Domenico Cantone, Alfredo Ferro, Alfredo Pulvirenti, Diego Reforgiato Recupero, Dennis E. Shasha
IEEE Trans. Knowl. Data Eng.5
2005 Making snapshot isolation serializable
abstract
Snapshot Isolation (SI) is a multiversion concurrency control algorithm, first described in Berenson et al. [1995]. SI is attractive because it provides an isolation level that avoids many of the common concurrency anomalies, and has been implemented by Oracle and Microsoft SQL Server (with certain minor variations). SI does not guarantee serializability in all cases, but the TPC-C benchmark application [TPC-C], for example, executes under SI without serialization anomalies. All major database system products are delivered with default nonserializable isolation levels, often ones that encounter serialization anomalies more commonly than SI, and we suspect that numerous isolation errors occur each day at many large sites because of this, leading to corrupt data sometimes noted in data warehouse applications. The classical justification for lower isolation levels is that applications can be run under such levels to improve efficiency when they can be shown not to result in serious errors, but little or no guidance has been offered to application programmers and DBAs by vendors as to how to avoid such errors. This article develops a theory that characterizes when nonserializable executions of applications can occur under SI. Near the end of the article, we apply this theory to demonstrate that the TPC-C benchmark application has no serialization anomalies under SI, and then discuss how this demonstration can be generalized to other applications. We also present a discussion on how to modify the program logic of applications that are nonserializable under SI so that serializability will be guaranteed.
Alan D. Fekete, Dimitrios Liarokapis, Elizabeth J. O'Neil, Patrick E. O'Neil, Dennis E. Shasha
ACM Trans. Database Syst.5
2005 MetricMap: an embedding technique for processing distance-based queries in metric spaces
abstract
In this paper, we present an embedding technique, called MetricMap, which is capable of estimating distances in a pseudometric space. Given a database of objects and a distance function for the objects, which is a pseudometric, we map the objects to vectors in a pseudo-Euclidean space with a reasonably low dimension while preserving the distance between two objects approximately. Such an embedding technique can be used as an approximate oracle to process a broad class of distance-based queries. It is also adaptable to data mining applications such as data clustering and classification. We present the theory underlying MetricMap and conduct experiments to compare MetricMap with other methods including MVP-tree and M-tree in processing the distance-based queries. Experimental results on both protein and RNA data show the good performance and the superiority of MetricMap over the other methods.
Jason Tsong-Li Wang, Dennis E. Shasha, Kaizhong Zhang
IEEE Trans. Syst. Man Cybern. Part B3
2004 Unordered Tree Mining with Applications to Phylogeny
abstract
Frequent structure mining (FSM) aims to discover and extract patterns frequently occurring in structural data, such as trees and graphs. FSM finds many applications in bioinformatics, XML processing, Web log analysis, and so on. We present a new FSM technique for finding patterns in rooted unordered labeled trees. The patterns of interest are cousin pairs in these trees. A cousin pair is a pair of nodes sharing the same parent, the same grandparent, or the same great-grandparent, etc. Given a tree T, our algorithm finds all interesting cousin pairs of T in O(|T|/sup 2/) time where |T| is the number of nodes in T. Experimental results on synthetic data and phylogenies show the scalability and effectiveness of the proposed technique. To demonstrate the usefulness of our approach, we discuss its applications to locating co-occurring patterns in multiple evolutionary trees, evaluating the consensus of equally parsimonious trees, and finding kernel trees of groups of phylogenies. We also describe extensions of our algorithms for undirected acyclic graphs (or free trees).
Dennis E. Shasha, Jason Tsong-Li Wang, Sen Zhang 0007
ICDE1
2004 Secure Untrusted Data Repository (SUNDR)
Maxwell N. Krohn, David Mazières, Dennis E. Shasha
OSDI4
2004 Fast Algorithms for Time Series with applications to Finance, Physics, Music, Biology, and other Suspects
abstract
Financial time series streams are watched closely by millions of traders. What exactly do they look for and how can we help them do it faster? Physicists study the time series emerging from their sensors. The same question holds for them. Musicians produce time series. Consumers may want to compare them. This tutorial presents techniques and case studies for four problems:1. Finding sliding window correlations in financial, physical, and other applications.2. Discovering bursts in large sensor data of gamma rays.3. Matching hums to recorded music, even when people don't hum well.4. Maintaining and manipulating time-ordered data in a database setting.This tutorial draws mostly from the book High Performance Discovery in Time Series: techniques and case studies, Springer-Verlag 2004. You can find the power point slides for this tutorial at http://cs.nyu.edu/cs/faculty/shasha/papers/sigmod04.ppt.The tutorial is aimed at researchers in streams, data mining, and scientific computing. Its applications should interest anyone who works with scientists or financial "quants." The emphasis will be on recent results and open problems. This is a ripe area for further advance.
Alberto Lerner, Dennis E. Shasha, Xiaojian Zhao, Yunyue Zhu
SIGMOD Conference2
2004 Editorial
Dennis E. Shasha
Inf. Syst.1
2003 Efficient elastic burst detection in data streams
abstract
Burst detection is the activity of finding abnormal aggregates in data streams. Such aggregates are based on sliding windows over data streams. In some applications, we want to monitor many sliding window sizes simultaneously and to report those windows with aggregates significantly different from other periods. We will present a general data structure for detecting interesting aggregates over such elastic windows in near linear time. We present applications of the algorithm for detecting Gamma Ray Bursts in large-scale astrophysical data. Detection of periods with high volumes of trading activities and high stock price volatility is also demonstrated using real time Trade and Quote (TAQ) data from the New York Stock Exchange (NYSE). Our algorithm beats the direct computation approach by several orders of magnitude.
Yunyue Zhu, Dennis E. Shasha
KDD2
2003 Warping Indexes with Envelope Transforms for Query by Humming
abstract
A Query by Humming system allows the user to find a song by humming part of the tune. No musical training is needed. Previous query by humming systems have not provided satisfactory results for various reasons. Some systems have low retrieval precision because they rely on melodic contour information from the hum tune, which in turn relies on the error-prone note segmentation process. Some systems yield better precision when matching the melody directly from audio, but they are slow because of their extensive use of Dynamic Time Warping (DTW). Our approach improves both the retrieval precision and speed compared to previous approaches. We treat music as a time series and exploit and improve well-developed techniques from time series databases to index the music for fast similarity queries. We improve on existing DTW indexes technique by introducing the concept of envelope transforms, which gives a general guideline for extending existing dimensionality reduction methods to DTW indexes. The net result is high scalability. We confirm our claims through extensive experiments.
Yunyue Zhu, Dennis E. Shasha
SIGMOD Conference2
2003 Query by Humming - in Action with its Technology Revealed
abstract
No abstract available.
Yunyue Zhu, Dennis E. Shasha, Xiaojian Zhao
SIGMOD Conference2
2003 TreeRank: A Similarity Measure for Nearest Neighbor Searching in Phylogenetic Databases
abstract
Phylogenetic trees are unordered labeled trees in which each leaf node has a label and the order among siblings is unimportant. In this paper we propose a new similarity measure, called TreeRank, for phylogenetic trees and present an algorithm for computing TreeRank scores. Given a query or pattern tree P and a data tree D, the TreeRank score from P to D is a measure of the topological relationships in P that are found to be the same or similar in D. The proposed algorithm calculates the TreeRank score in O(M/sup 2/ + N) time where M is the number of nodes appearing in both P and D, and N is the number of nodes in D. We then develop a search engine that, given a query or pattern tree P and a database of trees D, finds and ranks the nearest neighbors of P in D where the "nearness" is measured by the proposed similarity function. This structure-based search engine is fully operational and is available on the World Wide Web.
Jason Tsong-Li Wang, Huiyuan Shan, Dennis E. Shasha, William H. Piel
SSDBM3
2003 AQuery: Query Language for Ordered Data, Optimization Techniques, and Experiments
Alberto Lerner, Dennis E. Shasha
VLDB2
2002 Building secure file systems out of Byzantine storage
abstract
This paper shows how to implement a trusted network file system on an untrusted server. While cryptographic storage techniques exist that allow users to keep data secret from untrusted servers, this work concentrates on the detection of tampering attacks and stale data. Ideally, users of an untrusted storage server would immediately and unconditionally notice any misbehavior on the part of the server. This ideal is unfortunately not achievable. However, we define a notion of data integrity called fork consistency in which, if the server delays just one user from seeing even a single change by another, the two users will never again see one another's changes---a failure easily detectable with on-line communication. We give a practical protocol for a multi-user network file system called SUNDR, and prove that SUNDR offers fork consistency whether or not the server obeys the protocol.
David Mazières, Dennis E. Shasha
PODC2
2002 Algorithmics and Applications of Tree and Graph Searching
abstract
Modern search engines answer keyword-based queries extremely efficiently. The impressive speed is due to clever inverted index structures, caching, a domain-independent knowledge of strings, and thousands of machines. Several research efforts have attempted to generalize keyword search to keytree and keygraph searching, because trees and graphs have many applications in next-generation database systems. This paper surveys both algorithms and applications, giving some emphasis to our own work.
Dennis E. Shasha, Jason Tsong-Li Wang, Rosalba Giugno
PODS1
2002 Database tuning: principles, experiments, and troubleshooting techniques (part II)
abstract
No abstract available.
Dennis E. Shasha, Philippe Bonnet
SIGMOD Conference1
2002 Database tuning: principles, experiments, and troubleshooting techniques (part I)
abstract
No abstract available.
Dennis E. Shasha, Philippe Bonnet
SIGMOD Conference1
2002 A Structure-Based Search Engine for Phylogenetic Databases
abstract
Phylogenetic trees are essential for understanding the relationships among organisms or taxa. Many of the current techniques for searching phylogenetic repositories allow the user to perform a keyword-type search or an aligned sequence data search, or to browse a hierarchical list of taxa. Here we describe a new search engine that allows the user to present an example phylogeny, or a query tree, and then searches a phylogenetic database for trees that contain the query structure. The presented search engine is fully operational and is available on the World Wide Web.
Huiyuan Shan, Katherine G. Herbert-Berger, William H. Piel, Dennis E. Shasha, Jason Tsong-Li Wang
SSDBM4
2002 ATreeGrep: Approximate Searching in Unordered Trees
abstract
An unordered labeled tree is a tree in which each node has a string label and the parent-child relationship is significant, but the order among siblings is unimportant. This paper presents an approach to the nearest neighbor search problem for these trees. Given a database D of unordered labeled trees and a query tree Q, the goal is to find those trees in D that "approximately" contain Q. Our approach is based on storing the paths of the trees in a suffix array and then counting the number of mismatching paths between the query tree and a data tree. To speed up a search, we use a hash-based technique to filter out unqualified data trees at an early stage of the search. Experimental results obtained by running our techniques on phylogenetic trees and synthetic data demonstrate the good performance of the proposed approach. We also discuss the use of our work in XML and scientific database management.
Dennis E. Shasha, Jason Tsong-Li Wang, Huiyuan Shan, Kaizhong Zhang
SSDBM1
2002 Database Tuning: Principles, Experiments, and Troubleshooting Techniques
Dennis E. Shasha, Philippe Bonnet
VLDB1
2002 StatStream: Statistical Monitoring of Thousands of Data Streams in Real Time
Yunyue Zhu, Dennis E. Shasha
VLDB2
2002 Finding approximate patterns in undirected acyclic graphs
Jason Tsong-Li Wang, Kaizhong Zhang, George Jyh-Shian Chang, Dennis E. Shasha
Pattern Recognit.4
2002 Finding Patterns in Three-Dimensional Graphs: Algorithms and Applications to Scientific Data Mining
abstract
Presents a method for finding patterns in 3D graphs. Each node in a graph is an undecomposable or atomic unit and has a label. Edges are links between the atomic units. Patterns are rigid substructures that may occur in a graph after allowing for an arbitrary number of whole-structure rotations and translations as well as a small number (specified by the user) of edit operations in the patterns or in the graph. (When a pattern appears in a graph only after the graph has been modified, we call that appearance "approximate occurrence.") The edit operations include relabeling a node, deleting a node and inserting a node. The proposed method is based on the geometric hashing technique, which hashes node-triplets of the graphs into a 3D table and compresses the label-triplets in the table. To demonstrate the utility of our algorithms, we discuss two applications of them in scientific data mining. First, we apply the method to locating frequently occurring motifs in two families of proteins pertaining to RNA-directed DNA polymerase and thymidylate synthase and use the motifs to classify the proteins. Then, we apply the method to clustering chemical compounds pertaining to aromatic compounds, bicyclicalkanes and photosynthesis. Experimental results indicate the good performance of our algorithms and high recall and precision rates for both classification and clustering.
Jason Tsong-Li Wang, Dennis E. Shasha, Bruce A. Shapiro, Isidore Rigoutsos, Kaizhong Zhang
IEEE Trans. Knowl. Data Eng.3
2001 Don't Trust your File Server
abstract
All too often, decisions about whom to trust in computer systems are driven by the needs of system management rather than data security. In particular data storage is often entrusted to people who have no role in creating or using the data-through outsourcing of data management, hiring of outside consultants to administer servers, or even collocation servers in physically insecure machine rooms to gain better network, connectivity. This paper outlines the design of SUNDR, a network file system designed to run on untrusted servers. SUNDR servers can safely be managed by people who have no permission to read or write data stored in the file system. Thus, people can base their trust decisions on who needs to use data and their administrative decisions on how best to manage the data. Moreover, with SUNDR, attackers will no longer be able to wreak havoc by compromising servers and tampering with data. They will need to compromise clients while legitimate users are logged on. Since clients do not need to accept incoming network connections, they can more easily be firewalled and protected from compromise than servers.
David Mazières, Dennis E. Shasha
HotOS2
2001 Filtering Algorithms and Implementation for Very Fast Publish/Subscribe
abstract
Publish/Subscribe is the paradigm in which users express long-term interests (“subscriptions”) and some agent “publishes” events (e.g., offers). The job of Publish/Subscribe software is to send events to the owners of subscriptions satisfied by those events. For example, a user subscription may consist of an interest in an airplane of a certain type, not to exceed a certain price. A published event may consist of an offer of an airplane with certain properties including price. Each subscription consists of a conjunction of (attribute, comparison operator, value) predicates. A subscription closely resembles a trigger in that it is a long-lived conditional query associated with an action (usually, informing the subscriber). However, it is less general than a trigger so novel data structures and implementations may enable the creation of more scalable, high performance publish/subscribe systems. This paper describes an attempt at the construction of such algorithms and its implementation. Using a combination of data structures, application-specific caching policies, and application-specific query processing our system can handle 600 events per second for a typical workload containing 6 million subscriptions.
Françoise Fabret, Hans-Arno Jacobsen, François Llirbat, João L. M. Pereira, Kenneth A. Ross, Dennis E. Shasha
SIGMOD Conference6
2001 Lots o' Ticks: Real-Time High Performance Time Series Queries on Billions of Trades and Quotes
abstract
Financial mathematicians think they can predict the future by looking at time series of trades and quotes (called ticks) from the past. The main evidence for this hypothesis is that prices fluctuate only by a small amount in a given day and more or less obey the mathematics of a random walk. The hypothesis allows traders to price options and to speculate on stocks. This demonstration presents a query language and a parallel database (50-way parallelism) to support traders who want to analyze every tick, not just end-of-day ticks, using temporal statistical queries such as time-delayed correlations and tick trends. This is the first attempt that we know of to store and analyze hundreds of gigabytes of time series data and to query that data using a declarative time series extension to SQL (available at www.kx.com).
Arthur T. Whitney, Dennis E. Shasha
SIGMOD Conference2
2001 Declarative Data Cleaning: Language, Model, and Algorithms
Helena Galhardas, Daniela Florescu, Dennis E. Shasha, Eric Simon, Cristian-Augustin Saita
VLDB3
2001 WebFilter: A High-throughput XML-based Publish and Subscribe System
João Pereira 0002, Françoise Fabret, Hans-Arno Jacobsen, François Llirbat, Dennis E. Shasha
VLDB5
2001 Efficient data reconciliation
Munir Cochinwala, Verghese Kurien, Gail Lalk, Dennis E. Shasha
Inf. Sci.4
2001 DNA sequence classification via an expectation maximization algorithm and neural networks: a case study
abstract
Presents new techniques for biosequence classification, with a focus on recognizing E. Coli promoters in DNA. Specifically, given an unlabeled DNA sequence S, we want to determine whether or not S is an E. Coli promoter. We use an expectation maximization (EM) algorithm to locate the -35 and -10 binding sites in an E. Coli promoter sequence. The EM algorithm differs from previously published EM algorithms in that, instead of assuming a uniform distribution for the lengths of the spacer between the -35 binding site and the -10 binding site as well as between the -10 binding site and the transcriptional start site, our algorithm deduces the probability distribution for these lengths. Based on the located binding sites, we select features in each E. Coli promoter sequence according to their information contents and represent the features using an orthogonal encoding method. We then feed the features to a neural network for promoter recognition. Empirical studies show that the proposed approach achieves good performance on different data sets.
Qicheng Ma, Jason Tsong-Li Wang, Dennis E. Shasha, Cathy H. Wu
IEEE Trans. Syst. Man Cybern. Part C3
2000 Efficient Matching for Web-Based Publish/Subscribe Systems
João Pereira 0002, Françoise Fabret, François Llirbat, Dennis E. Shasha
CoopIS4
2000 Algorithms and Experience in Increasing the Intelligibility and Hygiene of Access Control in Large Organizations
Marc Donner, David Nochin, Dennis E. Shasha, Wendy Walasek
DBSec3
2000 An Extensible Framework for Data Cleaning
abstract
Projet CARAVEL
Helena Galhardas, Daniela Florescu, Dennis E. Shasha, Eric Simon
ICDE3
2000 Application of neural networks to biological data mining: a case study in protein sequence classification
abstract
Biological data mining aims to extract signi cant information from DNA, RNA and proteins.The signi cant information may refer to motifs, functional sites, clustering and classi cation rules.This paper presents an example of biological data mining: the classi cation of protein sequences using neural netw orks.We proposenew tec hniques to extract features from protein data and use them in combination with the Ba yesianneural network to classify protein sequences obtained from the PIR protein database maintained at the National Biomedical Research F oundation.T o evaluate the performance of the proposed approach, we c o mpare it with other protein classi ers built based on sequence alignment and machine learning methods.Experimental results sho w the high precision of the proposed classi er and the complementarity of the tools studied in the paper.
Jason Tsong-Li Wang, Qicheng Ma, Dennis E. Shasha, Cathy H. Wu
KDD3
2000 AJAX: An Extensible Data Cleaning Tool
abstract
@@@@ groups together matching pairs with a high similarity value by applying a given grouping criteria (e.g. by transitive closure). Finally, ging collapses each individual cluster into a tuple of the resulting data source. AJAX provides @@@@ for specifying data cleaning programs, which consists of SQL statements enriched with a set of specific primitives to express these transformations.
Helena Galhardas, Daniela Florescu, Dennis E. Shasha, Eric Simon
SIGMOD Conference3
2000 An Approximate Search Engine for Structural Databases
Jason Tsong-Li Wang, Dennis E. Shasha, Bruce A. Shapiro, Kaizhong Zhang, Xinhuan Zheng, Qicheng Ma, Zasha Weinberg
SIGMOD Conference3
2000 Publish/Subscribe on the Web at Extreme Speed
João Pereira 0002, Françoise Fabret, François Llirbat, Radu Preotiuc-Pietro, Kenneth A. Ross, Dennis E. Shasha
VLDB6
2000 Message from the Editors-in-Chief
Matthias Jarke, Dennis E. Shasha
Inf. Syst.2
2000 An Index Structure for Data Mining and Clustering
Jason Tsong-Li Wang, King-Ip (David) Lin, Dennis E. Shasha, Bruce A. Shapiro, Kaizhong Zhang
Knowl. Inf. Syst.4
1999 Queryable Acyclic Production Systems
abstract
We pose a query problem about the behavior of a consultation system S: given a constraint formula q and a potential conclusion c for S, determine if there is a user input binding that satisfies q and causes S to conclude c. Existing rule-based expert systems, both forward and backward chaining[3], implement a consultation mechanism S, but are not designed for these queries about S. For general production systems, the queries are undecidable. Here we solve the problem for useful sublanguages of acyclic production systems.We implement a query tool in a Datalog + constraints framework, and optimize for “embedded decision trees” in the rule system. Our data complexity is T(n·ƒ(n)) in the size of the embedded trees, versus T(n·ƒ(n) + n2) for existing datalog evaluation algorithms, where ƒ(n) is the cost of destructively conjoining a constraint of unit size into a conjunction of n constraints.
David Tanzer, Dennis E. Shasha
CIKM2
1999 Evaluating a Class of Distance-Mapping Algorithms for Data Mining and Clustering
abstract
A distance-mapping algorithm takes a set of objects and a distance metric and then maps those objects to a Euclidean or pseudo-Euclidean space in such a way that the distances among objects are approximately preserved. Distancemapping algorithms are a useful tool for clustering and visualization in data intensive applications, because they replace expensive distance calculations by sum-of-square calculations. This can make clustering in large databases with expensive distance metrics practical. In this paper we present five distance-mapping algorithms and conduct experiments to compare their performance in data clustering applications. These include two algorithms called FastMap and MetricMap, and three hybrid heuristics that combine the two algorithms in different ways. Experimental results on both synthetic and RNA data show the superiority of the hybrid algorithms. The results imply that FastMap and MetricMap capture complementary information about distance metrics and therefore ca...
Jason Tsong-Li Wang, King-Ip (David) Lin, Dennis E. Shasha, Bruce A. Shapiro, Kaizhong Zhang
KDD4
1998 An Approximate Oracle for Distance in Metric Spaces
Yanling Yang, Kaizhong Zhang, Jason Tsong-Li Wang, Dennis E. Shasha
CPM5
1998 Free Parallel Data Mining
abstract
Data mining is computationally expensive. Since the benefits of data mining results are unpredictable, organizations may not be willing to buy new hardware for that purpose. We will present a system that enables data mining applications to run in parallel on networks of workstations in a fault-tolerant manner. We will describe our parallelization of a combinatorial pattern discovery algorithm and a classification tree algorithm. We will demonstrate the effectiveness of our system with two real applications: discovering active motifs in protein sequences and predicting foreign exchange rate movement.
Bin Li 0090, Dennis E. Shasha
SIGMOD Conference2
1998 An Algorithm for Finding the Largest Approximately Common Substructures of Two Trees
abstract
Ordered, labeled trees are trees in which each node has a label and the left-to-right order of its children (if it has any) is fixed. Such trees have many applications in vision, pattern recognition, molecular biology and natural language processing. We consider a substructure of an ordered labeled tree T to be a connected subgraph of T. Given two ordered labeled trees T/sub 1/ and T/sub 2/ and an integer d, the largest approximately common substructure problem is to find a substructure U/sub 1/ of T/sub 1/ and a substructure U/sub 2/ of T/sub 2/ such that U/sub 1/ is within edit distance d of U/sub 2/ and where there does not exist any other substructure V/sub 1/ of T/sub 1/ and V/sub 2/ of T/sub 2/ such that V/sub 1/ and V/sub 2/ satisfy the distance constraint and the sum of the sizes of V/sub 1/ and V/sub 2/ is greater than the sum of the sizes of U/sub 1/ and U/sub 2/. We present a dynamic programming algorithm to solve this problem, which runs as fast as the fastest known algorithm for computing the edit distance of two trees when the distance allowed in the common substructures is a constant independent of the input trees. To demonstrate the utility of our algorithm, we discuss its application to discovering motifs in multiple RNA secondary structures (which are ordered labeled trees).
Jason Tsong-Li Wang, Bruce A. Shapiro, Dennis E. Shasha, Kaizhong Zhang, Kathleen M. Currey
IEEE Trans. Pattern Anal. Mach. Intell.3
1997 Automated Discovery of Active Motifs in Three Dimensional Molecules
Jason Tsong-Li Wang, Dennis E. Shasha, Bruce A. Shapiro, Sitaram Dikshitulu, Isidore Rigoutsos, Kaizhong Zhang
KDD3
1997 Lessons from Wall Street: Case Studies in Configuration, Tuning, and Distribution (Tutorial)
abstract
Consider a setting in which
Dennis E. Shasha
SIGMOD Conference1
1997 Structural Matching and Discovery in Document Databases
abstract
Structural matching and discovery in documents such as SGML and HTML is important for data warehousing [6], version management [7, 11], hypertext authoring, digital libraries [4] and Internet databases. As an example, a user of the World Wide Web may be interested in knowing changes in an HTML document [2, 5, 10]. Such changes can be detected by comparing the old and new version of the document (referred to as structural matching of documents). As another example, in hypertext authoring, a user may wish to find the common portions in the history list of a document or in a database of documents (referred to as structural discovery of documents). In SIGMOD 95 demo sessions, we exhibited a software package, called TreeDiff [13], for comparing two latex documents and showing their differences. Given two documents, the tool represents the documents as ordered labeled trees and finds an optimal sequence of edit operations to transform one document (tree) to the other. An edit operation could be an insert, delete, or change of a node in the trees. The tool is so named because documents are represented and compared using approximate tree matching techniques [9, 12, 14].
Jason Tsong-Li Wang, Dennis E. Shasha, George Jyh-Shian Chang, Liam Relihan, Kaizhong Zhang, Girish Patel
SIGMOD Conference2
1996 Automated Discovery of Active Motifs in Multiple RNA Secondary Structures
Jason Tsong-Li Wang, Bruce A. Shapiro, Dennis E. Shasha, Kaizhong Zhang, Chia-Yo Chang
KDD3
1996 The Dangers of Replication and a Solution
abstract
Update anywhere-anytime-anyway transactional replication has unstable behavior as the workload scales up: a ten-fold increase in nodes and traffic gives a thousand fold increase in deadlocks or reconciliations. Master copy replication (primary copy) schemes reduce this problem. A simple analytic model demonstrates these results. A new two-tier replication algorithm is proposed that allows mobile (disconnected) applications to propose tentative update transactions that are later applied to a master copy. Commutative update transactions avoid the instability of other replication schemes.
Jim Gray 0001, Pat Helland, Patrick E. O'Neil, Dennis E. Shasha
SIGMOD Conference4
1996 Thinksheet: A Tool for Tailoring Complex Documents
abstract
No abstract available.
Peter Piatko, Roman Yangarber, Dao-I Lin, Dennis E. Shasha
SIGMOD Conference4
1995 On the Editing Distance between Undirected Acyclic Graphs and Related Problems
Kaizhong Zhang, Jason Tsong-Li Wang, Dennis E. Shasha
CPM3
1995 An Approach To Handling Overloaded Systems That Allow Skips
abstract
In applications ranging from video reception to telecommunications and packet communication to aircraft control, tasks enter periodically and have fixed response time constraints, but missing a deadline is acceptable, provided most deadlines are met. We call such tasks "occasionally skippable". We look at the problem of uniprocessor scheduling of occasionally skippable periodic tasks in an environment having periodic tasks. We show that making optimal use of skips is NP-hard. We then look at two algorithms called Skip-Over Algorithms (one a variant of earliest deadline first and one of rate monotonic scheduling) that exploit skips. We give schedulability bounds for both.
Gilad Koren, Dennis E. Shasha
RTSS2
1995 Pattern Matching and Pattern Discovery in Scientific, Program, and Document Databases
abstract
Over the past several years we have created or borrowed algorithms for combinatorial pattern matching and pattern discovery on sequences [2] and trees.In matching problems, given a pattern, a set of data objects and a distance metric, we find the distance between the pattern and one or more data objects. In discovery problems by contrast, given a set of objects, a metric, and a distance, we seek a pattern that matches many of those objects within the given distance. (So, discovery is a lot like data mining.) Our toolkit performs both matching and discovery with current targeted applications in molecular biology and document comparison.
Jason Tsong-Li Wang, Kaizhong Zhang, Dennis E. Shasha
SIGMOD Conference3
1995 D^over: An Optimal On-Line Scheduling Algorithm for Overloaded Uniprocessor Real-Time Systems
abstract
Consider a real-time system in which every task has a value that it obtains only if it completes by its deadline. The problem is to design an on-line scheduling algorithm (i.e., the scheduler has no knowledge of a task until it is released) that maximizes the guaranteed value obtained by the system. When such a system is underloaded (i.e., there exists a schedule for which all tasks meet their deadlines), Dertouzos [Proceedings IFIF Congress, 1974, pp. 807–8131 showed that the earliest deadline first algorithm will achieve 100% of the possible value. Locke [Ph.D. thesis, Computer Science Dept., Carnegie-Mellon Univ., Pittsburgh, PA] showed that earliest deadline first performs very badly, however, when the system is overloaded, and he proposed heuristics to deal with overload. This paper presents an optimal on-line scheduling algorithm for overloaded uniprocessor systems. It is optimal in the sense that it gives the best competitive ratio possible relative to an off-line scheduler.
Gilad Koren, Dennis E. Shasha
SIAM J. Comput.2
1995 Transaction Chopping: Algorithms and Performance Studies
abstract
Chopping transactions into pieces is good for performance but may lead to nonserializable executions. Many researchers have reacted to this fact by either inventing new concurrency-control mechanisms, weakening serializability, or both. We adopt a different approach. We assume a user who —has access only to user-level tools such as (1) choosing isolation degrees 1ndash;4, (2) the ability to execute a portion of a transaction using multiversion read consistency, and (3) the ability to reorder the instructions in transaction programs; and —knows the set of transactions that may run during a certain interval (users are likely to have such knowledge for on-line or real-time transactional applications). Given this information, our algorithm finds the finest chopping of a set of transactions TranSet with the following property: If the pieces of the chopping execute serializably, then TranSet executes serializably . This permits users to obtain more concurrency while preserving correctness. Besides obtaining more intertransaction concurrency, chopping transactions in this way can enhance intratransaction parallelism. The algorithm is inexpensive, running in O(n×(e+m)) time, once conflicts are identified, using a naive implementation, where n is the number of concurrent transactions in the interval, e is the number of edges in the conflict graph among the transactions, and m is the maximum number of accesses of any transaction. This makes it feasible to add as a tuning knob to real systems.
Dennis E. Shasha, François Llirbat, Eric Simon, Patrick Valduriez
ACM Trans. Database Syst.1
1994 Combinatorial Pattern Discovery for Scientific Data: Some Preliminary Results
abstract
Suppose you are given a set of natural entities (e.g., proteins, organisms, weather patterns, etc.) that possess some important common externally observable properties. You also have a structural description of the entities (e.g., sequence, topological, or geometrical data) and a distance metric. Combinatorial pattern discovery is the activity of finding patterns in the structural data that might explain these common properties based on the metric.
Jason Tsong-Li Wang, Gung-Wei Chirn, Thomas G. Marr, Bruce A. Shapiro, Dennis E. Shasha, Kaizhong Zhang
SIGMOD Conference5
1994 PLinda 2.0: A Transactional/Checkpointing Approach to Fault Tolerant Linda
abstract
Robust parallel computation in Linda requires both tuple space and processes to be resilient to failure. In this paper, we present PLinda 2.0, set of extensions to Linda to support robust parallel computation on loosely coupled processors communicating over a network. The principal extensions of PLinda 2.0 to Linda are transaction mechanisms for reliable tuple space and process-private logging mechanisms for resilient processes. The transaction mechanisms support two kinds of tuple space: stable tuple space always guaranteed to reflect state as of last committed transaction, and unstable tuple space protected by a transaction-consistent checkpoint. The process-private logging mechanisms are provided as tools for a process checkpointing scheme. These mechanisms allow the customization of checkpointing and recovery operations in each process to achieve low runtime overhead.>
Karpjoo Jeong, Dennis E. Shasha
SRDS2
1994 2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm
Theodore Johnson, Dennis E. Shasha
VLDB2
1994 Information Systems takes a new direction
Matthias Jarke, Dennis E. Shasha
Inf. Syst.2
1994 The new Editorial Board of Information Systems
Matthias Jarke, Dennis E. Shasha
Inf. Syst.2
1994 MOCA: A Multiprocessor On-Line Competitive Algorithm for Real-Time System Scheduling
Gilad Koren, Dennis E. Shasha
Theor. Comput. Sci.2
1994 A System for Approximate Tree Matching
abstract
Ordered, labeled trees are trees in which each node has a label and the left-to-right order of its children (if it has any) is fixed. Such trees have many applications in vision, pattern recognition, molecular biology, programming compilation, and natural language processing. Many of the applications involve comparing trees or retrieving/extracting information from a repository of trees. Examples include classification of unknown patterns, analysis of newly sequenced RNA structures, semantic taxonomy for dictionary definitions, generation of interpreters for nonprocedural programming languages, and automatic error recovery and correction for programming languages. Previous systems use exact matching (or generalized regular expression matching) for tree comparison. This paper presents a system, called approximate-tree-by-example (ATBE), which allows inexact matching of trees. The ATBE system interacts with the user through a simple but powerful query language; graphical devices are provided to facilitate inputing the queries. The paper describes the architecture of ATBE, illustrates its use and describes some aspects of ATBE implementation. We also discuss the underlying algorithms and provide some sample applications.>
Jason Tsong-Li Wang, Kaizhong Zhang, Karpjoo Jeong, Dennis E. Shasha
IEEE Trans. Knowl. Data Eng.4
1994 Exact and approximate algorithms for unordered tree matching
abstract
We consider the problem of comparison between unordered trees, i.e., trees for which the order among siblings is unimportant. The criterion for comparison is the distance as measured by a weighted sum of the costs of deletion, insertion and relabel operations on tree nodes. Such comparisons may contribute to pattern recognition efforts in any field (e.g., genetics) where data can naturally be characterized by unordered trees. In companion work, we have shown this problem to be NP-complete. This paper presents an efficient enumerative algorithm and several heuristics leading to approximate solutions. The algorithms are based on probabilistic hill climbing and bipartite matching techniques. The paper evaluates the accuracy and time efficiency of the heuristics by applying them to a set of trees transformed from industrial parts based on a previously proposed morphological model.>
Dennis E. Shasha, Jason Tsong-Li Wang, Kaizhong Zhang, Frank Y. Shih
IEEE Trans. Syst. Man Cybern.1
1993 MOCA: A multiprocessor on-line competitive algorithm for real-time system scheduling
abstract
We study competitive on-line scheduling in multiprocessor real-time environments. In our model, every task has a deadline and a value that it obtains only if it completes by its deadline. A task can be assigned to any processor, all of which are equally powerful. The problem is to design an on-line scheduling algorithm (i.e., one in which the scheduler has no knowledge of a task until it is released) with worst case guarantees as to the total value obtained by the system. We study systems with two or more processors. We present an inherent limit on the best competitive guarantee that any on-line parallel real-time scheduler can give. Then we present a competitive algorithm that achieves a worst case guarantee which is within a small factor from the best possible guarantee in many cases. The models are a distributed system having a centralized scheduler as well as a shared memory multiprocessor.>
Gilad Koren, Dennis E. Shasha, Shih-Chen Huang
RTSS2
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.2
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.2
1992 Fast Serial and Parallel Algorithms for Approximate Tree Matching with VLDC's
Kaizhong Zhang, Dennis E. Shasha, Jason Tsong-Li Wang
CPM2
1992 Pattern Matching in Unordered Trees
abstract
The problem of comparison between unordered trees, i.e. trees for which the order among siblings is unimportant, is considered. The criterion for comparison is the distance as measured by a weighted sum of the costs of deletion, insertion, and relabel operations on tree nodes. Such comparisons may contribute to pattern recognition efforts in any field (e.g. genetics) where data can naturally be characterized by unordered trees. It is observed that the problem is NP-complete. An enumerative algorithm and several heuristics leading to approximate solutions are given. The algorithms are based on probabilistic hill climbing and bipartite matching techniques. The accuracy and time efficiency of the heuristics are evaluated by applying them to a set of trees transformed from industrial parts based on a previously proposed morphological model.>
Dennis E. Shasha, Jason Tsong-Li Wang, Kaizhong Zhang, Frank Y. Shih
ICTAI1
1992 Locking without Blocking: Making Lock Based Concurrent Data Structure Algorithms Nonblocking
abstract
Nonblocking algorithms for concurrent data structures guarantee that a data structure is always accessible. This is 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.
John Turek, Dennis E. Shasha, Sundeep Prakash
PODS2
1992 Dover; an optimal on-line scheduling algorithm for overloaded real-time systems
abstract
An optimal online scheduling algorithm for overloaded systems is presented. It is optimal in the sense that it gives the best competitive factor possible relative to an offline (i.e., clairvoyant) scheduler. It also gives 100% of the value of a clairvoyant scheduler when the system is underloaded. In fact the performance guarantee of D/sup over/ is even stronger: D/sup over/ schedules to completion all tasks in underloaded periods and achieves at least 1/(1+ square root k)/sup 2/ of the value a clairvoyant algorithm can get during overloaded periods. The model accounts for different value densities and generalizes to soft deadlines.>
Gilad Koren, Dennis E. Shasha
RTSS2
1992 Simple Rational Guidance for Chopping Up Transactions
abstract
Chopping transactions into pieces is good for performance but may lead to non-serializable executions. Many researchers have reacted to this fact by either inventing new concurrency control mechanisms, weakening serializability, or both. We adopt a different approach.
Dennis E. Shasha, Eric Simon, Patrick Valduriez
SIGMOD Conference1
1992 Database Tuning
Dennis E. Shasha, Steve Rozen
VLDB1
1992 On the Editing Distance Between Unordered Labeled Trees
Kaizhong Zhang, Richard Statman, Dennis E. Shasha
Inf. Process. Lett.3
1992 On the Competitiveness of On-Line Real-Time Task Scheduling
Sanjoy Baruah, Gilad Koren, Decao Mao, Bud Mishra, Arvind Raghunathan, Louis E. Rosier, Dennis E. Shasha, Fuxing Wang
Real Time Syst.7
1991 On-line Scheduling in the Presence of Overload
abstract
The preemptive scheduling of sporadic tasks on a uniprocessor is considered. A task may arrive at any time, and is characterized by a value that reflects its importance, an execution time that is the amount of processor time needed to completely execute the task, and a deadline by which the task is to complete execution. The goal is to maximize the sum of the values of the completed tasks. An online scheduling algorithm that achieves optimal performance when the system is underloaded and provides a nontrivial performance guarantee when the system is overloaded is designed. The algorithm is implemented using simple data structures to run at a cost of O(log n) time per task, where n bounds the number of tasks in the system at any instant. Upper bounds on the best performance guarantee obtainable by an online algorithm in a variety of settings are derived.>
Sanjoy Baruah, Gilad Koren, Bud Mishra, Arvind Raghunathan, Louis E. Rosier, Dennis E. Shasha
FOCS6
1991 Object Versioning in Ode
abstract
In designing the versioning facility in Ode, a few but semantically sound and powerful concepts are introduced that allow implementation of a wide variety of paradigms. Some of the salient features of these versioning facilities are the following: (1) object versioning is orthogonal to type; (2) reference to an object can be bound statically to a specific version of the object or dynamically to whatever is its latest version; and (3) both temporal as well as derived-from relationships between versions of an object are maintained automatically. These facilities have been incorporated seamlessly into Ode's database programming language, O++. The new language constructs are powerful enough to make O++ a suitable platform for implementing a variety of versioning paradigms and application-specific systems.>
Rakesh Agrawal 0001, S. Buroff, Narain H. Gehani, Dennis E. Shasha
ICDE4
1991 A tool for tree pattern matching
abstract
A description is presented of a system, called approximate-tree-by-example (ATBE), which supports AI applications that involve comparing ordered labeled trees or retrieving/extracting information from repositories of such trees. The ATBE system interacts with users through a powerful query language; graphical devices are provided to facilitate inputting the queries. The system is designed to be extensible, customizable, and portable, which makes it a very useful tool for tree pattern matching in various environments. The use of the tool is illustrated. Several examples taken directly from the complete implementation are discussed.>
Jason Tsong-Li Wang, Kaizhong Zhang, Karpjoo Jeong, Dennis E. Shasha
ICTAI4
1991 On the competitiveness of on-line real-time task scheduling
abstract
The authors study the performance of online algorithms in environments where no value is obtained for the partial execution of a request. They prove that no online scheduling algorithm can have a competitive factor greater than 0.25 times the optimal. They further refine this bound by considering the effect of the loading factor. Other models of task systems (for example, tasks systems consisting of many types of task requests), are considered. Similar upper bounds on the competitive factor that can be made by online scheduling algorithms in these environments are proved. It is shown that the performance bound of 0.25 is tight by means of a simple online uniprocessor scheduling algorithm has a competitive factor of 1/4. The authors extend the discussion to systems with dual processors. They show that the upper bound for the dual-processor online scheduling problem is 1/2 if all tasks have the same value density. This bound is tight if the tasks all also have zero laxity.>
Sanjoy Baruah, Gilad Koren, Decao Mao, Bud Mishra, Arvind Raghunathan, Louis E. Rosier, Dennis E. Shasha, Fuxing Wang
RTSS7
1991 A Framework for Automating Physical Database Design
Steve Rozen, Dennis E. Shasha
VLDB2
1991 Information Search with Dynamic Text vs Paper Text: An Empirical Comparison
Susan H. Gray, C. Bradford Barber, Dennis E. Shasha
Int. J. Man Mach. Stud.3
1991 Optimizing Equijoin Queries In Distributed Databases Where Relations Are Hash Partitioned
abstract
Consider the class of distributed database systems consisting of a set of nodes connected by a high bandwidth network. Each node consists of a processor, a random access memory, and a slower but much larger memory such as a disk. There is no shared memory among the nodes. The data are horizontally partitioned often using a hash function. Such a description characterizes many parallel or distributed database systems that have recently been proposed, both commercial and academic. We study the optimization problem that arises when the query processor must repartition the relations and intermediate results participating in a multijoin query. Using estimates of the sizes of intermediate relations, we show (1) optimum solutions for closed chain queries; (2) the NP-completeness of the optimization problem for star, tree, and general graph queries; and (3) effective heuristics for these hard cases. Our general approach and many of our results extend to other attribute partitioning schemes, for example, sort-partitioning on attributes, and to partitioned object databases.
Dennis E. Shasha, Jason Tsong-Li Wang
ACM Trans. Database Syst.1
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
PODS2
1990 Query Processing for Distance Metrics
Jason Tsong-Li Wang, Dennis E. Shasha
VLDB2
1990 Performance and Architectural Issues for String Matching
abstract
The authors introduce special heuristics to the Knuth-Morris-Pratt algorithm to reduce the time and space required to perform the string matching. They compare their hardware-based approach to the software approaches embodied in the Unix system grep and fgrep commands. Simulation results show that the hardware approach can provide a 25-500-fold performance improvement, depending on the complexity of the query, and that it is fast enough, even in the presence of variable-length 'don't cares' to keep up with a 20-million character/second disk. The approach compares favorably to other hardware designs in speed and space. The proposed hardware implementation requires 10 kB of one cycle static memory, 28 single-character comparators, four 16-b adders, and control logic for four finite-state machines with a term-matcher controller. After that, additional hardware produces negligible performance improvements for queries with up to 80 terms, about half of which have variable-length 'don't cares'.>
Merrill E. Isenman, Dennis E. Shasha
IEEE Trans. Computers2
1990 New Techniques for Best-Match Retrieval
abstract
A scheme to answer best-match queries from a file containing a collection of objects is described. A best-match query is to find the objects in the file that are closest (according to some (dis)similarity measure) to a given target. Previous work [5, 331] suggests that one can reduce the number of comparisons required to achieve the desired results using the triangle inequality, starting with a data structure for the file that reflects some precomputed intrafile distances. We generalize the technique to allow the optimum use of any given set of precomputed intrafile distances. Some empirical results are presented which illustrate the effectiveness of our scheme, and its performance relative to previous algorithms.
Dennis E. Shasha, Jason Tsong-Li Wang
ACM Trans. Inf. Syst.1
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
PODS2
1989 Fast Parallel Algorithms for the Unit Cost Editing Distance Between Trees
abstract
1. Problem Ordered labeled trees are trees whose nodes are labeled and in which the ° left-to-right order among siblings is significant. We consider the distance between two trees to be the minimum number of edit operations (insert, delete, and modify) necessary to transform one tree to another. We present three algorithms to find the distance. The first algorithm is a simple dynamic program-ming algorithm based on a postorder traversal whose complexity improves upon the best previ-ously published algorithm due to Tai (T79 in JACM). The second and third algorithms are parallel algorithms based on the application of suf-fix trees to the comparison problem. The cost of executing these algorithms is a monotonic increas-ing function of the distance between the two trees. Results Let trees T I and T2 have numbers of levels L i and L 2 respectively. Let k be the actual distance between T 1 and T2. Let N be rain (IT11, IT2]). The asymptotic running times (assuming a concurrent-read concurrent-write parallel random access machine) are: A lgor i thm T ime Processors Tai IT l lX [T2[xL~XL] Alg l [Tx [ × Ir=l xLI×L2
Dennis E. Shasha, Kaizhong Zhang
SPAA1
1989 Simple Fast Algorithms for the Editing Distance Between Trees and Related Problems
abstract
Ordered labeled trees are trees in which the left-to-right order among siblings is significant. The distance between two ordered trees is considered to be the weighted number of edit operations (insert, delete, and modify) to transform one tree to another. The problem of approximate tree matching is also considered. Specifically, algorithms are designed to answer the following kinds of questions:1. What is the distance between two trees? 2. What is the minimum distance between $T_1 $ and $T_2 $ when zero or more subtrees can be removed from $T_2 $? 3. Let the pruning of a tree at node n mean removing all the descendants of node n. The analogous question for prunings as for subtrees is answered. A dynamic programming algorithm is presented to solve the three questions in sequential time $O(|T_1 | \times |T_2 | \times \min ({\textit{depth}}(T_1 ),{\textit{leaves}}(T_1 )) \times \min ({\textit{depth}}(T_2 ),{\textit{leaves}}(T_2 )))$ and space $O(|T_1 | \times |T_2 |)$ compared with $O(|T_1 | \times |T_2 | \times ({\textit{depth}}(T_1 ))^2 \times ({\textit{depth}}(T_2 ))^2 )$ for the best previous published algorithm due to Tai [J. Assoc. Comput. Mach., 26 (1979), pp, 422-433]. Further, the algorithm presented here can be parallelized to give time $O(|T_1 | \times |T_2 |)$.
Kaizhong Zhang, Dennis E. Shasha
SIAM J. Comput.2
1988 Concurrent Set Manipulation without Locking
abstract
Set manipulation consists of the actions insert, delete, and member on keys. We propose a concurrent set manipulation algorithm that uses no locking at all and requires no aborts, relying instead on atomic read-modify-write operations on single (data) locations. The algorithm satisfies order-preserving serializability through conditions that are strictly looser than existing algorithms
Vladimir Lanin, Dennis E. Shasha
PODS2
1988 Concurrent Search Structure Algorithms
abstract
A dictionary is an abstract data type supporting the actions member, insert, and delete. A search structure is a data structure used to implement a dictionary. Examples include B trees, hash structures, and unordered lists. Concurrent algorithms on search structures can achieve more parallelism than standard concurrency control methods would suggest, by exploiting the fact that many different search structure states represent one dictionary state. We present a framework for verifying such algorithms and for inventing new ones. We give several examples, one of which exploits the structure of Banyan family interconnection networks. We also discuss the interaction between concurrency control and recovery as applied to search structures.
Dennis E. Shasha, Nathan Goodman
ACM Trans. Database Syst.1
1988 Efficient and Correct Execution of Parallel Programs that Share Memory
abstract
In this paper we consider an optimization problem that arises in the execution of parallel programs on shared-memory multiple-instruction-stream, multiple-data-stream (MIMD) computers. A program on such machines consists of many sequential program segments, each executed by a single processor. These segments interact as they access shared variables. Access to memory is asynchronous, and memory accesses are not necessarily executed in the order they were issued. An execution is correct if it is sequentially consistent: It should seem as if all the instructions were executed sequentially, in an order obtained by interleaving the instruction streams of the processors. Sequential consistency can be enforced by delaying each access to shared memory until the previous access of the same processor has terminated. For performance reasons, however, we want to allow several accesses by the same processor to proceed concurrently. Our analysis finds a minimal set of delays that enforces sequential consistency. The analysis extends to interprocessor synchronization constraints and to code where blocks of operations have to execute atomically. We use a conflict graph similar to that used to schedule transactions in distributed databases. Our graph incorporates the order on operations given by the program text, enabling us to do without locks even when database conflict graphs would suggest that locks are necessary. Our work has implications for the design of multiprocessors; it offers new compiler optimization techniques for parallel languages that support shared variables.
Dennis E. Shasha, Marc Snir
ACM Trans. Program. Lang. Syst.1
1987 Fast Parallel Algorithms for Processing of Joins
Dennis E. Shasha, Paul G. Spirakis
ICS1
1986 Distributed Office By Example (D-OBE)
abstract
The D-OBE (Distributed Office By Example) language for distributed office information systems is introduced. D-OBE is an extension of the OBE (Office By Example) and QBE (Query By Example) languages. A major problem was the design of a language simple enough for office workers and yet sufficiently powerful to handle the many facilities of a distributed office system. It is suggested that D-OBE achieves these goals by employing the proven user friendly QBE interface. Surprisingly few extensions to QBE were needed. The states of the servers are presented to the user as QBE tables that are manipulated by the familiar QBE operations. Another problem was to design D-OBE such that it would fit ‘any’ office. D-OBE is based on the observation that large offices divide their tasks among departments. Each department is made responsible for accomplishing its tasks, and is given control over the facilities to do it. A department will thus control its ‘D-OBE cluster’, which is a number of workstations connected to a database, mail, hardcopy and name server. Such a cluster may cooperate with other clusters. The use of logical ports help to reconfigure the network as the structure and goals of the office evolve. A naming server provides the ‘yellow pages’ of the network services. D-OBE identifies for each data object, workstation and server the person responsible for its proper handling.
Eliezer Kantorowitz, Fred J. Maryanski, Dennis E. Shasha
ICDE3
1985 Semantically-based Concurrency Control for Search Structures
abstract
Article Free Access Share on Semantically-based concurrancy control for search structures Authors: Nathan Goodman View Profile , Dennis Shasha View Profile Authors Info & Claims PODS '85: Proceedings of the fourth ACM SIGACT-SIGMOD symposium on Principles of database systemsMarch 1985 Pages 8–19https://doi.org/10.1145/325405.325407Published:25 March 1985Publication History 14citation100DownloadsMetricsTotal Citations14Total Downloads100Last 12 Months15Last 6 weeks5 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
Nathan Goodman, Dennis E. Shasha
PODS2
1985 NetBook - a Data Model to Support Knowledge Exploration
Dennis E. Shasha
VLDB1
1984 Temporal Verification of Carrier-Sense Local Area Network Protocols
abstract
We examine local area network protocols and verify the correctness of two representative algorithms using temporal logic. We introduce an interval temporal logic that allows us to make assertions of the form “in the next k units, X holds.” This logic encodes intuitive arguments about contention protocols quite directly. We present two proofs of an Ethernet-like contention protocol, one using the interval temporal logic and one using classical temporal logic. We also verify a contention-free protocol using an invariant that seems to have wide applicability for such protocols.
Dennis E. Shasha, Amir Pnueli, W. Ewald
POPL1