Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Christopher Olston

dblp:o/ChristopherOlston · also Chris Olston · DBLP profile ↗
← Back
44ranked-venue papers
16as first author
0since 2021 · last 2016
—ORCID · none

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

Databases, data management, data science and information retrieval · 35 · 14 first-authorApplied, interdisciplinary, general and emerging computing · 6 · 1 first-authorSystems, architecture and hardware · 4 · 1 first-authorTheory of computation · 3Artificial intelligence and machine learning · 2Human-computer interaction and ubiquitous computing · 1 · 1 first-author

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

Databases, data mining, and information retrieval
28 papers
Information retrieval · 35% Data integration and cleaning · 17% Query processing and optimization · 16%
Computer architecture, parallel and distributed computing, and storage systems
13 papers
Cloud and datacenter computing · 25% Parallel and multicore computing · 23% Distributed systems · 20%
Theoretical computer science
3 papers
Algorithmic game theory and mechanism design · 65% Approximation and online algorithms · 19% Algorithms and data structures · 14%

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

TopicWeightPapersLastEvidence papers
Distributed and cloud data management
mapreduce
0.332011
Inspector gadget: a framework for custom monitoring and debugging of distributed dataflows · SIGMOD Conference 2011
Nova: continuous Pig/Hadoop workflows · SIGMOD Conference 2011
Pig latin: a not-so-foreign language for data processing · SIGMOD Conference 2008
Information retrieval › search engines
web crawling
0.342008
Recrawl scheduling based on information longevity · WWW 2008
Crawl ordering by search impact · WSDM 2008
The discoverability of the web · WWW 2007
Data integration and cleaning › data discovery
dataset discovery
0.212016
Goods: Organizing Google's Datasets · SIGMOD Conference 2016
Data integration and cleaning › metadata management
metadata extraction
0.212016
Goods: Organizing Google's Datasets · SIGMOD Conference 2016
Information retrieval
ranking
0.232011
Search result diversity for informational queries · WWW 2011
Shuffling a Stacked Deck: The Case for Partially Randomized Ranking of Search Engine Results · VLDB 2005
Crawl ordering by search impact · WSDM 2008
Information retrieval
retrieval models
0.232011
Relaxation in text search using taxonomies · Proc. VLDB Endow. 2008
Navigationaided retrieval · WWW 2007
Search result diversity for informational queries · WWW 2011
Cloud and datacenter computing
cluster resource management and scheduling
0.212014
SpongeFiles: mitigating data skew in mapreduce using distributed memory · SIGMOD Conference 2014
High-performance computing
distributed memory systems
0.212014
SpongeFiles: mitigating data skew in mapreduce using distributed memory · SIGMOD Conference 2014
Parallel and multicore computing
skew mitigation
0.212014
SpongeFiles: mitigating data skew in mapreduce using distributed memory · SIGMOD Conference 2014
Query processing and optimization
query result caching
0.222008
Scalable query result caching for web applications · Proc. VLDB Endow. 2008
Invalidation Clues for Database Scalability Services · ICDE 2007
Data stream processing
distributed data streams
0.132005
Finding (Recently) Frequent Items in Distributed Data Streams · ICDE 2005
Adaptive Filters for Continuous Queries over Distributed Data Streams · SIGMOD Conference 2003
Distributed Top-K Monitoring · SIGMOD Conference 2003
Data integration and cleaning
data pipeline debugging
0.112011
Inspector gadget: a framework for custom monitoring and debugging of distributed dataflows · SIGMOD Conference 2011
Information retrieval › ranking › multi-objective ranking
diversity-aware ranking
0.112011
Search result diversity for informational queries · WWW 2011
Information retrieval
search result diversification
0.112011
Search result diversity for informational queries · WWW 2011
Parallel and multicore computing › parallel computation models
distributed dataflow
0.112011
Inspector Gadget: A Framework for Custom Monitoring and Debugging of Distributed Dataflows · Proc. VLDB Endow. 2011
Distributed systems › observability
monitoring and debugging
0.112011
Inspector Gadget: A Framework for Custom Monitoring and Debugging of Distributed Dataflows · Proc. VLDB Endow. 2011
Distributed systems › consistency models
cache consistency
0.122008
Scalable query result caching for web applications · Proc. VLDB Endow. 2008
Best-effort cache synchronization with source cooperation · SIGMOD Conference 2002
Query processing and optimization
aggregate query processing
0.122008
Parallel Evaluation of Composite Aggregate Queries · ICDE 2008
Offering a Precision-Performance Tradeoff for Aggregation Queries over Replicated Data · VLDB 2000
Data stream processing
continuous query processing
0.132003
Adaptive Filters for Continuous Queries over Distributed Data Streams · SIGMOD Conference 2003
Distributed Top-K Monitoring · SIGMOD Conference 2003
CONTROL: Continuous Output and Navigation Technology with Refinement On-Line · SIGMOD Conference 1998
Distributed and cloud data management
dataflow program
0.112009
Generating example data for dataflow programs · SIGMOD Conference 2009
Query processing and optimization
query compilation
0.112009
Building a HighLevel Dataflow System on top of MapReduce: The Pig Experience · Proc. VLDB Endow. 2009
Distributed and cloud data management
distributed query processing
0.112008
Parallel Evaluation of Composite Aggregate Queries · ICDE 2008
Query processing and optimization › query rewriting
query relaxation
0.112008
Relaxation in text search using taxonomies · Proc. VLDB Endow. 2008
Information retrieval › search engines › web crawling
recrawl scheduling
0.112008
Recrawl scheduling based on information longevity · WWW 2008
Cloud and datacenter computing › datacenter workloads
batch processing
0.112008
Scheduling shared scans of large data files · Proc. VLDB Endow. 2008
Storage systems › i/o scheduling › disk scheduling
SCAN scheduling
0.112008
Scheduling shared scans of large data files · Proc. VLDB Endow. 2008
Query processing and optimization
approximate query processing
0.122005
Finding (Recently) Frequent Items in Distributed Data Streams · ICDE 2005
CONTROL: Continuous Output and Navigation Technology with Refinement On-Line · SIGMOD Conference 1998
Distributed and cloud data management
large-scale data management
0.112016
Goods: Organizing Google's Datasets · SIGMOD Conference 2016
Recommender systems
content discovery
0.112007
The discoverability of the web · WWW 2007
Information retrieval › search engines › web crawling
crawl scheduling
0.112007
The discoverability of the web · WWW 2007

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

relationship inference · 0.2metadata crawling · 0.2sampling · 0.2distributed memory management · 0.2invalidation clues · 0.1encryption · 0.1probabilistic subtopic modeling · 0.1diversification algorithm · 0.1custom monitoring · 0.1static analysis of database segments · 0.1simulation · 0.1custom map/reduce functions · 0.1SQL-style constructs · 0.1sliding window aggregation · 0.1scheduling policy design · 0.1publish-subscribe · 0.1proxy-based cooperative caching · 0.1partitioning optimization · 0.1
YearPublicationVenuePosition
2016 Goods: Organizing Google's Datasets
abstract
Enterprises increasingly rely on structured datasets to run their businesses. These datasets take a variety of forms, such as structured files, databases, spreadsheets, or even services that provide access to the data. The datasets often reside in different storage systems, may vary in their formats, may change every day. In this paper, we present GOODS, a project to rethink how we organize structured datasets at scale, in a setting where teams use diverse and often idiosyncratic ways to produce the datasets and where there is no centralized system for storing and querying them. GOODS extracts metadata ranging from salient information about each dataset (owners, timestamps, schema) to relationships among datasets, such as similarity and provenance. It then exposes this metadata through services that allow engineers to find datasets within the company, to monitor datasets, to annotate them in order to enable others to use their datasets, and to analyze relationships between them. We discuss the technical challenges that we had to overcome in order to crawl and infer the metadata for billions of datasets, to maintain the consistency of our metadata catalog at scale, and to expose the metadata to users. We believe that many of the lessons that we learned are applicable to building large-scale enterprise-level data-management systems in general.
Alon Y. Halevy, Flip Korn, Natasha F. Noy, Christopher Olston, Neoklis Polyzotis, Sudip Roy 0002, Steven Euijong Whang
SIGMOD Conference4
2014 SpongeFiles: mitigating data skew in mapreduce using distributed memory
abstract
Data skew is a major problem for data processing platforms like MapReduce. Skew causes worker tasks to spill to disk what they cannot fit in memory, which slows down the task and the overall job. Moreover, performance of other jobs sharing same disk degrades. In many cases, this situation occurs even as the cluster has plenty of spare memory it is just not used evenly. We introduce SpongeFiles, a novel distributed-memory abstraction tailored to data processing environments like MapReduce. A SpongeFile is a logical byte array, comprised of large chunks that can be stored in a variety of locations in the cluster. Spilled data goes to SpongeFiles, which route it to the nearest location with sufficient capacity (local memory, remote memory, local disk, or remote disk as a last resort). By enabling memory-sapped nodes to tap into the spare capacity of their neighbors, SpongeFiles minimize expensive disk spilling, thereby improving performance. In our experiments with Hadoop and Pig, SpongeFiles reduce overall job runtimes by up to 55% and by up to 85% under disk contention.
Khaled Elmeleegy, Christopher Olston, Benjamin C. Reed
SIGMOD Conference2
2011 Ibis: A Provenance Manager for Multi-Layer Systems
Christopher Olston, Anish Das Sarma
CIDR1
2011 CoScan: cooperative scan sharing in the cloud
abstract
We present CoScan, a scheduling framework that eliminates redundant processing in workflows that scan large batches of data in a map-reduce computing environment. CoScan merges Pig programs from multiple users at runtime to reduce I/O contention while adhering to soft deadline requirements in scheduling. This includes support for join workflows that operate on multiple data sources. Our solution maps well to workflows at many Internet companies which reuse data from a common set of inputs. Experiments on the PigMix data analytics benchmark exhibit orders of magnitude reduction in resource contention with minimal impact on latency.
Christopher Olston, Anish Das Sarma, Randal C. Burns
SoCC2
2011 Nova: continuous Pig/Hadoop workflows
abstract
This paper describes a workflow manager developed and deployed at Yahoo called Nova, which pushes continually-arriving data through graphs of Pig programs executing on Hadoop clusters. (Pig is a structured dataflow language and runtime for the Hadoop map-reduce system.)
Christopher Olston, Greg Chiou, Laukik Chitnis, Francis Liu, Yiping Han, Mattias Larsson, Andreas Neumann 0001, Vellanki B. N. Rao, Vijayanand Sankarasubramanian, Siddharth Seth, Topher ZiCornell
SIGMOD Conference1
2011 Inspector gadget: a framework for custom monitoring and debugging of distributed dataflows
abstract
We demonstrate a novel dataflow introspection framework called Inspector Gadget, which makes it easy to create custom monitoring and debugging add-ons to an existing dataflow engine such as Pig. The framework is motivated by a series of informal user interviews, which revealed that dataflow monitoring and debugging needs are both pressing and diverse. Of the 14 monitoring/debugging behaviors requested by users, we were able to implement 12 in Inspector Gadget, in just a few hundred lines of (Java) code each.
Christopher Olston, Benjamin C. Reed
SIGMOD Conference1
2011 Search result diversity for informational queries
abstract
Ambiguous queries constitute a significant fraction of search instances and pose real challenges to web search engines. With current approaches the top results for these queries tend to be homogeneous, making it difficult for users interested in less popular aspects to find relevant documents. While existing research in search diversification offers several solutions for introducing variety into the results, the majority of such work is predicated, implicitly or otherwise, on the assumption that a single relevant document will fulfill a user's information need, making them inadequate for many informational queries. In this paper we present a search-diversification algorithm particularly suitable for informational queries by explicitly modeling that the user may need more than one page to satisfy their need. This modeling enables our algorithm to make a well-informed tradeoff between a user's desire for multiple relevant documents, probabilistic information about an average user's interest in the subtopics of a multifaceted query, and uncertainty in classifying documents into those subtopics. We evaluate the effectiveness of our algorithm against commercial search engine results and other modern ranking strategies, demonstrating notable improvement in multiple document scenarios.
Michael J. Welch, Junghoo Cho, Christopher Olston
WWW3
2011 Inspector Gadget: A Framework for Custom Monitoring and Debugging of Distributed Dataflows
Christopher Olston, Benjamin C. Reed
Proc. VLDB Endow.1
2010 Stateful bulk processing for incremental analytics
abstract
This work addresses the need for stateful dataflow programs that can rapidly sift through huge, evolving data sets. These data-intensive applications perform complex multi-step computations over successive generations of data inflows, such as weekly web crawls, daily image/video uploads, log files, and growing social networks. While programmers may simply re-run the entire dataflow when new data arrives, this is grossly inefficient, increasing result latency and squandering hardware resources and energy. Alternatively, programmers may use prior results to incrementally incorporate the changes. However, current large-scale data processing tools, such as Map-Reduce or Dryad, limit how programmers incorporate and use state in data-parallel programs. Straightforward approaches to incorporating state can result in custom, fragile code and disappointing performance.
Dionysios Logothetis, Christopher Olston, Benjamin C. Reed, Kevin C. Webb 0001, Ken Yocum
SoCC2
2009 Interactive Analysis of Web-Scale Data
Christopher Olston, Edward Bortnikov, Khaled Elmeleegy, Flavio Paiva Junqueira, Benjamin C. Reed
CIDR1
2009 Generating example data for dataflow programs
abstract
While developing data-centric programs, users often run (portions of) their programs over real data, to see how they behave and what the output looks like. Doing so makes it easier to formulate, understand and compose programs correctly, compared with examination of program logic alone. For large input data sets, these experimental runs can be time-consuming and inefficient. Unfortunately, sampling the input data does not always work well, because selective operations such as filter and join can lead to empty results over sampled inputs, and unless certain indexes are present there is no way to generate biased samples efficiently. Consequently new methods are needed for generating example input data for data-centric programs.
Christopher Olston, Shubham Chopra, Utkarsh Srivastava
SIGMOD Conference1
2009 Building a HighLevel Dataflow System on top of MapReduce: The Pig Experience
abstract
Increasingly, organizations capture, transform and analyze enormous data sets. Prominent examples include internet companies and e-science. The Map-Reduce scalable dataflow paradigm has become popular for these applications. Its simple, explicit dataflow programming model is favored by some over the traditional high-level declarative approach: SQL. On the other hand, the extreme simplicity of Map-Reduce leads to much low-level hacking to deal with the many-step, branching dataflows that arise in practice. Moreover, users must repeatedly code standard operations such as join by hand. These practices waste time, introduce bugs, harm readability, and impede optimizations. Pig is a high-level dataflow system that aims at a sweet spot between SQL and Map-Reduce. Pig offers SQL-style high-level data manipulation constructs, which can be assembled in an explicit dataflow and interleaved with custom Map- and Reduce-style functions or executables. Pig programs are compiled into sequences of Map-Reduce jobs, and executed in the Hadoop Map-Reduce environment. Both Pig and Hadoop are open-source projects administered by the Apache Software Foundation. This paper describes the challenges we faced in developing Pig, and reports performance comparisons between Pig execution and raw Map-Reduce execution.
Alan Gates, Olga Natkovich, Shubham Chopra, Pradeep Kamath, Shravan Narayanam, Christopher Olston, Benjamin C. Reed, Santhosh Srinivasan, Utkarsh Srivastava
Proc. VLDB Endow.6
2008 Parallel Evaluation of Composite Aggregate Queries
abstract
Aggregate measures summarizing subsets of data are valuable in exploratory analysis and decision support, especially when dependent aggregations can be easily specified and computed. A novel class of queries, called composite subset measures, was previously introduced to allow correlated aggregate queries to be easily expressed. This paper considers how to evaluate composite subset measure queries using a large distributed system. We describe a cross-node data redistribution strategy that takes into account the nested structure of a given query. The main idea is to group data into blocks in "cube space", such that aggregations can be generated locally within each block, leveraging previously proposed optimizations per-block. The partitioning scheme allows overlap among blocks so that sliding window aggregation can be handled. Furthermore, it also guarantees that the final answer is the union of local results with no duplication and there is no need for the expensive data combination step. We identify the most important partitioning parameters and propose an optimization algorithm. We also demonstrate effectiveness of the optimizer to minimize the query response time.
Lei Chen 0003, Christopher Olston, Raghu Ramakrishnan 0001
ICDE2
2008 Pig latin: a not-so-foreign language for data processing
abstract
There is a growing need for ad-hoc analysis of extremely large data sets, especially at internet companies where innovation critically depends on being able to analyze terabytes of data collected every day. Parallel database products, e.g., Teradata, offer a solution, but are usually prohibitively expensive at this scale. Besides, many of the people who analyze this data are entrenched procedural programmers, who find the declarative, SQL style to be unnatural. The success of the more procedural map-reduce programming model, and its associated scalable implementations on commodity hardware, is evidence of the above. However, the map-reduce paradigm is too low-level and rigid, and leads to a great deal of custom user code that is hard to maintain, and reuse.
Christopher Olston, Benjamin C. Reed, Utkarsh Srivastava, Ravi Kumar 0001, Andrew Tomkins
SIGMOD Conference1
2008 Automatic Optimization of Parallel Dataflow Programs
Christopher Olston, Benjamin C. Reed, Adam Silberstein, Utkarsh Srivastava
USENIX ATC1
2008 Crawl ordering by search impact
abstract
We study how to prioritize the fetching of new pages under the objective of maximizing the quality of search results. In particular, our objective is to fetch new pages that have the most impact, where the impact of a page is equal to the number of times the page appears in the top K search results for queries, for some constant K, e.g., K = 10. Since the impact of a page depends on its relevance score for queries, which in turn depends on the page content, the main difficulty lies in estimating the impact of the page before actually fetching it. Hence, impact must be estimated based on the limited information that is available prior to fetching page content, e.g., the URL string, number of in-links, referring anchortext
Sandeep Pandey, Christopher Olston
WSDM2
2008 Recrawl scheduling based on information longevity
abstract
It is crucial for a web crawler to distinguish between ephemeral and persistent content. Ephemeral content (e.g., quote of the day) is usually not worth crawling, because by the time it reaches the index it is no longer representative of the web page from which it was acquired. On the other hand, content that persists across multiple page updates (e.g., recent blog postings) may be worth acquiring, because it matches the page's true content for a sustained period of time.
Christopher Olston, Sandeep Pandey
WWW1
2008 Scheduling shared scans of large data files
abstract
We study how best to schedule scans of large data files, in the presence of many simultaneous requests to a common set of files. The objective is to maximize the overall rate of processing these files, by sharing scans of the same file as aggressively as possible, without imposing undue wait time on individual jobs. This scheduling problem arises in batch data processing environments such as Map-Reduce systems, some of which handle tens of thousands of processing requests daily, over a shared set of files. As we demonstrate, conventional scheduling techniques such as shortest-job-first do not perform well in the presence of cross-job sharing opportunities. We derive a new family of scheduling policies specifically targeted to sharable workloads. Our scheduling policies revolve around the notion that, all else being equal, it is good to schedule nonsharable scans ahead of ones that can share IO work with future jobs, if the arrival rate of sharable future jobs is expected to be high. We evaluate our policies via simulation over varied synthetic and real workloads, and demonstrate significant performance gains compared with conventional scheduling approaches.
Parag Agrawal, Daniel Kifer, Christopher Olston
Proc. VLDB Endow.3
2008 Relaxation in text search using taxonomies
abstract
In this paper we propose a novel document retrieval model in which text queries are augmented with multi-dimensional taxonomy restrictions. These restrictions may be relaxed at a cost to result quality. This new model may be applicable in many arenas, including multifaceted, product, and local search, where documents are augmented with hierarchical metadata such as topic or location. We present efficient algorithms for indexing and query processing in this new retrieval model. We decompose query processing into two sub-problems: first, an online search problem to determine the correct overall level of relaxation cost that must be incurred to generate the top k results; and second, a budgeted relaxation search problem in which all results at a particular relaxation cost must be produced at minimal cost. We show the latter problem is solvable exactly in two hierarchical dimensions, is NP-hard in three or more dimensions, but admits efficient approximation algorithms with provable guarantees. We present experimental results evaluating our algorithms on both synthetic and real data, showing order of magnitude improvements over the baseline algorithm.
Marcus Fontoura, Vanja Josifovski, Ravi Kumar 0001, Christopher Olston, Andrew Tomkins, Sergei Vassilvitskii
Proc. VLDB Endow.4
2008 Scalable query result caching for web applications
abstract
The backend database system is often the performance bottleneck when running web applications. A common approach to scale the database component is query result caching, but it faces the challenge of maintaining a high cache hit rate while efficiently ensuring cache consistency as the database is updated. In this paper we introduce Ferdinand, the first proxy-based cooperative query result cache with fully distributed consistency management. To maintain a high cache hit rate, Ferdinand uses both a local query result cache on each proxy server and a distributed cache. Consistency management is implemented with a highly scalable publish/subscribe system. We implement a fully functioning Ferdinand prototype and evaluate its performance compared to several alternative query-caching approaches, showing that our high cache hit rate and consistency management are both critical for Ferdinand's performance gains over existing systems.
Charles Garrod, Amit Manjhi, Anastasia Ailamaki, Bruce M. Maggs, Todd C. Mowry, Christopher Olston, Anthony Tomasic
Proc. VLDB Endow.6
2007 Invalidation Clues for Database Scalability Services
abstract
For their scalability needs, data-intensive Web applications can use a database scalability service (DBSS), which caches applications' query results and answers queries on their behalf. One way for applications to address their security/privacy concerns when using a DBSS is to encrypt all data that passes through the DBSS. Doing so, however, causes the DBSS to invalidate large regions of its cache when data updates occur. To invalidate more precisely, the DBSS needs help in order to know which results to invalidate; such help inevitably reveals some properties about the data. In this paper, we present invalidation clues, a general technique that enables applications to reveal little data to the DBSS, yet limit the number of unnecessary invalidations. Compared with previous approaches, invalidation clues provide applications significantly improved tradeoffs between security/privacy and scalability. Our experiments using three Web application benchmarks, on a prototype DBSS we have built, confirm that invalidation clues are indeed a low-overhead, effective, and general technique for applications to balance their privacy and scalability needs.
Amit Manjhi, Phillip B. Gibbons, Anastasia Ailamaki, Charles Garrod, Bruce M. Maggs, Todd C. Mowry, Christopher Olston, Anthony Tomasic
ICDE7
2007 Configurations: a model for distributed data storage
abstract
No abstract available.
Bobji Mungamuru, Hector Garcia-Molina, Christopher Olston
PODC3
2007 The discoverability of the web
abstract
Previous studies have highlighted the high arrival rate of new contenton the web. We study the extent to which this new content can beefficiently discovered by a crawler. Our study has two parts. First,we study the inherent difficulty of the discovery problem using amaximum cover formulation, under an assumption of perfect estimates oflikely sources of links to new content. Second, we relax thisassumption and study a more realistic setting in which algorithms mustuse historical statistics to estimate which pages are most likely toyield links to new content. We recommend a simple algorithm thatperforms comparably to all approaches we consider.We measure the emphoverhead of discovering new content, defined asthe average number of fetches required to discover one new page. Weshow first that with perfect foreknowledge of where to explore forlinks to new content, it is possible to discover 90% of all newcontent with under 3% overhead, and 100% of new content with 9%overhead. But actual algorithms, which do not have access to perfectforeknowledge, face a more difficult task: one quarter of new contentis simply not amenable to efficient discovery. Of the remaining threequarters, 80% of new content during a given week may be discoveredwith 160% overhead if content is recrawled fully on a monthly basis.
Anirban Dasgupta 0001, Arpita Ghosh, Ravi Kumar 0001, Christopher Olston, Sandeep Pandey, Andrew Tomkins
WWW4
2007 Navigationaided retrieval
abstract
Users searching for information in hypermedia environments often perform querying followed by manual navigation. Yet, the conventional text/hypertext retrieval paradigm does not explicity take post-query navigation into account. This paper proposes a new retrieval paradigm, called navigation-aided retrieval (NAR), which treats both querying and navigation as first-class activities. In the NAR paradigm, querying is seen as a means to identify starting points for navigation, and navigation is guided based on information supplied in the query. NAR is a generalization of the conventional probabilistic information retrieval paradigm, which implicitly assumes no navigation takes place. This paper presents a formal model for navigation-aided retrieval, and reports empirical results that point to the real-world applicability of the model. The experiments were performed over a large Web corpus provided by TREC, using human judgments on a new rating scale developed for navigation-aided retrieval. In the case of ambiguous queries, the new retrieval model identifies good starting points for post-query navigation. For less ambiguous queries that need not be paired with navigation, the output closely matches that of a conventional retrieval system.
Shashank Pandit, Christopher Olston
WWW2
2006 Handling Advertisements of Unknown Quality in Search Advertising
abstract
We consider how a search engine should select advertisements to display with search results, in order to maximize its revenue. Under the standard "pay-per-click" arrangement, revenue depends on how well the displayed advertisements appeal to users. The main difficulty stems from new advertisements whose degree of appeal has yet to be determined. Often the only reliable way of determining appeal is exploration via display to users, which detracts from exploitation of other advertisements known to have high appeal. Budget constraints and finite advertisement lifetimes make it necessary to explore as well as exploit. In this paper we study the tradeoff between exploration and exploitation, modeling advertisement placement as a multi-armed bandit problem. We extend traditional bandit formulations to account for budget constraints that occur in search engine advertising markets, and derive theoretical bounds on the performance of a family of algorithms. We measure empirical performance via extensive experiments over real-world data.
Sandeep Pandey, Christopher Olston
NIPS2
2006 Simultaneous scalability and security for data-intensive web applications
abstract
For Web applications in which the database component is the bottleneck, scalability can be provided by a third-party Database Scalability Service Provider (DSSP) that caches application data and supplies query answers on behalf of the application. Cost-effective DSSPs will need to cache data from many applications, inevitably raising concerns about security. However, if all data passing through a DSSP is encrypted to enhance security, then data updates trigger invalidation of large regions of cache. Consequently, achieving good scalability becomes virtually impossible. There is a tradeoff between security and scalability, which requires careful consideration.In this paper we study the security-scalability tradeoff, both formally and empirically. We begin by providing a method for statically identifying segments of the database that can be encrypted without impacting scalability. Experiments over a prototype DSSP system show the effectiveness of our static analysis method--for all three realistic bench-mark applications that we study, our method enables a significant fraction of the database to be encrypted without impacting scalability. Moreover, most of the data that can be encrypted without impacting scalability is of the type that application designers will want to encrypt, all other things being equal. Based on our static analysis method, we propose a new scalability-conscious security design methodology that features: (a) compulsory encryption of highly sensitive data like credit card information, and (b) encryption of data for which encryption does not impair scalability. As a result, the security-scalability tradeoff needs to be considered only over data for which encryption impacts scalability, thus greatly simplifying the task of managing the tradeoff.
Amit Manjhi, Anastasia Ailamaki, Bruce M. Maggs, Todd C. Mowry, Christopher Olston, Anthony Tomasic
SIGMOD Conference5
2005 A Scalability Service for Dynamic Web Applications
Christopher Olston, Amit Manjhi, Charles Garrod, Anastasia Ailamaki, Bruce M. Maggs, Todd C. Mowry
CIDR1
2005 Finding (Recently) Frequent Items in Distributed Data Streams
abstract
We consider the problem of maintaining frequency counts for items occurring frequently in the union of multiple distributed data streams. Naive methods of combining approximate frequency counts from multiple nodes tend to result in excessively large data structures that are costly to transfer among nodes. To minimize communication requirements, the degree of precision maintained by each node while counting item frequencies must be managed carefully. We introduce the concept of a precision gradient for managing precision when nodes are arranged in a hierarchical communication structure. We then study the optimization problem of how to set the precision gradient so as to minimize communication, and provide optimal solutions that minimize worst-case communication load over all possible inputs. We then introduce a variant designed to perform well in practice, with input data that does not conform to worst-case characteristics. We verify the effectiveness of our approach empirically using real-world data, and show that our methods incur substantially less communication than naive approaches while providing the same error guarantees on answers.
Amit Manjhi, Vladislav Shkapenyuk, Kedar Dhamdhere, Christopher Olston
ICDE4
2005 Shuffling a Stacked Deck: The Case for Partially Randomized Ranking of Search Engine Results
Sandeep Pandey, Sourashis Roy, Christopher Olston, Junghoo Cho, Soumen Chakrabarti
VLDB3
2005 User-centric Web crawling
abstract
Search engines are the primary gateways of information access on the Web today. Behind the scenes, search engines crawl the Web to populate a local indexed repository of Web pages, used to answer user search queries. In an aggregate sense, the Web is very dynamic, causing any repository of Web pages to become out of date over time, which in turn causes query answer quality to degrade. Given the considerable size, dynamicity, and degree of autonomy of the Web as a whole, it is not feasible for a search engine to maintain its repository exactly synchronized with the Web. In this paper we study how to schedule Web pages for selective (re)downloading into a search engine repository. The scheduling objective is to maximize the quality of the user experience for those who query the search engine. We begin with a quantitative characterization of the way in which the discrepancy between the content of the repository and the current content of the live Web impacts the quality of the user experience. This characterization leads to a usercentric metric of the quality of a search engine’s local repository. We use this metric to derive a policy for scheduling Web page (re)downloading that is driven by search engine usage and free of exterior tuning parameters. We then focus on the important subproblem of scheduling refreshing of Web pages already present in the repository, and show how to compute the priorities efficiently. We provide extensive empirical comparisons of our user-centric method against prior Web page refresh strategies, using real Web data. Our results demonstrate that our method requires far fewer resources to maintain same search engine quality level for users, leaving substantially more resources available for incorporating new Web pages into the search repository.
Sandeep Pandey, Christopher Olston
WWW2
2004 WIC: A General-Purpose Algorithm for Monitoring Web Information Sources
Sandeep Pandey, Kedar Dhamdhere, Christopher Olston
VLDB3
2004 What's new on the web?: the evolution of the web from a search engine perspective
abstract
We seek to gain improved insight into how Web search engines shouldcope with the evolving Web, in an attempt to provide users with themost up-to-date results possible. For this purpose we collectedweekly snapshots of some 150 Web sites over the course of one year,and measured the evolution of content and link structure. Our measurements focus on aspects of potential interest to search engine designers: the evolution of link structure over time, the rate ofcreation of new pages and new distinct content on the Web, and the rate of change of the content of existing pages under search-centric measures of degree of change.Our findings indicate a rapid turnover rate of Web pages, i.e.,high rates of birth and death, coupled with an even higher rate ofturnover in the hyperlinks that connect them. For pages that persistover time we found that, perhaps surprisingly, the degree of contentshift as measured using TF.IDF cosine distance does not appear to beconsistently correlated with the frequency of contentupdating. Despite this apparent non-correlation, the rate of content shift of a given page is likely to remain consistent over time. That is, pages that change a great deal in one week will likely change by a similarly large degree in the following week. Conversely, pages that experience little change will continue to experience little change. We conclude the paper with a discussion of the potential implications ofour results for the design of effective Web search engines.
Alexandros Ntoulas, Junghoo Cho, Christopher Olston
WWW3
2003 Query Processing, Approximation, and Resource Management in a Data Stream Management System
Rajeev Motwani 0001, Jennifer Widom, Arvind Arasu, Brian Babcock, Shivnath Babu, Mayur Datar, Gurmeet Singh Manku, Christopher Olston, Justin Rosenstein, Rohit Varma
CIDR8
2003 Distributed Top-K Monitoring
abstract
The querying and analysis of data streams has been a topic of much recent interest, motivated by applications from the fields of networking, web usage analysis, sensor instrumentation, telecommunications, and others. Many of these applications involve monitoring answers to continuous queries over data streams produced at physically distributed locations, and most previous approaches require streams to be transmitted to a single location for centralized processing. Unfortunately, the continual transmission of a large number of rapid data streams to a central location can be impractical or expensive. We study a useful class of queries that continuously report the k largest values obtained from distributed data streams ("top-k monitoring queries"), which are of particular interest because they can be used to reduce the overhead incurred while running other types of monitoring queries. We show that transmitting entire data streams is unnecessary to support these queries and present an alternative approach that reduces communication significantly. In our approach, arithmetic constraints are maintained at remote stream sources to ensure that the most recently provided top-k answer remains valid to within a user-specified error tolerance. Distributed communication is only necessary on occasion, when constraints are violated, and we show empirically through extensive simulation on real-world data that our approach reduces overall communication cost by an order of magnitude compared with alternatives that o#er the same error guarantees.
Brian Babcock, Christopher Olston
SIGMOD Conference2
2003 Adaptive Filters for Continuous Queries over Distributed Data Streams
abstract
We consider an environment where distributed data sources continuously stream updates to a centralized processor that monitors continuous queries over the distributed data. Significant communication overhead is incurred in the presence of rapid update streams, and we propose a new technique for reducing the overhead. Users register continuous queries with precision requirements at the central stream processor, which installs filters at remote data sources. The filters adapt to changing conditions to minimize stream rates while guaranteeing that all continuous queries still receive the updates necessary to provide answers of adequate precision at all times. Our approach enables applications to trade precision for communication overhead at a fine granularity by individually adjusting the precision constraints of continuous queries over streams in a multi-query workload. Through experiments performed on synthetic data simulations and a real network monitoring implementation, we demonstrate the effectiveness of our approach in achieving low communication overhead compared with alternate approaches.
Christopher Olston, Jing Jiang 0029, Jennifer Widom
SIGMOD Conference1
2003 Computing Shortest Paths with Uncertainty
Tomás Feder, Rajeev Motwani 0001, Liadan O'Callaghan, Christopher Olston, Rina Panigrahy
STACS4
2003 Computing the Median with Uncertainty
abstract
We consider a new model for computing with uncertainty. It is desired to compute a function f(X 1 ,. . .,X n ), where X 1 , . . ., X n are unknown but guaranteed to lie in specified intervals I 1 , . . ., I n . It is possible to query the precise value of any X j at a cost c j . The goal is to pin down the value of f to within a precision $\delta$ at a minimum possible cost. We focus on the selection function f which returns the value of the kth smallest argument. We present optimal offline and online algorithms for this problem.
Tomás Feder, Rajeev Motwani 0001, Rina Panigrahy, Christopher Olston, Jennifer Widom
SIAM J. Comput.4
2003 ScentTrails: Integrating browsing and searching on the Web
abstract
The two predominant paradigms for finding information on the Web are browsing and keyword searching. While they exhibit complementary advantages, neither paradigm alone is adequate for complex information goals that lend themselves partially to browsing and partially to searching. To integrate browsing and searching smoothly into a single interface, we introduce a novel approach called ScentTrails. Based on the concept of information scent developed in the context of information foraging theory, ScentTrails highlights hyperlinks to indicate paths to search results. This interface enables users to interpolate smoothly between searching and browsing to locate content matching complex information goals effectively. In a preliminary user study, ScentTrails enabled subjects to find information more quickly than by either searching or browsing alone.
Christopher Olston, Ed H. Chi
ACM Trans. Comput. Hum. Interact.1
2002 Best-effort cache synchronization with source cooperation
abstract
In environments where exact synchronization between source data objects and cached copies is not achievable due to bandwidth or other resource constraints, stale (out-of-date) copies are permitted. It is desirable to minimize the overall divergence between source objects and cached copies by selectively refreshing modified objects. We call the online process of selecting which objects to refresh in order to minimize divergence best-effort synchronization. In most approaches to best-effort synchronization, the cache coordinates the process and selects objects to refresh. In this paper, we propose a best-effort synchronization scheduling policy that exploits cooperation between data sources and the cache. We also propose an implementation of our policy that incurs low communication overhead even in environments with very large numbers of sources. Our algorithm is adaptive to wide fluctuations in available resources and data update rates. Through experimental simulation over synthetic and real-world data, we demonstrate the effectiveness of our algorithm, and we quantify the significant decrease in divergence achievable with source cooperation.
Christopher Olston, Jennifer Widom
SIGMOD Conference1
2001 Adaptive Precision Setting for Cached Approximate Values
abstract
Caching approximate values instead of exact values presents an opportunity for performance gains in exchange for decreased precision. To maximize the performance improvement, cached approximations must be of appropriate precision: approximations that are too precise easily become invalid, requiring frequent refreshing, while overly imprecise approximations are likely to be useless to applications, which must then bypass the cache. We present a parameterized algorithm for adjusting the precision of cached approximations adaptively to achieve the best performance as data values, precision requirements, or workload vary. We consider interval approximations to numeric values but our ideas can be extended to other kinds of data and approximations. Our algorithm strictly generalizes previous adaptive caching algorithms for exact copies: we can set parameters to require that all approximations be exact, in which case our algorithm dynamically chooses whether or not to cache each data value.
Christopher Olston, Boon Thau Loo, Jennifer Widom
SIGMOD Conference1
2000 Computing the median with uncertainty
abstract
We consider a new model for computing with uncertainty. It is desired to compute a function f(X_1,...,X_n) where X_1,...,X_n are unknown, but guaranteed to lie in specified intervals I_1,...,I_n. It is possible to query the precise value of any X_j at a cost c_j. The goal is to pin down the value of f to within a precision p at a minimum possible cost. We focus on the selection function f which returns the value of the kth smallest argument. We present optimal offline and online algorithms for this problem.
Tomás Feder, Rajeev Motwani 0001, Rina Panigrahy, Christopher Olston, Jennifer Widom
STOC4
2000 Offering a Precision-Performance Tradeoff for Aggregation Queries over Replicated Data
Christopher Olston, Jennifer Widom
VLDB1
1998 CONTROL: Continuous Output and Navigation Technology with Refinement On-Line
abstract
The CONTROL project at U.C. Berkeley has developed technologies to provide online behavior for data-intensive applications. Using new query processing algorithms, these technologies continuously improve estimates and confidence statistics. In addition, they react to user feedback, thereby giving the user control over the behavior of long-running operations. This demonstration displays the modifications to a database system and the resulting impact on aggregation queries, data visualization, and GUI widgets. We then compare this interactive behavior to batch-processing alternatives.
Ron Avnur, Joseph M. Hellerstein, Bruce Lo, Christopher Olston, Bhaskaran Raman, Vijayshankar Raman, Tali Roth, Kirk Wylie
SIGMOD Conference4
1998 DataSplash
abstract
Database visualization is an area of growing importance as database systems become larger and more accessible. DataSplash is an easy-to-use, integrated environment for navigating, creating, and querying visual representations of data. We will demonstrate the three main components which make up the DataSplash environment: a navigation system, a direct-manipulation interface for creating and modifying visualizations, and a direct-manipulation visual query system.
Christopher Olston, Allison Woodruff, Alex Aiken, Michael Chu, Vuk Ercegovac, Mark Lin, Mybrid Spalding, Michael Stonebraker
SIGMOD Conference1