VLDB 2026 Research / reviewers in the wild / expert
Rahul Shah 0001
dblp:75/3500
· DBLP profile ↗
98ranked-venue papers
8as first author
8since 2021 · last 2026
0000-0002-2190-5840ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Databases, data management, data science and information retrieval · 41Theory of computation · 39 · 4 first-author · 8 since 2021Graphics, computer vision, multimedia, augmented reality and games · 20Systems, architecture and hardware · 4 · 2 first-authorArtificial intelligence and machine learning · 2Computer networks · 2 · 2 first-authorApplied, interdisciplinary, general and emerging computing · 2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Relative Compressed Reverse Suffix Array
M. Oguzhan Külekci, Mano Prakash Parthasarathi, Rahul Shah 0001, Sharma V. Thankachan |
STACS | 3 |
| 2025 | Two-Dimensional Longest Common Extension Queries in Compact Space
Arnab Ganguly 0002, Daniel Gibney, Rahul Shah 0001, Sharma V. Thankachan |
STACS | 3 |
| 2023 | Ranked Document Retrieval in External MemoryabstractThe ranked (or top- k ) document retrieval problem is defined as follows: preprocess a collection {T 1 ,T 2 ,… ,T d } of d strings (called documents) of total length n into a data structure, such that for any given query (P,k) , where P is a string (called pattern) of length p ≥ 1 and k ∈ [1,d] is an integer, the identifiers of those k documents that are most relevant to P can be reported, ideally in the sorted order of their relevance. The seminal work by Hon et al. [FOCS 2009 and Journal of the ACM 2014] presented an O(n) -space (in words) data structure with O(p+k log k) query time. The query time was later improved to O(p+k) [SODA 2012] and further to O(p/ log σn+k ) [SIAM Journal on Computing 2017] by Navarro and Nekrich, where σ is the alphabet size. We revisit this problem in the external memory model and present three data structures. The first one takes O(n) -space and answer queries in O(p/B + log B n + k/B+ log * (n/B) ) I/Os, where B is the block size. The second one takes O(n log * (n/B) ) space and answer queries in optimal O(p/B + log B n + k/B) I/Os. In both cases, the answers are reported in the unsorted order of relevance. To handle sorted top- k document retrieval, we present an O(n log (d/B)) space data structure with optimal query cost. Rahul Shah 0001, Cheng Sheng 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
ACM Trans. Algorithms | 1 |
| 2022 | Fully Functional Parameterized Suffix Trees in Compact Space
Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
ICALP | 2 |
| 2021 | LF Successor: Compact Space Indexing for Order-Isomorphic Pattern MatchingabstractTwo strings are order isomorphic iff the relative ordering of their characters is the same at all positions. For a given text T[1,n] over an ordered alphabet of size σ, we can maintain an order-isomorphic suffix tree/array in O(nlog n) bits and support (order-isomorphic) pattern/substring matching queries efficiently. It is interesting to know if we can encode these structures in space close to the text’s size of nlogσ bits. We answer this question positively by presenting an O(nlog σ)-bit index that allows access to any entry in order-isomorphic suffix array (and its inverse array) in t_{SA} = {O}(log²n/logσ) time. For any pattern P given as a query, this index can count the number of substrings of T that are order-isomorphic to P (denoted by occ) in {O}((|P|logσ+t_{SA})log n) time using standard techniques. Also, it can report the locations of those substrings in additional O(occ ⋅ t_{SA}) time. Arnab Ganguly 0002, Dhrumil Patel, Rahul Shah 0001, Sharma V. Thankachan |
ICALP | 3 |
| 2021 | Inverse Suffix Array Queries for 2-Dimensional Pattern Matching in Near-Compact SpaceabstractIn a 2-dimensional (2D) pattern matching problem, the text is arranged as a matrix 𝖬[1..n, 1..n] and consists of N = n × n symbols drawn from alphabet set Σ of size σ. The query consists of a m × m square matrix 𝖯[1..m, 1..m] drawn from the same alphabet set Σ and the task is to find all the locations in 𝖬 where 𝖯 appears as a (contiguous) submatrix. The patterns can be of any size, but as long as they are square in shape data structures like suffix trees and suffix array exist [Raffaele Giancarlo, 1995; Dong Kyue Kim et al., 1998] for the task of efficient pattern matching. These are essentially 2D counterparts of classic suffix trees and arrays known for traditional 1-dimensional (1D) pattern matching. They work based on linearization of 2D suffixes which would preserve the prefix match property (i.e., every pattern match is a prefix of some suffix). The main limitation of the suffix trees and the suffix arrays (in 1D) was their space utilization of O(N log N) bits, where N is the size of the text. This was suboptimal compared to Nlog σ bits of space, which is information theoretic optimal for the text. With the advent of the field of succinct/compressed data structures, it was possible to develop compressed variants of suffix trees and array based on Burrows-Wheeler Tansform and LF-mapping (or Φ function) [Roberto Grossi and Jeffrey Scott Vitter, 2005; Paolo Ferragina and Giovanni Manzini, 2005; Kunihiko Sadakane, 2007]. These data structures indeed achieve O(N log σ) bits of space or better. This gives rise to the question: analogous to 1D case, can we design a succinct or compressed index for 2D pattern matching? Can there be a 2D compressed suffix tree? Are there analogues of Burrows-Wheeler Transform or LF-mapping? The problem has been acknowledged for over a decade now and there have been a few attempts at applying Φ function [Ankur Gupta, 2004] and achieving entropy based compression [Veli Mäkinen and Gonzalo Navarro, 2008]. However, achieving the complexity breakthrough akin to 1D case has yet to be found. In this paper, we still do not know how to answer suffix array queries in O(N log σ) bits of space - which would have led to efficient pattern matching. However, for the first time, we show an interesting result that it is indeed possible to compute inverse suffix array (ISA) queries in near compact space in O(polylog n) time. Our 2D succinct text index design is based on two 1D compressed suffix trees and it takes O(N log log N + N logσ) bits of space which is much smaller than its naive design that takes O(N log N) bits. Although the main problem is still evasive, this index gives a hope on the existence of a full 2D succinct index with all functionalities similar to that of 1D case. Dhrumil Patel, Rahul Shah 0001 |
ISAAC | 2 |
| 2021 | I/O-optimal categorical 3-sided skyline queries
Arnab Ganguly 0002, Daniel Gibney, Sharma V. Thankachan, Rahul Shah 0001 |
Theor. Comput. Sci. | 4 |
| 2021 | A framework for designing space-efficient dictionaries for parameterized and order-preserving matching
Arnab Ganguly 0002, Wing-Kai Hon, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 4 |
| 2020 | Succinct Non-overlapping Indexing
Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
Algorithmica | 2 |
| 2020 | A linear-space data structure for range-LCP queries in poly-logarithmic time
Paniz Abedin, Arnab Ganguly 0002, Wing-Kai Hon, Kotaro Matsuda, Yakov Nekrich, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 7 |
| 2020 | Ranked document selection
J. Ian Munro, Gonzalo Navarro 0001, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 3 |
| 2019 | Parameterized Text Indexing with One WildcardabstractTwo equal-length strings X and Y over an alphabet Σ of size σ are a parameterized match iff X can be transformed to Y by renaming the character X[i] to the character Y[i] for 1 ≤ i ≤ |X| using a one-to-one function from the set of characters in X to the set of characters in Y. The parameterized text indexing problem is defined as: Index a text T of n characters over an alphabet set Σ of size σ, such that whenever a pattern P[1, p] comes as a query, we can report all occ parameterized occurrences of P in T. A position i ϵ [1, n] is a parameterized occurrence of P in T, iff P and T[i,(i+p-1)] are a parameterized match. We study an interesting generalization of this problem, where the pattern contains one wildcard character φ ∉ Σ that matches with any other character in Σ. Therefore, for a pattern P[1, p] = P1φP2, our task is to report all positions i in T, such that the string P_1 P_2 and the string obtained by concatenating T[i,(i+|P1|-1)] and T[(i+|P1|+1),(i+p-1)] are a parameterized match. We show that such queries can be answered in optimal O(p+occ) time per query using an O(n log n) space index. We then show how to compress our index into O(n log σ) space but with a higher query cost of O(p(log log n+logσ)+occ logσ). Arnab Ganguly 0002, Wing-Kai Hon, Solon P. Pissis, Rahul Shah 0001, Sharma V. Thankachan |
DCC | 5 |
| 2019 | Categorical Range Reporting with FrequenciesabstractIn this paper, we consider a variant of the color range reporting problem called color reporting with frequencies. Our goal is to pre-process a set of colored points into a data structure, so that given a query range Q, we can report all colors that appear in Q, along with their respective frequencies. In other words, for each reported color, we also output the number of times it occurs in Q. We describe an external-memory data structure that uses O(N(1+log^2D/log N)) words and answers one-dimensional queries in O(1 +K/B) I/Os, where N is the total number of points in the data structure, D is the total number of colors in the data structure, K is the number of reported colors, and B is the block size. Next we turn to an approximate version of this problem: report all colors sigma that appear in the query range; for every reported color, we provide a constant-factor approximation on its frequency. We consider color reporting with approximate frequencies in two dimensions. Our data structure uses O(N) space and answers two-dimensional queries in O(log_B N +log^*B + K/B) I/Os in the special case when the query range is bounded on two sides. As a corollary, we can also answer one-dimensional approximate queries within the same time and space bounds. Arnab Ganguly 0002, J. Ian Munro, Yakov Nekrich, Rahul Shah 0001, Sharma V. Thankachan |
ICDT | 4 |
| 2018 | A Linear-Space Data Structure for Range-LCP Queries in Poly-Logarithmic Time
Paniz Abedin, Arnab Ganguly 0002, Wing-Kai Hon, Yakov Nekrich, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
COCOON | 6 |
| 2018 | Dictionary Matching with a Bounded Gap in Pattern or in Text
Wing-Kai Hon, Tak Wah Lam, Rahul Shah 0001, Sharma V. Thankachan, Hing-Fung Ting |
Algorithmica | 3 |
| 2018 | A Linear Space Data Structure for Range LCP QueriesabstractRange LCP (longest common prefix) is an extension of the classical LCP problem and is defined as follows: Preprocess a string S[1...n] of n characters, such that whenever an interval [i, j] comes as a query, we can report max{|LCP(Sp, Sq)| | i ≤ p < q ≤ j} Here LCP(Sp, Sq) is the longest common pre fix of the suffixes of S starting at locations p and q, and |LCP(Sp, Sq)| is its length. This problem was first addressed by Amir et al. [ISAAC, 2011]. They showed that the query can be answered in O(log log n) time using an O(n log1+ɛ n) space data structure for an arbitrarily small constant ɛ > 0. In an attempt to reduce the space bound, they presented a linear space data structure of O(d log log n) query time, where d = (j − i + 1). In this paper, we present a new linear space data structure with an improved query time of O(dlogd(logn)1/2−ɛ). Arnab Ganguly 0002, Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
Fundam. Informaticae | 3 |
| 2018 | Ranked document retrieval for multiple patterns
Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 3 |
| 2017 | Stabbing Colors in One DimensionabstractGiven n horizontal segments, each associated with a color from [σ], the Categorical Segment Stabbing problem is to find the distinct K colors stabbed by a vertical line. When the end-points of the segments are distinct and lie in [1, 2n], we present an (2 + ε)n log σ + O(n)-bit index with O(K/ε) query time, where ε∈ (0, 1].When the end-points are arbitrary real numbers, a standard reduction to the above scenario improves the existing bounds of Janardan and Lopez. We also present results for few other variations: • reporting the top-k colors that are stabbed, where each color has a fixed priority. • handling these scenarios when the given segments form a tree range. Arnab Ganguly 0002, Wing-Kai Hon, Rahul Shah 0001 |
DCC | 3 |
| 2017 | Structural Pattern Matching - SuccinctlyabstractLet T be a text of length n containing characters from an alphabet \Sigma, which is the union of two disjoint sets: \Sigma_s containing static characters (s-characters) and \Sigma_p containing parameterized characters (p-characters). Each character in \Sigma_p has an associated complementary character from \Sigma_p. A pattern P (also over \Sigma) matches an equal-length substring $S$ of T iff the s-characters match exactly, there exists a one-to-one function that renames the p-characters in S to the p-characters in P, and if a p-character x is renamed to another p-character y then the complement of x is renamed to the complement of y. The task is to find the starting positions (occurrences) of all such substrings S. Previous indexing solution [Shibuya, SWAT 2000], known as Structural Suffix Tree, requires \Theta(n\log n) bits of space, and can find all occ occurrences in time O(|P|\log \sigma+ occ), where \sigma = |\Sigma|. In this paper, we present the first succinct index for this problem, which occupies n \log \sigma + O(n) bits and offers O(|P|\log\sigma+ occ\cdot \log n \log\sigma) query time. Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
ISAAC | 2 |
| 2017 | pBWT: Achieving Succinct Data Structures for Parameterized Pattern Matching and Related ProblemsabstractThe fields of succinct data structures and compressed text indexing have seen quite a bit of progress over the last two decades. An important achievement, primarily using techniques based on the Burrows-Wheeler Transform (BWT), was obtaining the full functionality of the suffix tree in the optimal number of bits. A crucial property that allows the use of BWT for designing compressed indexes is order-preserving suffix links. Specifically, the relative order between two suffixes in the subtree of an internal node is same as that of the suffixes obtained by truncating the first character of the two suffixes. Unfortunately, in many variants of the text-indexing problem, for e.g., parameterized pattern matching, 2D pattern matching, and order-isomorphic pattern matching, this property does not hold. Consequently, the compressed indexes based on BWT do not directly apply. Furthermore, a compressed index for any of these variants has been elusive throughout the advancement of the field of succinct data structures. We achieve a positive breakthrough on one such problem, namely the Parameterized Pattern Matching problem. Let T be a text that contains η characters from an alphabet Σ, which is the union of two disjoint sets: Ss containing static characters (s-characters) and Σρ containing parameterized characters (p-characters). A pattern P (also over Σ) matches an equal-length substring S of T iff the s-characters match exactly, and there exists a one-to-one function that renames the p-characters in S to that in P. The task is to find the starting positions (occurrences) of all such substrings S. Previous index [Baker, STOC 1993], known as Parameterized Suffix Tree, requires Θ(n log n) bits of space, and can find all occ occurrences in time O(|P| log σ + occ), where σ = |Σ|. We introduce an η log σ + O(n)-bit index with O(|P| log σ+ occ Log η log σ) query time. At the core, lies a new BWT-like transform, which we call the Parameterized Burrows-Wheeler Transform (pBWT). The techniques are extended to obtain a succinct index for the Parameterized Dictionary Matching problem of Idury and Schaffer [CPM, 1994]. Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
SODA | 2 |
| 2017 | Top-k Term-Proximity in Succinct Space
J. Ian Munro, Gonzalo Navarro 0001, Jesper Sindahl Nielsen, Rahul Shah 0001, Sharma V. Thankachan |
Algorithmica | 4 |
| 2017 | Space-time trade-offs for finding shortest unique substrings and maximal unique matches
Arnab Ganguly 0002, Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 3 |
| 2016 | Space-Efficient Dictionaries for Parameterized and Order-Preserving Pattern MatchingabstractLet S and S' be two strings of the same length.We consider the following two variants of string matching. * Parameterized Matching: The characters of S and S' are partitioned into static characters and parameterized characters. The strings are parameterized match iff the static characters match exactly and there exists a one-to-one function which renames the parameterized characters in S to those in S'. * Order-Preserving Matching: The strings are order-preserving match iff for any two integers i,j in [1,|S|], S[i] <= S[j] iff S'[i] <= S'[j]. Let P be a collection of d patterns {P_1, P_2, ..., P_d} of total length n characters, which are chosen from an alphabet Sigma. Given a text T, also over Sigma, we consider the dictionary indexing problem under the above definitions of string matching. Specifically, the task is to index P, such that we can report all positions j where at least one of the patterns P_i in P is a parameterized-match (resp. order-preserving match) with the same-length substring of $T$ starting at j. Previous best-known indexes occupy O(n * log(n)) bits and can report all occ positions in O(|T| * log(|Sigma|) + occ) time. We present space-efficient indexes that occupy O(n * log(|Sigma|+d) * log(n)) bits and reports all occ positions in O(|T| * (log(|Sigma|) + log_{|Sigma|}(n)) + occ) time for parameterized matching and in O(|T| * log(n) + occ) time for order-preserving matching. Arnab Ganguly 0002, Wing-Kai Hon, Kunihiko Sadakane, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 4 |
| 2016 | Probabilistic Threshold Indexing for Uncertain Strings
Sudip Biswas, Manish Patil, Sharma V. Thankachan, Rahul Shah 0001 |
EDBT | 4 |
| 2016 | Space-Time Trade-Offs for the Shortest Unique Substring ProblemabstractGiven a string X[1, n] and a position k in [1, n], the Shortest Unique Substring of X covering k, denoted by S_k, is a substring X[i, j] of X which satisfies the following conditions: (i) i leq k leq j, (ii) i is the only position where there is an occurrence of X[i, j], and (iii) j - i is minimized. The best-known algorithm [Hon et al., ISAAC 2015] can find S k for all k in [1, n] in time O(n) using the string X and additional 2n words of working space. Let tau be a given parameter. We present the following new results. For any given k in [1, n], we can compute S_k via a deterministic algorithm in O(n tau^2 log n tau) time using X and additional O(n/tau) words of working space. For every k in [1, n], we can compute S_k via a deterministic algorithm in O(n tau^2 log n/tau) time using X and additional O(n/tau) words and 4n + o(n) bits of working space. For both problems above, we present an O(n tau log^{c+1} n)-time randomized algorithm that uses n/ log c n words in addition to that mentioned above, where c geq 0 is an arbitrary constant. In this case, the reported string is unique and covers k, but with probability at most n^{-O(1)} , may not be the shortest. As a consequence of our techniques, we also obtain similar space-and-time tradeoffs for a related problem of finding Maximal Unique Matches of two strings [Delcher et al., Nucleic Acids Res. 1999]. Arnab Ganguly 0002, Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan |
ISAAC | 3 |
| 2016 | Linear-Space Data Structures for Range Frequency Queries on Arrays and Trees
Stephane Durocher, Rahul Shah 0001, Matthew Skala, Sharma V. Thankachan |
Algorithmica | 2 |
| 2015 | Ranked Document Retrieval with Forbidden Pattern
Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 3 |
| 2015 | Succinct Non-overlapping Indexing
Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 2 |
| 2015 | Dictionary Matching with Uneven Gaps
Wing-Kai Hon, Tak Wah Lam, Rahul Shah 0001, Sharma V. Thankachan, Hing-Fung Ting |
CPM | 3 |
| 2015 | Restricted Shortest Path in Temporal Graphs
Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001 |
DEXA (1) | 3 |
| 2015 | Forbidden Extension QueriesabstractDocument retrieval is one of the most fundamental problem in information retrieval. The objective is to retrieve all documents from a document collection that are relevant to an input pattern. Several variations of this problem such as ranked document retrieval, document listing with two patterns and forbidden patterns have been studied. We introduce the problem of document retrieval with forbidden extensions. Let D={T_1,T_2,...,T_D} be a collection of D string documents of n characters in total, and P^+ and P^- be two query patterns, where P^+ is a proper prefix of P^-. We call P^- as the forbidden extension of the included pattern P^+. A forbidden extension query < P^+,P^- > asks to report all occ documents in D that contains P^+ as a substring, but does not contain P^- as one. A top-k forbidden extension query < P^+,P^-,k > asks to report those k documents among the occ documents that are most relevant to P^+. We present a linear index (in words) with an O(|P^-| + occ) query time for the document listing problem. For the top-k version of the problem, we achieve the following results, when the relevance of a document is based on PageRank: - an O(n) space (in words) index with O(|P^-|log sigma+ k) query time, where sigma is the size of the alphabet from which characters in D are chosen. For constant alphabets, this yields an optimal query time of O(|P^-|+ k). - for any constant epsilon > 0, a |CSA| + |CSA^*| + Dlog frac{n}{D} + O(n) bits index with O(search(P)+ k cdot tsa cdot log ^{2+epsilon} n) query time, where search(P) is the time to find the suffix range of a pattern P, tsa is the time to find suffix (or inverse suffix) array value, and |CSA^*| denotes the maximum of the space needed to store the compressed suffix array CSA of the concatenated text of all documents, or the total space needed to store the individual CSA of each document. Sudip Biswas, Arnab Ganguly 0002, Rahul Shah 0001, Sharma V. Thankachan |
FSTTCS | 3 |
| 2015 | Shared-Constraint Range ReportingabstractOrthogonal range reporting is one of the classic and most fundamental data structure problems. (2,1,1) query is a 3 dimensional query with two-sided constraint on the first dimension and one sided constraint on each of the 2nd and 3rd dimension. Given a set of N points in three dimension, a particular formulation of such a (2,1,1) query (known as four-sided range reporting in three-dimension) asks to report all those K points within a query region [a, b]X(-infinity, c]X[d, infinity). These queries have overall 4 constraints. In Word-RAM model, the best known structure capable of answering such queries with optimal query time takes O(N log^{epsilon} N) space, where epsilon>0 is any positive constant. It has been shown that any external memory structure in optimal I/Os must use Omega(N log N/ log log_B N) space (in words), where B is the block size [Arge et al., PODS 1999]. In this paper, we study a special type of (2,1,1) queries, where the query parameters a and c are the same i.e., a=c. Even though the query is still four-sided, the number of independent constraints is only three. In other words, one constraint is shared. We call this as a Shared-Constraint Range Reporting (SCRR) problem. We study this problem in both internal as well as external memory models. In RAM model where coordinates can only be compared, we achieve linear-space and O(log N+K) query time solution, matching the best-known three dimensional dominance query bound. Whereas in external memory, we present a linear space structure with O(log_B N + log log N + K/B) query I/Os. We also present an I/O-optimal (i.e., O(log_B N+K/B) I/Os) data structure which occupies O(N log log N)-word space. We achieve these results by employing a novel divide and conquer approach. SCRR finds application in database queries containing sharing among the constraints. We also show that SCRR queries naturally arise in many well known problems such as top-k color reporting, range skyline reporting and ranked document retrieval. Sudip Biswas, Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
ICDT | 3 |
| 2015 | Geometric BWT: Compressed Text Indexing via Sparse Suffixes and Range Searching
Yu-Feng Chien, Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
Algorithmica | 3 |
| 2015 | Compressing Dictionary Matching Index via Sparsification Technique
Wing-Kai Hon, Tsung-Han Ku, Tak Wah Lam, Rahul Shah 0001, Siu-Lung Tam, Sharma V. Thankachan, Jeffrey Scott Vitter |
Algorithmica | 4 |
| 2015 | Succinct indexes for reporting discriminating and generic words
Sudip Biswas, Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
Theor. Comput. Sci. | 3 |
| 2014 | MapReduce based parallel suffix tree construction for human genomeabstractGenome indexing is the basis for many bioinformatics applications. Read mapping(sequence alignment) is one such application where the goal is to align millions of short reads against reference genome. Several tools are available for read mapping which rely on different indexing techniques to expedite the alignment process. However, many of these contemporary alignment programs are sequential, memory intensive and cannot be easily scaled for larger genomes. Suffix tree is one of the most widely used data structures for indexing strings (genomes). Building a scalable suffix-tree based tool is particularly challenging due to the difficulties involved in parallel construction of the suffix tree. Several suffix tree construction techniques have been proposed till date with focus on space-time tradeoff. Most of these existing works address the construction issue for uniprocessor and cannot be easily extended to utilize modern multi-processor systems. In this paper we investigate and propose a MapReduce based parallel construction of suffix tree. We demonstrate the performance of the algorithm over commodity cluster using up to 32 nodes each having 8GB of primary memory. Umesh Chandra Satish, Praveenkumar Kondikoppa, Seung-Jong Park, Manish Patil, Rahul Shah 0001 |
ICPADS | 5 |
| 2014 | Top- k Term-Proximity in Succinct Space
J. Ian Munro, Gonzalo Navarro 0001, Jesper Sindahl Nielsen, Rahul Shah 0001, Sharma V. Thankachan |
ISAAC | 4 |
| 2014 | Categorical range maxima queriesabstractGiven an array A[1...n] of n distinct elements from the set {1, 2, ..., n} a range maximum query RMQ(a, b) returns the highest element in A[a...b] along with its position. In this paper, we study a generalization of this classical problem called Categorical Range Maxima Query (CRMQ) problem, in which each element A[i] in the array has an associated category (color) given by C[i] ∈ [σ]. A query then asks to report each distinct color c appearing in C[a...b] along with the highest element (and its position) in A[a...b] with color c. Let pc denote the position of the highest element in A[a...b] with color c. We investigate two variants of this problem: a threshold version and a top-k version. In threshold version, we only need to output the colors with A[pc] more than the input threshold τ, whereas top-k variant asks for k colors with the highest A[pc] values. In the word RAM model, we achieve linear space structure along with O(k) query time, that can report colors in sorted order of A[•]. In external memory, we present a data structure that answers queries in optimal O(1+k/B) I/O's using almost-linear O(n log* n) space, as well as a linear space data structure with O(log* n + k/B) query I/Os. Here k represents the output size, log* n is the iterated logarithm of n and B is the block size. CRMQ has applications to document retrieval and categorical range reporting -- giving a one-shot framework to obtain improved results in both these problems. Our results for CRMQ not only improve the existing best known results for three-sided categorical range reporting but also overcome the hurdle of maintaining color uniqueness in the output set. Manish Patil, Sharma V. Thankachan, Rahul Shah 0001, Yakov Nekrich, Jeffrey Scott Vitter |
PODS | 3 |
| 2014 | Similarity joins for uncertain stringsabstractA string similarity join finds all similar string pairs between two input string collections. It is an essential operation in many applications, such as data integration and cleaning, and has been extensively studied for deterministic strings. Increasingly, many applications have to deal with imprecise strings or strings with fuzzy information in them. This work presents the first solution for answering similarity join queries over uncertain strings that implements possible-world semantics, using the edit distance as the measure of similarity. Given two collections of uncertain strings R, S, and input (k,τ), our task is to find string pairs (R,S) between collections such that $Pr(ed(R,S) ≤ k) > τ i.e., the probability of the edit distance between R and S being at most k is more than probability threshold τ. We can address the join problem by obtaining all strings in S that are similar to each string R in R. However, existing solutions for answering such similarity search queries on uncertain string databases only support a deterministic string as input. Exploiting these solutions would require exponentially many possible worlds of $R$ to be considered, which is not only ineffective but also prohibitively expensive. We propose various filtering techniques that give upper and (or) lower bound on Pr(ed(R,S) ≤ k) without instantiating possible worlds for either of the strings. We then incorporate these techniques into an indexing scheme and significantly reduce the filtering overhead. Further, we alleviate the verification cost of a string pair that survives pruning by using a trie structure which allows us to overlap the verification cost of exponentially many possible instances of the candidate string pair. Finally, we evaluate the effectiveness of the proposed approach by thorough practical experimentation. Manish Patil, Rahul Shah 0001 |
SIGMOD Conference | 2 |
| 2014 | Succinct Indexes for Reporting Discriminating and Generic Words
Sudip Biswas, Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
SPIRE | 3 |
| 2014 | Space-Efficient Frameworks for Top-k String RetrievalabstractThe inverted index is the backbone of modern web search engines. For each word in a collection of web documents, the index records the list of documents where this word occurs. Given a set of query words, the job of a search engine is to output a ranked list of the most relevant documents containing the query. However, if the query consists of an arbitrary string—which can be a partial word, multiword phrase, or more generally any sequence of characters—then word boundaries are no longer relevant and we need a different approach. In string retrieval settings, we are given a set D ={ d 1 , d 2 , d 3 , …, d D } of D strings with n characters in total taken from an alphabet set Σ = [σ], and the task of the search engine, for a given query pattern P of length p , is to report the “most relevant” strings in D containing P . The query may also consist of two or more patterns. The notion of relevance can be captured by a function score ( P , d r ), which indicates how relevant document d r is to the pattern P . Some example score functions are the frequency of pattern occurrences, proximity between pattern occurrences, or pattern-independent PageRank of the document. The first formal framework to study such kinds of retrieval problems was given by Muthukrishnan [SODA 2002]. He considered two metrics for relevance: frequency and proximity. He took a threshold-based approach on these metrics and gave data structures that use O ( n log n ) words of space. We study this problem in a somewhat more natural top- k framework. Here, k is a part of the query, and the top k most relevant (highest-scoring) documents are to be reported in sorted order of score. We present the first linear-space framework (i.e., using O ( n ) words of space) that is capable of handling arbitrary score functions with near-optimal O ( p + k log k ) query time. The query time can be made optimal O ( p + k ) if sorted order is not necessary. Further, we derive compact space and succinct space indexes (for some specific score functions). This space compression comes at the cost of higher query time. At last, we extend our framework to handle the case of multiple patterns. Apart from providing a robust framework, our results also improve many earlier results in index space or query time or both. Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
J. ACM | 2 |
| 2013 | Space-Efficient Construction Algorithm for the Circular Suffix Tree
Wing-Kai Hon, Tsung-Han Ku, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 3 |
| 2013 | Space-Efficient Construction Algorithm for the Circular Suffix TreeabstractHon et al. (2011) recently proposed a variant of suffix tree, called circular suffix tree, and showed that it can be compressed into succinct space and can be used to solve the circular dictionary matching problem efficiently. Although there are several efficient construction algorithms for the suffix tree in the literature, none of them can be applied directly to construct circular suffix tree due to the different nature of the patterns being indexed. Here, we give the first construction algorithm for the circular suffix tree, which takes O(n log n) time and requires O(n log σ + d log n)$ bits of working space, where n denotes the total length of the patterns in the dictionary, d denotes the number of patterns, and s denotes the alphabet size. Wing-Kai Hon, Tsung-Han Ku, Rahul Shah 0001, Sharma V. Thankachan |
DCC | 3 |
| 2013 | Faster Compressed Top-k Document RetrievalabstractLet D = {d1, d2,...dD} be a given collection of D string documents of total length n, our task is to index D, such that whenever a pattern P (of length p) and an integer k come as a query, those k documents in which P appears the most number of times can be listed efficiently. In this paper, we propose a compressed index taking 2|CSA| + D logn/D + O(D) + o(n) bits of space, which answers a query with O(tsalog k logϵn) per document report time. This improves the O(tsalog k log1+ϵn) per document report time of the previously best-known index with (asymptotically) the same space requirements [Belazzougui and Navarro, SPIRE 2011]. Here, |CSA| represents the size (in bits) of the compressed suffix array (CSA) of the text obtained by concatenating all documents in V, and tsais the time for decoding a suffix array value using the CSA. Wing-Kai Hon, Sharma V. Thankachan, Rahul Shah 0001, Jeffrey Scott Vitter |
DCC | 3 |
| 2013 | Top-k Document Retrieval in External Memory
Rahul Shah 0001, Cheng Sheng 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
ESA | 1 |
| 2013 | Top-k join queries: overcoming the curse of anti-correlationabstractThe existing heuristics for top-k join queries, aiming to minimize the scan-depth, rely heavily on scores and correlation of scores. It is known that for uniformly random scores between two relations of length n, scan-depth of √kn is required. Moreover, optimizing multiple criteria of selections that are anti-correlated may require scan-depth up to (n + k)/2. We build a linear space index, which in anticipation of worst-case queries maintains a subset of answers. Based on this, we achieve Õ(√kn) join trials i.e., average case performance even for the worst-case queries. The experimental evaluation shows superior performance against the well-known Rank-Join algorithm. Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
IDEAS | 2 |
| 2013 | Linear-Space Data Structures for Range Frequency Queries on Arrays and Trees
Stephane Durocher, Rahul Shah 0001, Matthew Skala, Sharma V. Thankachan |
MFCS | 2 |
| 2013 | Position-Restricted Substring Searching over Small Alphabets
Sudip Biswas, Tsung-Han Ku, Rahul Shah 0001, Sharma V. Thankachan |
SPIRE | 3 |
| 2013 | Top-k Color Queries on Tree Paths
Stephane Durocher, Rahul Shah 0001, Matthew Skala, Sharma V. Thankachan |
SPIRE | 2 |
| 2013 | Faster Range LCP Queries
Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
SPIRE | 2 |
| 2013 | Compressed property suffix trees
Wing-Kai Hon, Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
Inf. Comput. | 3 |
| 2013 | Faster compressed dictionary matching
Wing-Kai Hon, Tsung-Han Ku, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
Theor. Comput. Sci. | 3 |
| 2012 | Efficient Algorithm for Circular Burrows-Wheeler Transform
Wing-Kai Hon, Tsung-Han Ku, Chen-Hua Lu, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 4 |
| 2012 | Towards an Optimal Space-and-Query-Time Index for Top-k Document Retrieval
Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan |
CPM | 2 |
| 2012 | Document Listing for Queries with Excluded Pattern
Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
CPM | 2 |
| 2011 | Compressed Dictionary Matching with One ErrorabstractGiven a set D of d patterns of total length n, the dictionary matching problem is to index D such that for any query text T, we can locate the occurrences of any pattern within T efficiently. This problem can be solved in optimal O(|T|+occ) time by the classical AC automaton (Aho and Corasick, 1975) where occ denotes the number of occurrences. The space requirement is O(n) words. In the {approximate} dictionary matching problem with one error, we consider a substring of T[i..j] an occurrence of P whenever the edit distance between T[i..j] and P is at most one. For this problem, the best known indexes are by Cole et al. (2004), which requires O(n+ d\log{d}) words of space and reports all occurrences in O(|T|\log{d}\log{\log{d}}+occ) time, and by Ferragina et al. (1999), which requires O(n^{1+\epsilon}) words of space and reports all occurrences in O(|T|\log\log n + occ) time. Recently, there have been successes in compressing the dictionary matching index while keeping the query time optimal (Belazzougui, 2010, Hon et al., 2010). However, a compressed index for approximate dictionary matching problem is still open. In this paper, we propose the first such index which requires an optimal nH_k+O(n)+o(n\log\sigma)-bit index space, where H_k denotes the kth-order empirical entropy of \D, and \sigma is the size of alphabet set from which all the characters in \D and T are drawn. The query time of our index is O(σ|T|log3n log \ log n + occ). Wing-Kai Hon, Tsung-Han Ku, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
DCC | 3 |
| 2011 | Compressed Property Suffix TreesabstractProperty matching is a biologically motivated problem where the task is to find those occurrences of an online pattern P in a string text T (of size n), such that the matched part in T satisfies some conceptual property. The property of a string is a set π of (possibly overlapping) intervals {(s1, f1), (s2, f2),⋯} corresponding to the part of T, and an occurrence of a pattern P at T[i..(i + |P| - 1)] is a valid output under the property π only if T[i..(i + |P| - 1)] is completely contained in some interval (sj, fj) ∈ π. Algorithmically this problem can be solved in time linear to the size of text. Amir et al. (2008) introduced the indexing version of this problem, where they preprocess the text in O(n log σ + n log log n) time and maintain an O(n log n) bits index, named Property Suffix Tree (PST), where σ denotes the alphabet size. PST can perform property matching in optimal O(|P| log σ + occπ) time, where occπis the number of occurrences of P in T which satisfies the property. Later, Iliopoulos and Rahman (2008) proposed an alternative index which can be constructed in linear time. Recently Kopelowitz (2010) considered the dynamic version of this problem where intervals can be added or deleted. However, all these indexes requires space of O(n log n) bits, which can be much more than the size of the text (n log σ bits). In this paper, we propose the first index for property matching which takes space close to the entropy compressed space requirement of the text. Our compressed index takes |CSA| + n(2 + ∈ + o(1)) bits space and can perform query answering in O(t(|P|) + 1/∈ occπtSA) time, where |CSA| is the size of compressed suffix array (CSA), t(|P|) and tSAare the time for searching a pattern of length |P| and the time for computing the suffix array value using CSA, respectively, and e is a constant. We also introduce a dynamic index, taking |CSA| + n(2 + ∈ + o(1)) + O(|π|log n) bits of space, which can perform query answering in O(t(|P|) + 1/∈ occπ(log n/log log n + tSA) log n) time and can update (insert or delete) an interval (s, f) in O((f - s + 1)(log n + log |π| + tSA)) time. Wing-Kai Hon, Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
DCC | 3 |
| 2011 | Succinct Indexes for Circular Patterns
Wing-Kai Hon, Chen-Hua Lu, Rahul Shah 0001, Sharma V. Thankachan |
ISAAC | 3 |
| 2011 | Inverted indexes for phrases and stringsabstractInverted indexes are the most fundamental and widely used data structures in information retrieval. For each unique word occurring in a document collection, the inverted index stores a list of the documents in which this word occurs. Compression techniques are often applied to further reduce the space requirement of these lists. However, the index has a shortcoming, in that only predefined pattern queries can be supported efficiently. In terms of string documents where word boundaries are undefined, if we have to index all the substrings of a given document, then the storage quickly becomes quadratic in the data size. Also, if we want to apply the same type of indexes for querying phrases or sequence of words, then the inverted index will end up storing redundant information. In this paper, we show the first set of inverted indexes which work naturally for strings as well as phrase searching. The central idea is to exclude document d in the inverted list of a string P if every occurrence of P in d is subsumed by another string of which P is a prefix. With this we show that our space utilization is close to the optimal. Techniques from succinct data structures are deployed to achieve compression while allowing fast access in terms of frequency and document id based retrieval. Compression and speed trade-offs are evaluated for different variants of the proposed index. For phrase searching, we show that our indexes compare favorably against a typical inverted index deploying position-wise intersections. We also show efficient top-k based retrieval under relevance metrics like frequency and tf-idf. Manish Patil, Sharma V. Thankachan, Rahul Shah 0001, Wing-Kai Hon, Jeffrey Scott Vitter, Sabrina Chandrasekaran |
SIGIR | 3 |
| 2011 | Compressed Text Indexing with Wildcards
Wing-Kai Hon, Tsung-Han Ku, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
SPIRE | 3 |
| 2011 | A Truly Dynamic Data Structure for Top-k Queries on Uncertain Data
Manish Patil, Rahul Shah 0001, Sharma V. Thankachan |
SSDBM | 2 |
| 2011 | Cache-oblivious index for approximate string matching
Wing-Kai Hon, Tak Wah Lam, Rahul Shah 0001, Siu-Lung Tam, Jeffrey Scott Vitter |
Theor. Comput. Sci. | 3 |
| 2010 | PSI-RA: A parallel sparse index for read alignment on genomesabstractWe concentrate on indexing DNA sequences via sparse suffix arrays (SSAs) and propose a new short read aligner named PSI-RA (parallel sparse index read aligner). The motivation in using SSAs is the ability to trade memory against time. It is possible to tune the space consumption of the index based on the available memory of the machine and the minimum length of the arriving pattern queries. Although SSAs have been studied before on exact matching of short reads, an elegant way of approximate matching capability was missing. We provide this by defining the right-most mismatch criteria that prioritizes the errors towards the end of the reads since it is known that the errors are more probable at that area. PSI-RA supports any number of mismatches in aligning reads. We give comparisons with some of the well known short read aligners, and show that indexing genome with SSA is a good alternative to Burrows-Wheeler transform or seed based solutions. M. Oguzhan Külekci, Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter, Bojian Xu |
BIBM | 3 |
| 2010 | Compression, Indexing, and Retrieval for Massive String Data
Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter |
CPM | 2 |
| 2010 | I/O-Efficient Compressed Text Indexes: From Theory to PracticeabstractPattern matching on text data has been a fundamental field of Computer Science for nearly 40 years. Databases supporting full-text indexing functionality on text data are now widely used by biologists. In the theoretical literature, the most popular internal-memory index structures are the suffix trees and the suffix arrays, and the most popular external-memory index structure is the string B-tree. However, the practical applicability of these indexes has been limited mainly because of their space consumption and I/O issues. These structures use a lot more space (almost 20 to 50 times more) than the original text data and are often disk-resident. Ferragina and Manzini (2005) and Grossi and Vitter (2005) gave the first compressed text indexes with efficient query times in the internal-memory model. Recently, Chien et al (2008) presented a compact text index in the external memory based on the concept of Geometric Burrows-Wheeler Transform. They also presented lower bounds which suggested that it may be hard to obtain a good index structure in the external memory. In this paper, we investigate this issue from a practical point of view. On the positive side we show an external-memory text indexing structure (based on R-trees and KD-trees) that saves space by about an order of magnitude as compared to the standard String B-tree. While saving space, these structures also maintain a comparable I/O efficiency to that of String B-tree. We also show various space vs I/O efficiency trade-offs for our structures. Sheng-Yuan Chiu, Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter |
DCC | 3 |
| 2010 | Faster Compressed Dictionary Matching
Wing-Kai Hon, Tsung-Han Ku, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
SPIRE | 3 |
| 2010 | String Retrieval for Multi-pattern Queries
Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
SPIRE | 2 |
| 2009 | Space-Efficient Framework for Top-k String Retrieval ProblemsabstractGiven a set D={d1, d2,..., dD} of D strings of total length n, our task is to report the "most relevant"strings for a given query pattern P. This involves somewhat more advanced query functionality than the usual pattern matching, as some notion of "most relevant" is involved. In information retrieval literature, this task is best achieved by using inverted indexes. However, inverted indexes work only for some predefined set of patterns. In the pattern matching community, the most popular pattern-matching data structures are suffix trees and suffix arrays. However, a typical suffix tree search involves going through all the occurrences of the pattern over the entire string collection, which might be a lot more than the required relevant documents. The first formal framework to study such kind of retrieval problems was given by Muthukrishnan. He considered two metrics for relevance: frequency and proximity. He took a threshold-based approach on these metrics and gave data structures taking O(n log n) words of space. We study this problem in a slightly different framework of reporting the top k most relevant documents (in sorted order) under similar and more general relevance metrics. Our framework gives linear space data structure with optimal query times for arbitrary score functions. As a corollary, it improves the space utilization for the problems in while maintaining optimal query performance. We also develop compressed variants of these data structures for several specific relevance metrics. Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter |
FOCS | 2 |
| 2009 | Succinct Index for Dynamic Dictionary Matching
Wing-Kai Hon, Tak Wah Lam, Rahul Shah 0001, Siu-Lung Tam, Jeffrey Scott Vitter |
ISAAC | 3 |
| 2009 | On Entropy-Compressed Text Indexing in External Memory
Wing-Kai Hon, Rahul Shah 0001, Sharma V. Thankachan, Jeffrey Scott Vitter |
SPIRE | 2 |
| 2009 | Efficient Index for Retrieving Top-k Most Frequent Documents
Wing-Kai Hon, Rahul Shah 0001, Shih-Bin Wu |
SPIRE | 2 |
| 2008 | Geometric Burrows-Wheeler Transform: Linking Range Searching and Text IndexingabstractWe introduce a new variant of the popular Burrows-Wheeler transform (BWT) called geometric Burrows-Wheeler transform (GBWT). Unlike BWT, which merely permutes the text, GBWT converts the text into a set of points in 2-dimensional geometry. Using this transform, we can answer to many open questions in compressed text indexing: (1) can compressed data structures be designed in external memory with similar performance as the uncompressed counterparts? (2) Can compressed data structures be designed for position restricted pattern matching [16]? We also introduce a reverse transform, called Points2Text; which converts a set of points into text. This transform allows us to derive the first known lower bounds in compressed text indexing. We show strong equivalence between data structural problems in geometric range searching and text pattern matching. This provides a way to derive new results in compressed text indexing by translating the results from range searching. Yu-Feng Chien, Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter |
DCC | 3 |
| 2008 | Compressed Index for Dictionary MatchingabstractThe past few years have witnessed several exciting results on compressed representation of a string T that supports efficient pattern matching, and the space complexity has been reduced to |T| Hk(T) + o (|T| log sigma) bits, where Hk(T) denotes the kth-order empirical entropy of T, and sigma is the size of the alphabet. In this paper we study compressed representation for another classical problem of string indexing, which is called dictionary matching in the literature. Precisely, a collection D of strings (called patterns) of total length n is to be indexed so that given a text T, the occurrences of the patterns in T can be found efficiently. In this paper we show how to exploit a sampling technique to compress the existingO(n)-word index to an (n Hk(D) + o(n log sigma))-bit index with only a small sacrifice in search time. Wing-Kai Hon, Tak Wah Lam, Rahul Shah 0001, Siu-Lung Tam, Jeffrey Scott Vitter |
DCC | 3 |
| 2008 | The SBC-tree: an index for run-length compressed sequencesabstractRun-Length-Encoding (RLE) is a data compression technique that is used in various applications, e.g., time series, biological sequences, and multimedia databases. One of the main challenges is how to operate on (e.g., index, search, and retrieve) compressed data without decompressing it. In this paper, we introduce the String B-tree for Compressed sequences, termed the SBC-tree, for indexing and searching RLE-compressed sequences of arbitrary length. The SBC-tree is a two-level index structure based on the well-known String B-tree and a 3-sided range query structure [7]. The SBC-tree supports pattern matching queries such as substring matching, prefix matching, and range search operations over RLE-compressed sequences. The SBC-tree has an optimal external-memory space complexity of O(N/B) pages, where N is the total length of the compressed sequences, and B is the disk page size. Substring matching, prefix matching, and range search execute in an optimal O(logB N + |p|+T/B) I/O operations, where |p| is the length of the compressed query pattern and T is the query output size. The SBC-tree is also dynamic and supports insert and delete operations efficiently. The insertion and deletion of all suffixes of a compressed sequence of length m take O(m logB(N + m)) amortized I/O operations. The SBC-tree index is realized inside PostgreSQL. Performance results illustrate that using the SBC-tree to index RLE-compressed sequences achieves up to an order of magnitude reduction in storage, while retains the optimal search performance achieved by the String B-tree over the uncompressed sequences. Mohamed Y. Eltabakh, Wing-Kai Hon, Rahul Shah 0001, Walid G. Aref, Jeffrey Scott Vitter |
EDBT | 3 |
| 2008 | Database Support for Probabilistic Attributes and TuplesabstractThe inherent uncertainty of data present in numerous applications such as sensor databases, text annotations, and information retrieval motivate the need to handle imprecise data at the database level. Uncertainty can be at the attribute or tuple level and is present in both continuous and discrete data domains. This paper presents a model for handling arbitrary probabilistic uncertain data (both discrete and continuous) natively at the database level. Our approach leads to a natural and efficient representation for probabilistic data. We develop a model that is consistent with possible worlds semantics and closed under basic relational operators. This is the first model that accurately and efficiently handles both continuous and discrete uncertainty. The model is implemented in a real database system (PostgreSQL) and the effectiveness and efficiency of our approach is validated experimentally. Sarvjeet Singh, Chris Mayfield, Rahul Shah 0001, Sunil Prabhakar 0001, Susanne E. Hambrusch, Jennifer Neville, Reynold Cheng |
ICDE | 3 |
| 2008 | On searching compressed string collections cache-obliviouslyabstractCurrent data structures for searching large string collections either fail to achieve minimum space or cause too many cache misses. In this paper we discuss some edge linearizations of the classic trie data structure that are simultaneously cache-friendly and compressed. We provide new insights on front coding [24], introduce other novel linearizations, and study how close their space occupancy is to the information-theoretic minimum. The moral is that they are not just heuristics. Our second contribution is a novel dictionary encoding scheme that builds upon such linearizations and achieves nearly optimal space, offers competitive I/O-search time, and is also conscious of the query distribution. Finally, we combine those data structures with cache-oblivious tries [2, 5] and obtain a succinct variant whose space is close to the information-theoretic minimum. Paolo Ferragina, Roberto Grossi, Ankur Gupta 0003, Rahul Shah 0001, Jeffrey Scott Vitter |
PODS | 4 |
| 2008 | Orion 2.0: native support for uncertain dataabstractOrion is a state-of-the-art uncertain database management system with built-in support for probabilistic data as first class data types. In contrast to other uncertain databases, Orion supports both attribute and tuple uncertainty with arbitrary correlations. This enables the database engine to handle both discrete and continuous pdfs in a natural and accurate manner. The underlying model is closed under the basic relational operators and is consistent with Possible Worlds Semantics. We demonstrate how Orion simplifies the design and enhances the capabilities of two example applications: managing sensor data (continuous uncertainty) and inferring missing values (discrete uncertainty). Sarvjeet Singh, Chris Mayfield, Sagar Mittal, Sunil Prabhakar 0001, Susanne E. Hambrusch, Rahul Shah 0001 |
SIGMOD Conference | 6 |
| 2008 | Tight competitive ratios for parallel disk prefetching and cachingabstractWe consider the natural extension of the well-known single disk caching problem to the parallel disk I/O model (PDM) [17]. The main challenge is to achieve as much parallelism as possible and avoid I/O bottlenecks. We are given a fast memory (cache) of size M memory blocks along with a request sequence Σ =(b1,b2,...,bn) where each block bi resides on one of D disks. In each parallel I/O step, at most one block from each disk can be fetched. The task is to serve Σ in the minimum number of parallel I/Os. Thus, each I/O is analogous to a page fault. The difference here is that during each page fault, up to D blocks can be brought into memory, as long as all of the new blocks entering the memory reside on different disks. The problem has a long history [18, 12, 13, 26]. Note that this problem is non-trivial even if all requests in Σ are unique. This restricted version is called read-once. Despite the progress in the offline version [13, 15] and read-once version [12], the general online problem still remained open. Here, we provide comprehensive results with a full general solution for the problem with asymptotically tight competitive ratios. Wing-Kai Hon, Rahul Shah 0001, Peter J. Varman, Jeffrey Scott Vitter |
SPAA | 2 |
| 2008 | Query Selectivity Estimation for Uncertain Data
Sarvjeet Singh, Chris Mayfield, Rahul Shah 0001, Sunil Prabhakar 0001, Susanne E. Hambrusch |
SSDBM | 3 |
| 2007 | Cache-Oblivious Index for Approximate String Matching
Wing-Kai Hon, Tak Wah Lam, Rahul Shah 0001, Siu-Lung Tam, Jeffrey Scott Vitter |
CPM | 3 |
| 2007 | A Framework for Dynamizing Succinct Data Structures
Ankur Gupta 0003, Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter |
ICALP | 3 |
| 2007 | Indexing Uncertain Categorical DataabstractUncertainty in categorical data is commonplace in many applications, including data cleaning, database integration, and biological annotation. In such domains, the correct value of an attribute is often unknown, but may be selected from a reasonable number of alternatives. Current database management systems do not provide a convenient means for representing or manipulating this type of uncertainty. In this paper we extend traditional systems to explicitly handle uncertainty in data values. We propose two index structures for efficiently searching uncertain categorical data, one based on the R-tree and another based on an inverted index structure. Using these structures, we provide a detailed description of the probabilistic equality queries they support. Experimental results using real and synthetic datasets demonstrate how these index structures can effectively improve the performance of queries through the use of internal probabilistic information. Sarvjeet Singh, Chris Mayfield, Sunil Prabhakar 0001, Rahul Shah 0001, Susanne E. Hambrusch |
ICDE | 4 |
| 2007 | Compressed data structures: Dictionaries and data-aware measures
Ankur Gupta 0003, Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter |
Theor. Comput. Sci. | 3 |
| 2006 | Efficient join processing over uncertain dataabstractIn many applications data values are inherently uncertain. This includes moving-objects, sensors and biological databases. There has been recent interest in the development of database management systems that can handle uncertain data. Some proposals for such systems include attribute values that are uncertain. In particular, an attribute value can be modeled as a range of possible values, associated with a probability density function. Previous efforts for this type of data have only addressed simple queries such as range and nearest-neighbor queries. Queries that join multiple relations have not been addressed in earlier work despite the significance of joins in databases. In this paper we address join queries over uncertain data. We propose a semantics for the join operation, define probabilistic operators over uncertain data, and propose join algorithms that provide efficient execution of probabilistic joins. The paper focuses on an important class of joins termed probabilistic threshold joins that avoid some of the semantic complexities of dealing with uncertain data. For this class of joins we develop three sets of optimization techniques: item-level, page-level, and index-level pruning. These techniques facilitate pruning with little space and time overhead, and are easily adapted to most join algorithms. We verify the performance of these techniques experimentally. Reynold Cheng, Sarvjeet Singh, Sunil Prabhakar 0001, Rahul Shah 0001, Jeffrey Scott Vitter, Yuni Xia |
CIKM | 4 |
| 2006 | Compressed Data Structures: Dictionaries and Data-Aware MeasuresabstractWe propose measures for compressed data structures, in which space usage is measured in a data-aware manner. In particular, we consider the fundamental dictionary problem on set data, where the task is to construct a data structure to represent a set S of n items out of a universe U = {0,..., u $1} and support various queries on S. We use a well-known data-aware measure for set data called gap to bound the space of our data structures. We describe a novel dictionary structure taking gap+O(n log(u/n)/ log n)+O(n log log(u/n)) bits. Under the RAM model, our dictionary supports membership, rank, select, and predecessor queries in nearly optimal time, matching the time bound of Andersson and Thorup's predecessor structure (2000), while simultaneously improving upon their space usage. Our dictionary structure uses exactly gap bits in the leading term (i.e., the constant factor is 1) and answers queries in near-optimal time. When seen from the worst case perspective, we present the first O(n log(u/n))-bit dictionary structure which supports these queries in near-optimal time under RAM model. We also build a dictionary which requires the same space and supports membership, select, and partial rank queries even more quickly in O(loglogn) time. To the best of our knowledge, this is the first of a kind result which achieves data-aware space usage and retains near-optimal time. Ankur Gupta 0003, Wing-Kai Hon, Rahul Shah 0001, Jeffrey Scott Vitter |
DCC | 3 |
| 2006 | Adaptive rank-aware query optimization in relational databasesabstractRank-aware query processing has emerged as a key requirement in modern applications. In these applications, efficient and adaptive evaluation of top-kqueries is an integral part of the application semantics. In this article, we introduce a rank-aware query optimization framework that fully integrates rank-join operators into relational query engines. The framework is based on extending the System R dynamic programming algorithm in both enumeration and pruning. We define ranking as an interesting physical property that triggers the generation of rank-aware query plans. Unlike traditional join operators, optimizing for rank-join operators depends on estimating the input cardinality of these operators. We introduce a probabilistic model for estimating the input cardinality, and hence the cost of a rank-join operator. To our knowledge, this is the first effort in estimating the needed input size for optimal rank aggregation algorithms. Costing ranking plans is key to the full integration of rank-join operators in real-world query processing engines.Since optimal execution strategies picked by static query optimizers lose their optimality due to estimation errors and unexpected changes in the computing environment, we introduce several adaptive execution strategies for top-kqueries that respond to these unexpected changes and costing errors. Our reactive reoptimization techniques change the execution plan at runtime to significantly enhance the performance of running queries. Since top-kquery plans are usually pipelined and maintain a complex ranking state, altering the execution strategy of a running ranking query is an important and challenging task.We conduct an extensive experimental study to evaluate the performance of the proposed framework. The experimental results are twofold: (1) we show the effectiveness of our cost-based approach of integrating ranking plans in dynamic programming cost-based optimizers; and (2) we show a significant speedup (up to 300%) when using our adaptive execution of ranking plans over the state-of-the-art mid-query reoptimization strategies. Ihab F. Ilyas, Walid G. Aref, Ahmed K. Elmagarmid, Hicham G. Elmongui, Rahul Shah 0001, Jeffrey Scott Vitter |
ACM Trans. Database Syst. | 5 |
| 2005 | Change Tolerant Indexing for Constantly Evolving DataabstractIndex structures are designed to optimize search performance, while at the same time supporting efficient data updates. Although not explicit, existing index structures are typically based upon the assumption that the rate of updates will be small compared to the rate of querying. This assumption is not valid in streaming data environments such as sensor and moving object databases, where updates are received incessantly. In fact, for many applications, the rate of updates may well exceed the rate of querying. In such environments, index structures suffer from poor performance due to the large overhead of keeping the index updated with the latest data. Recent efforts at indexing moving object data assume objects move in a restrictive manner (e.g. in straight lines with constant velocity). In this paper, we propose an index structure explicitly designed to perform well for both querying and updating. We assume a more relaxed model of object movement. In particular, we observe that objects often stay in a region (e.g., building) for an extended amount of time, and exploit this phenomenon to optimize an index for both updates and queries. The paper is developed with the example of R-trees, but the ideas can be extended to other index structures as well. We present the design of the change tolerant R-tree, and an experimental evaluation. Reynold Cheng, Yuni Xia, Sunil Prabhakar 0001, Rahul Shah 0001 |
ICDE | 4 |
| 2005 | On competitive online read-many parallel disks schedulingabstractWe consider the natural extension of the single disk caching problem to parallel disk I/O model. We close the existing gap between lower and upper bounds and achieve optimal competitive ratio of O(√D) when lookahead is more than the memory size M. When lookahead is smaller, we derive various upper bounds and lower bounds on the competitive ratio under various adversarial models. Rahul Shah 0001, Peter J. Varman, Jeffrey Scott Vitter |
SPAA | 1 |
| 2004 | Bulk Operations for Space-Partitioning TreesabstractThe emergence of extensible index structures, e.g., GiST (generalized search tree) [J.M. Hellerstein et al. (1995)] and SP-GiST (space-partitioning generalized search tree) [W. G Aref et al., (2001)], calls for a set of extensible algorithms to support different operations (e.g., insertion, deletion, and search). Extensible bulk operations (e.g., bulk loading and bulk insertion) are of the same importance and need to be supported in these index engines. In this paper, we propose two extensible buffer-based algorithms for bulk operations in the class of space-partitioning trees; a class of hierarchical data structures that recursively decompose the space into disjoint partitions. The main idea of these algorithms is to build an in-memory tree of the target space-partitioning index. Then, data items are recursively partitioned into disk-based buffers using the in-memory tree. Although the second algorithm is designed for bulk insertion, it can be used in bulk loading as well. The proposed extensible algorithms are implemented inside SP-GiST; a framework for supporting the class of space-partitioning trees. Both algorithms have I/O bound O(NH/B), where N is the number of data items to be bulk loaded/inserted, B is the number of tree nodes that can fit in one disk page, H is the tree height in terms of pages after applying a clustering algorithm. Experimental results are provided to show the scalability and applicability of the proposed algorithms for the class of space-partitioning trees. A comparison of the two proposed algorithms shows that the first algorithm performs better in case of bulk loading. However the second algorithm is more general and can be used for efficient bulk insertion. Thanaa M. Ghanem, Rahul Shah 0001, Mohamed F. Mokbel, Walid G. Aref, Jeffrey Scott Vitter |
ICDE | 2 |
| 2004 | Rank-aware Query OptimizationabstractRanking is an important property that needs to be fully supported by current relational query engines. Recently, several rank-join query operators have been proposed based on rank aggregation algorithms. Rank-join operators progressively rank the join results while performing the join operation. The new operators have a direct impact on traditional query processing and optimization.We introduce a rank-aware query optimization framework that fully integrates rank-join operators into relational query engines. The framework is based on extending the System R dynamic programming algorithm in both enumeration and pruning. We define ranking as an interesting property that triggers the generation of rank-aware query plans. Unlike traditional join operators, optimizing for rank-join operators depends on estimating the input cardinality of these operators. We introduce a probabilistic model for estimating the input cardinality, and hence the cost of a rank-join operator. To our knowledge, this paper is the first effort in estimating the needed input size for optimal rank aggregation algorithms. Costing ranking plans, although challenging, is key to the full integration of rank-join operators in real-world query processing engines. We experimentally evaluate our framework by modifying the query optimizer of an open-source database management system. The experiments show the validity of our framework and the accuracy of the proposed estimation model. Ihab F. Ilyas, Rahul Shah 0001, Walid G. Aref, Jeffrey Scott Vitter, Ahmed K. Elmagarmid |
SIGMOD Conference | 2 |
| 2004 | Online algorithms for prefetching and caching on parallel disksabstractParallel disks provide a cost effective way of speeding up I/Os in applications that work with large amounts of data. The main challenge is to achieve as much parallelism as possible, using prefetching to avoid bottlenecks in disk access. Efficient algorithms have been developed for some particular patterns of accessing the disk blocks. In this paper, we consider general request sequences. When the request sequence consists of unique block requests, the problem is called prefetching and is a well-solved problem for arbitrary request sequences. When the reference sequence can have repeated references to the same block, we need to devise an effective caching policy as well. While optimum offline algorithms have been recently designed for the problem, in the online case, no effective algorithm was previously known. Our main contribution is a deterministic online algorithm threshold-LRU which achieves O((MD/L)2/3) competitive ratio and a randomized online algorithm threshold-MARK which achieves O(√(MD/L) log (MD/L)) competitive ratio for the caching/prefetching problem on the parallel disk model (PDM), where D is the number of disks, M is the size of fast memory buffer, and M+L is the amount of lookahead available in the request sequence. The best-known lower bound on the competitive ratio is Ω(≾MD/L) for lookahead L ≥ M in both models. We also show that if the deterministic online algorithm is allowed to have twice the memory of the offline then a tight competitive ratio of Θ(≾MD/L) can be achieved. This problem generalizes the well-known paging problem on a single disk to the parallel disk model. Rahul Shah 0001, Peter J. Varman, Jeffrey Scott Vitter |
SPAA | 1 |
| 2004 | Mining Deviants in Time Series Data Streams
S. Muthukrishnan 0001, Rahul Shah 0001, Jeffrey Scott Vitter |
SSDBM | 2 |
| 2004 | Efficient Indexing Methods for Probabilistic Threshold Queries over Uncertain Data
Reynold Cheng, Yuni Xia, Sunil Prabhakar 0001, Rahul Shah 0001, Jeffrey Scott Vitter |
VLDB | 4 |
| 2004 | Efficient Dissemination of Personalized Information Using Content-Based MulticastabstractThere has been a surge of interest in the delivery of personalized information to users (e.g., personalized stocks or travel information), particularly as mobile users with limited terminal device capabilities increasingly desire updated and targeted information in real time. When the number of information recipients is large and there is sufficient commonality in their interests, as is often the case, IP multicast is an efficient way of delivering the information. However, IP multicast services do not consider the structure and semantics of the information in the multicast process. We propose the use of Content-Based Multicast (CBM) where extra content filtering is performed at the interior nodes of the IP multicast tree; this will reduce network bandwidth usage and delivery delay, as well as the computation required at the sources and sinks. We evaluate the situations in which CBM is advantageous. The benefits of CBM depend critically upon how well filters are placed at interior nodes of the IP multicast tree and the costs depend upon those introduced by filters themselves. Further, we consider the benefits of allowing the filters to be mobile so as to respond to user mobility or changes in user interests and the corresponding costs of filter mobility. The criterion that we consider is the total network bandwidth utilization. For this criterion, we develop an optimal filter placement algorithm, as well as a heuristic that executes faster than the optimal algorithm. We evaluate the algorithms by means of simulation experiments. Our results indicate that filters can be effective in substantially reducing bandwidth. We also find filter mobility is worthwhile if there is marked large-scale user mobility. We conclude with suggestions for further work. Rahul Shah 0001, Zulfikar Ramzan, Ravi Jain, Raghu Dendukuri, Farooq Anjum |
IEEE Trans. Mob. Comput. | 1 |
| 2002 | Efficient Dissemination of Personalized Information Using Content-Based MulticastabstractIn this paper we evaluate the situations in which CBM is advantageous. The benefits of CBM depend critically upon how well filters are placed at interior nodes of the IP multicast tree, and the costs depend upon those introduced by filters themselves. Further, we consider the benefits of allowing the filters to be mobile so as to respond to user mobility or changes in user interests, and the corresponding costs of filter mobility. We consider two criteria: minimizing total network bandwidth utilization and minimizing mean information delivery delay. For each criterion we develop an optimal filter placement algorithm, as well as a heuristic that executes faster than the optimal algorithm. Finally, we evaluate all the algorithms by means of simulation experiments. Our results indicate that filters can be effective in substantially reducing bandwidth and delay. We also find filter mobility is worthwhile if there is sufficient locality in the interests of users, or there is marked large-scale user mobility. We conclude with suggestions for further work. Rahul Shah 0001, Ravi Jain, Farooq Anjum |
INFOCOM | 1 |
| 2002 | Undiscretized dynamic programming: faster algorithms for facility location and related problems on trees
Rahul Shah 0001, Martin Farach-Colton |
SODA | 1 |
| 2001 | Algorithms for Efficient Filtering in Content-Based Multicast
Stefan Langerman, Sachin Lodha, Rahul Shah 0001 |
ESA | 3 |
| 2001 | On the midpath tree conjuncture: a counter-example
Rahul Shah 0001, Martin Farach-Colton |
SODA | 1 |