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

Peter Buneman

dblp:b/PeterBuneman · also Oscar Peter Buneman · DBLP profile ↗
← Back
66ranked-venue papers
50as first author
2since 2021 · last 2024
0009-0004-9056-8587ORCID · verified

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

Databases, data management, data science and information retrieval · 51 · 41 first-author · 2 since 2021Theory of computation · 8 · 8 first-authorComputer networks · 3 · 1 first-authorSoftware engineering, systems software and programming languages · 3 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 2 · 1 first-authorArtificial intelligence and machine learning · 1

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

Databases, data mining, and information retrieval
35 papers
Graph data management · 32% Data integration and cleaning · 24% Data models and query languages · 14%
Computer networks
2 papers
Wireless networking · 58% Transport protocols and congestion control · 38% Cellular and mobile networks · 4%
Computer architecture, parallel and distributed computing, and storage systems
5 papers
High-performance computing · 71% Processor architecture and microarchitecture · 19% Storage systems · 10%

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

TopicWeightPapersLastEvidence papers
Wireless networking › cognitive radio › white space communication
TV white space
0.922020
WhiteHaul: an efficient spectrum aggregation system for low-cost and high capacity backhaul over white spaces · MobiSys 2020
WhiteHaul: white space spectrum aggregation system for backhaul · MobiCom 2020
Graph data management
graph processing
0.812024
Automating Vectorized Distributed Graph Computation · Proc. ACM Manag. Data 2024
High-performance computing › code optimization
vectorization
0.812024
Automating Vectorized Distributed Graph Computation · Proc. ACM Manag. Data 2024
Graph data management › graph algorithms
graph traversal
0.712023
MITra: A Framework for Multi-Instance Graph Traversal · Proc. VLDB Endow. 2023
Transport protocols and congestion control › multipath transport
multipath TCP
0.622020
WhiteHaul: an efficient spectrum aggregation system for low-cost and high capacity backhaul over white spaces · MobiSys 2020
WhiteHaul: white space spectrum aggregation system for backhaul · MobiCom 2020
Data integration and cleaning
data provenance
0.542017
Data Citation: A Computational Challenge · PODS 2017
On the expressiveness of implicit provenance in query and update languages · ACM Trans. Database Syst. 2008
Provenance in databases · SIGMOD Conference 2007
Transport protocols and congestion control
cross-layer congestion control
0.412020
WhiteHaul: an efficient spectrum aggregation system for low-cost and high capacity backhaul over white spaces · MobiSys 2020
Wireless networking › multi-channel communication
spectrum aggregation
0.412020
WhiteHaul: an efficient spectrum aggregation system for low-cost and high capacity backhaul over white spaces · MobiSys 2020
Wireless networking
wireless network protocols
0.412020
WhiteHaul: white space spectrum aggregation system for backhaul · MobiCom 2020
Query processing and optimization › query rewriting
query answering using views
0.312017
Data Citation: A Computational Challenge · PODS 2017
Data integration and cleaning › data provenance
provenance management
0.332011
DBWiki: a structured wiki for curated data and collaborative data management · SIGMOD Conference 2011
Provenance in databases · SIGMOD Conference 2007
Provenance management in curated databases · SIGMOD Conference 2006
Knowledge graphs › ontology
ontology evolution
0.212016
RDF Graph Alignment with Bisimulation · Proc. VLDB Endow. 2016
Data models and query languages › database programming language
database programming language integration
0.212015
Databases and Programming: Two Subjects Divided by a Common Language? · POPL 2015
Processor architecture and microarchitecture
SIMD
0.212023
MITra: A Framework for Multi-Instance Graph Traversal · Proc. VLDB Endow. 2023
Transport protocols and congestion control
transport protocols
0.112020
WhiteHaul: white space spectrum aggregation system for backhaul · MobiCom 2020
Data integration and cleaning
collaborative data management
0.112011
DBWiki: a structured wiki for curated data and collaborative data management · SIGMOD Conference 2011
Data integration and cleaning › data provenance
provenance tracking
0.112011
DBWiki: a structured wiki for curated data and collaborative data management · SIGMOD Conference 2011
Data integration and cleaning
data curation
0.122011
Provenance management in curated databases · SIGMOD Conference 2006
DBWiki: a structured wiki for curated data and collaborative data management · SIGMOD Conference 2011
Spatial and temporal data management
temporal databases
0.122004
Archiving scientific data · ACM Trans. Database Syst. 2004
Archiving scientific data · SIGMOD Conference 2002
Data integration and cleaning › data curation
curated database
0.112008
Curated databases · PODS 2008
Data models and query languages › query language
declarative query language
0.112008
XArch: archiving scientific and reference data · SIGMOD Conference 2008
Spatial and temporal data management
temporal query processing
0.112008
XArch: archiving scientific and reference data · SIGMOD Conference 2008
Storage systems › archival storage
database archiving
0.112008
XArch: archiving scientific and reference data · SIGMOD Conference 2008
Database theory
integrity constraints
0.132001
Keys for XML · WWW 2001
Interaction between Path and Type Constraints · PODS 1999
Path Constraints in Semistructured and Structured Databases · PODS 1998
Transaction processing and concurrency control
concurrency theory
0.112015
Databases and Programming: Two Subjects Divided by a Common Language? · POPL 2015
Distributed and cloud data management
distributed query processing
0.112006
Using Partial Evaluation in Distributed Query Evaluation · VLDB 2006
Query processing and optimization
partial evaluation
0.112006
Using Partial Evaluation in Distributed Query Evaluation · VLDB 2006
Query processing and optimization
query graph
0.112005
Vectorizing and Querying Large XML Repositories · ICDE 2005
Indexing and storage engines
XML storage
0.112005
Vectorizing and Querying Large XML Repositories · ICDE 2005
Query processing and optimization › view maintenance
incremental view maintenance
0.012004
Incremental Evaluation of Schema-Directed XML Publishing · SIGMOD Conference 2004

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

automatic vectorization · 1.5algebraic characterization · 1.5vertex ranking · 1.3edge function · 1.3SIMD · 1.3graph bisimulation · 0.5edit distance · 0.5uncoupled congestion control · 0.4frequency conversion · 0.4cross-layer congestion control · 0.4MPTCP · 0.4nested merge · 0.2provenance modeling · 0.1annotation · 0.1vectorization · 0.1graph reduction · 0.1relational operator generalization · 0.0ML type inference · 0.0
YearPublicationVenuePosition
2024 Automating Vectorized Distributed Graph Computation
abstract
Multi-instance graph algorithms interleave the evaluation of multiple instances of the same algorithm with different inputs over the same graph. They have been shown to be significantly faster than traditional serial and batch evaluation, by sharing computation across instances. However, writing correct multi-instance algorithms is challenging; and in this work, we describe AutoMI, a framework for automatically converting vertex-centric graph algorithms into their vectorized multi-instance versions. We also develop an algebraic characterization of algorithms that can benefit best from multi-instance computation with simpler and faster streamlined vectorization. This allows users to decide when to use such optimization and instruct AutoMI to make the best use of SIMD vectorization. Using 6 real-life graphs, we show that AutoMI-converted multi-instance algorithms are 9.6 to 29.5 times faster than serial evaluation, 7.1 to 26.4 times faster than batch evaluation, and are even 2.6 to 4.6 times faster than existing highly optimized handcrafted multi-instance algorithms without vectorization.
Wenyue Zhao, Yang Cao 0012, Peter Buneman, Nikos Ntarmos
Proc. ACM Manag. Data3
2023 MITra: A Framework for Multi-Instance Graph Traversal
abstract
This paper presents MITra, a framework for composing multi-instance graph algorithms that traverse from multiple source vertices simultaneously over a single thread. Underlying MITra is a model of multi-instance traversal that uniformly captures traversal sharing across instances. Based on this, MITra provides a programming model that allows users to express traversals by declaring vertex ranks and specify computation logic via an edge function. It synthesizes multi-instance traversal algorithms from declared vertex ranks and edge functions adopted from classic single-instance algorithms, automatically sharing computation across instances and benefiting from SIMD. We show that MITra can generate multi-instance algorithms provably better than existing ones, while being more expressive than traditional frameworks. In addition to the ease of programming, we experimentally verify that MITra is on average an order of magnitude faster than approaches based on existing frameworks for common graph algorithms, and is comparable to the state-of-the-art highly optimized one-off algorithms.
Wenyue Zhao, Nikos Ntarmos, Yang Cao 0012, Peter Buneman
Proc. VLDB Endow.5
2020 WhiteHaul: white space spectrum aggregation system for backhaul
abstract
Today almost half the world's population does not have Internet access. This is particularly the case in rural and undeserved regions where providing Internet access infrastructure is challenging and expensive. To this end, we present demonstration of WhiteHaul [5], a low-cost hybrid cross-layer aggregation system for TV White Space (TVWS) based backhaul. WhiteHaul features a custom-designed frequency conversion substrate that efficiently handles multiple noncontiguous chunks of TVWS spectrum using multiple low-cost COTS 802.11n/ac cards but with a single antenna. At the software layer, WhiteHaul uses MPTCP as a link-level tunnel abstraction to efficiently aggregate multiple chunks of the TVWS spectrum via a novel uncoupled, cross-layer congestion control algorithm. This demo illustrates the unique features of the WhiteHaul system based on a prototype implementation employing a modified version of MPTCP Linux Kernel and a custom-designed conversion substrate. Using this prototype, we highlight the performance of the WhiteHaul system under various configurations and network conditions.
Mohamed M. Kassem, Morteza Kheirkhah, Mahesh K. Marina, Peter Buneman
MobiCom4
2020 WhiteHaul: an efficient spectrum aggregation system for low-cost and high capacity backhaul over white spaces
abstract
We address the challenge of backhaul connectivity for rural and developing regions, which is essential for universal fixed/mobile Internet access. To this end, we propose to exploit the TV white space (TVWS) spectrum for its attractive properties: low cost, abundance in under-served regions and favorable propagation characteristics. Specifically, we propose a system called WhiteHaul for the efficient aggregation of the TVWS spectrum tailored for the backhaul use case. At the core of WhiteHaul are two key innovations: (i) a TVWS conversion substrate that can efficiently handle multiple non-contiguous chunks of TVWS spectrum using multiple low cost 802.11n/ac cards but with a single antenna; (ii) novel use of MPTCP as a link-level tunnel abstraction and its use for efficiently aggregating multiple chunks of the TVWS spectrum via a novel uncoupled, cross-layer congestion control algorithm. Through extensive evaluations using a prototype implementation of WhiteHaul, we show that: (a) WhiteHaul can aggregate almost the whole of TV band with 3 interfaces and achieve nearly 600Mbps TCP throughput; (b) the WhiteHaul MPTCP congestion control algorithm provides an order of magnitude improvement over state of the art algorithms for typical TVWS backhaul links. We also present additional measurement and simulation based results to evaluate other aspects of the WhiteHaul design.
Mohamed M. Kassem, Morteza Kheirkhah, Mahesh K. Marina, Peter Buneman
MobiSys4
2017 Data Citation: A Computational Challenge
abstract
Data citation is an interesting computational challenge, whose solution draws on several well-studied problems in database theory: query answering using views, and provenance. We describe the problem, suggest an approach to its solution, and highlight several open research problems, both practical and theoretical.
Susan B. Davidson, Peter Buneman, Daniel Deutch, Tova Milo, Gianmaria Silvello
PODS2
2016 2016 ACM PODS Alberto O. Mendelzon Test-of-Time Award
abstract
No abstract available.
Marcelo Arenas, Peter Buneman, Jan Van den Bussche
PODS2
2016 RDF Graph Alignment with Bisimulation
abstract
We investigate the problem of aligning two RDF databases, an essential problem in understanding the evolution of ontologies. Our approaches address three fundamental challenges: 1) the use of "blank" (null) names, 2) ontology changes in which different names are used to identify the same entity, and 3) small changes in the data values as well as small changes in the graph structure of the RDF database. We propose approaches inspired by the classical notion of graph bisimulation and extend them to capture the natural metrics of edit distance on the data values and the graph structure. We evaluate our methods on three evolving curated data sets. Overall, our results show that the proposed methods perform well and are scalable.
Peter Buneman, Slawomir Staworko
Proc. VLDB Endow.1
2015 Databases and Programming: Two Subjects Divided by a Common Language?
abstract
The 1990s saw a hugely productive interaction between database and programming language research. Ideas about type systems from programming languages played a central role in generalizing and adapting relational database systems to new data models. At the same time databases provided some of the best concrete examples of the application of concurrency theory and of the benefits of high-level optimization in functional programming languages. One of the driving ambitions behind this research was the idea that database access should be properly embedded in programming languages: one should not have to be bilingual in order to use a database from a programming language; and that goal has to some extent been realized.
Peter Buneman
POPL1
2013 Annotations are relative
abstract
Most systems that have been developed for annotation of data assume a two-level structure in which annotation is superimposed on, and separate from, the data. However there are many cases in which an annotation may itself be annotated. For example threads in e-mail and newsgroups allow the imposition of one comment on another; belief annotations can be compounded; and valid time, regarded as an annotation can be freely mixed with belief annotations (at time t1, B1 believed that at time t2, B2 believed that...).
Peter Buneman, Egor V. Kostylev, Stijn Vansummeren
ICDT1
2012 Combining dependent annotations for relational algebra
abstract
Annotation is some form of data that is added to an existing database. It could be additional data that for whatever reason cannot be stored in the original database, or it could be some form of metadata such as comments, probabilities, timestamps that are not normally regarded part of the basic database design. It has recently been observed that, in order to determine how annotations should be propagated through database queries, we need to have some structure on them. Although various forms of annotation have been considered in some detail, each form has been considered in isolation.
Egor V. Kostylev, Peter Buneman
ICDT2
2011 DBWiki: a structured wiki for curated data and collaborative data management
abstract
Wikis have proved enormously successful as a means to collaborate in the creation and publication of textual information. At the same time, a large number of curated databases have been developed through collaboration for the dissemination of structured data in specific domains, particularly bioinformatics. We demonstrate a general-purpose platform for collaborative data management, DBWiki, designed to achieve the best of both worlds. Our system not only facilitates the collaborative creation of a database; it also provides features not usually provided by database technology such as versioning, provenance tracking, citability, and annotation. In our demonstration we will show how DBWiki makes it easy to create, correct, discuss and query structured data, placing more power in the hands of users while managing tedious details of data curation automatically.
Peter Buneman, James Cheney, Sam Lindley, Heiko Müller 0001
SIGMOD Conference1
2010 Special issue: best papers of VLDB 2008
Peter Buneman, Volker Markl, Beng Chin Ooi, Kenneth A. Ross
VLDB J.1
2008 Curated databases
abstract
Curated databases are databases that are populated and updated with a great deal of human effort. Most reference works that one traditionally found on the reference shelves of libraries -- dictionaries, encyclopedias, gazetteers etc. -- are now curated databases. Since it is now easy to publish databases on the web, there has been an explosion in the number of new curated databases used in scientific research. The value of curated databases lies in the organization and the quality of the data they contain. Like the paper reference works they have replaced, they usually represent the efforts of a dedicated group of people to produce a definitive description of some subject area. Curated databases present a number of challenges for database research. The topics of annotation, provenance, and citation are central, because curated databases are heavily cross-referenced with, and include data from, other databases, and much of the work of a curator is annotating existing data. Evolution of structure is important because these databases often evolve from semistructured representations, and because they have to accommodate new scientific discoveries. Much of the work in these areas is in its infancy, but it is beginning to provide suggest new research for both theory and practice. We discuss some of this research and emphasize the need to find appropriate models of the processes associated with curated databases.
Peter Buneman, James Cheney, Wang Chiew Tan, Stijn Vansummeren
PODS1
2008 XArch: archiving scientific and reference data
abstract
Database archiving is important for the retrieval of old versions of a database and for temporal queries over the history of data. We demonstrate XArch, a management system for maintaining, populating, and querying archives of hierarchical data. XArch is based on a nested merge approach that efficiently stores multiple versions of hierarchical data in a compact archive. By merging elements into one data structure, any specific version is retrievable from the archive in a single pass over the data and efficient tracking of object history is possible. XArch implements this approach and extends it in two important ways. First, in order to merge large hierarchical data sets, elements need to be sorted according to their key values. We developed an efficient algorithm for sorting hierarchical data in secondary storage and modified the nested merge algorithm accordingly. Second, we designed and implemented a declarative query language that enables one both to view data from particular versions and to track the history of objects. We demonstrate this using both molecular biology and demographic reference data as examples.
Heiko Müller 0001, Peter Buneman, Ioannis Koltsidas
SIGMOD Conference2
2008 On the expressiveness of implicit provenance in query and update languages
abstract
Information describing the origin of data, generally referred to as provenance , is important in scientific and curated databases where it is the basis for the trust one puts in their contents. Since such databases are constructed using operations of both query and update languages, it is of paramount importance to describe the effect of these languages on provenance. In this article we study provenance for query and update languages that are closely related to SQL, and compare two ways in which they can manipulate provenance so that elements of the input are rearranged to elements of the output: implicit provenance , where a query or update only provides the rearranged output, and provenance is provided implicitly by a default provenance semantics; and explicit provenance , where a query or update provides both the output and the description of the provenance of each component of the output. Although explicit provenance is in general more expressive, we show that the classes of implicit provenance operations expressible by query and update languages correspond to natural semantic subclasses of the explicit provenance queries. One of the consequences of this study is that provenance separates the expressive power of query and update languages. The model is also relevant to annotation propagation schemes in which annotations on the input to a query or update have to be transferred to the output or vice versa.
Peter Buneman, James Cheney, Stijn Vansummeren
ACM Trans. Database Syst.1
2007 On the Expressiveness of Implicit Provenance in Query and Update Languages
Peter Buneman, James Cheney, Stijn Vansummeren
ICDT1
2007 Provenance in databases
abstract
The provenance of data has recently been recognized as central to the trust one places in data. It is also important to annotation, to data integration and to probabilistic databases. Three workshops have been held on the topic, and it has been the focus of several research projects and prototype systems. This tutorial will attempt to provide an overview of research in provenance in databases with a focus on recent database research and technology in this area. This tutorial is aimed at a general database research audience and at people who work with scientific data.
Peter Buneman, Wang Chiew Tan
SIGMOD Conference1
2006 Provenance management in curated databases
abstract
Curated databases in bioinformatics and other disciplines are the result of a great deal of manual annotation, correction and transfer of data from other sources. Provenance information concerning the creation, attribution, or version history of such data is crucial for assessing its integrity and scientific value. General purpose database systems provide little support for tracking provenance, especially when data moves among databases. This paper investigates general-purpose techniques for recording provenance for data that is copied among databases. We describe an approach in which we track the user's actions while browsing source databases and copying data into a curated database, in order to record the user's actions in a convenient, queryable form. We present an implementation of this technique and use it to evaluate the feasibility of database support for provenance management. Our experiments show that although the overhead of a naive approach is fairly high, it can be decreased to an acceptable level using simple optimizations.
Peter Buneman, Adriane Chapman, James Cheney
SIGMOD Conference1
2006 How to cite curated databases and how to make them citable
abstract
Curated scientific databases such as the IUPHAR database resemble conventional publications such as reference manuals in that they represent the work of a large number of people who both create and revise their contents. The difference is that curated databases have more internal structure and that they change more frequently. How should we cite all or parts of such a database? We use conventional citations primarily to identify the source material, but this is not their only use. They are distinguished from persistent object identifiers (or other "randomly" assigned digital keys) in their ability to provide some additional information, such as authorship or title that may be useful even before we look at the cited work
Peter Buneman
SSDBM1
2006 Using Partial Evaluation in Distributed Query Evaluation
Peter Buneman, Gao Cong, Wenfei Fan, Anastasios Kementsietsidis
VLDB1
2005 Vectorizing and Querying Large XML Repositories
abstract
Vertical partitioning is a well-known technique for optimizing query performance in relational databases. An extreme form of this technique, which we call vectorization, is to store each column separately. We use a generalization of vectorization as the basis for a native XML store. The idea is to decompose an XML document into a set of vectors that contain the data values and a compressed skeleton that describes the structure. In order to query this representation and produce results in the same vectorized format, we consider a practical fragment of XQuery and introduce the notion of query graphs and a novel graph reduction algorithm that allows us to leverage relational optimization techniques as well as to reduce the unnecessary loading of data vectors and decompression of skeletons. A preliminary experimental study based on some scientific and synthetic XML data repositories in the order of gigabytes supports the claim that these techniques are scalable and have the potential to provide performance comparable with established relational database technology.
Peter Buneman, Byron Choi, Wenfei Fan, Robert Hutchison, Stratis Viglas
ICDE1
2005 What the Web Has Done for Scientific Data - and What It Hasn't
Peter Buneman
WAIM1
2004 Incremental Evaluation of Schema-Directed XML Publishing
abstract
When large XML documents published from a database are maintained externally, it is inefficient to repeatedly recompute them when the database is updated. Vastly preferable is incremental update, as common for views stored in a data warehouse. However, to support schema-directed publishing, there may be no simple query that defines the mapping from the database to the external document. To meet the need for efficient incremental update, this paper studies two approaches for incremental evaluation of ATGs [4], a formalism for schema-directed XML publishing. The reduction approach seeks to push as much work as possible to the underlying DBMS. It is based on a relational encoding of XML trees and a nontrivial translation of ATGs to SQL 99 queries with recursion. However, a weakness of this approach is that it relies on high-end DBMS features rather than the lowest common denominator. In contrast, the bud-cut approach pushes only simple queries to the DBNS and performs the bulk of the work in middleware. It capitalizes on the tree-structure of XML views to minimize unnecessary recomputations and leverages optimization techniques developed for XML publishing. While implementation of the reduction approach is not yet in the reach of commercial DBMS, we have implemented the bud-cut approach and experimentally evaluated its performance compared to recomputation.
Philip Bohannon, Peter Buneman, Byron Choi, Wenfei Fan
SIGMOD Conference2
2004 The Two Cultures of Digital Curation
abstract
Summary form only given. The United Kingdom has recently created a Digital Curation Centre whose purpose is to provide advice on, develop tools for and conduct research on all aspects of digital curation. But what is digital curation, and why is it interesting to database researchers? Ask around, and you are likely to find two kinds of people involved in digital curation - at least they call themselves curators and use computers. Moreover, on the face of it, they have almost nothing else in common. An archivist (A) does the digital equivalent of putting documents in boxes. A is dealing with data generated by other people and is concerned with: appraisal - the selection of what documents to preserve, indexing and classification - the choice of which document to put into which box, and preservation - ensuring that the documents are preserved for posterity. A finds computers extremely useful because all kinds of "digital objects" may be archived, and the Internet provides easy access to digital objects. A scientist (B) does the digital equivalent of publishing a textbook or compendium. B might be a biologist and is publishing data that results from B's experiments or has been collected as a result of B's research into the literature. B's concerns are with organization and integration of data that has been collected from other sources, with the process of annotation of this data and with the publishing and presentation of the data. B finds computers and the Internet useful because it is easy to add recent data - one doesn't have to wait for the next paper edition to appear, one can build rather rich representations of the data, and it is easy to publish the data in a form that is accessible to the readers. In fact, B is likely to use some form of database technology. In this paper the author describes some of the challenges for database research and the progress that has been made on them: they include data integration, database archiving, annotation, and provenance.
Peter Buneman
SSDBM1
2004 Archiving scientific data
abstract
Archiving is important for scientific data, where it is necessary to record all past versions of a database in order to verify findings based upon a specific version. Much scientific data is held in a hierachical format and has a key structure that provides a canonical identification for each element of the hierarchy. In this article, we exploit these properties to develop an archiving technique that is both efficient in its use of space and preserves the continuity of elements through versions of the database, something that is not provided by traditional minimum-edit-distance diff approaches. The approach also uses timestamps. All versions of the data are merged into one hierarchy where an element appearing in multiple versions is stored only once along with a timestamp. By identifying the semantic continuity of elements and merging them into one data structure, our technique is capable of providing meaningful change descriptions, the archive allows us to easily answer certain temporal queries such as retrieval of any specific version from the archive and finding the history of an element. This is in contrast with approaches that store a sequence of deltas where such operations may require undoing a large number of changes or significant reasoning with the deltas. A suite of experiments also demonstrates that our archive does not incur any significant space overhead when contrasted with diff approaches. Another useful property of our approach is that we use XML format to represent hierarchical data and the resulting archive is also in XML. Hence, XML tools can be directly applied on our archive. In particular, we apply an XML compressor on our archive, and our experiments show that our compressed archive outperforms compressed diff-based repositories in space efficiency. We also show how we can extend our archiving tool to an external memory archiver for higher scalability and describe various index structures that can further improve the efficiency of some temporal queries on our archive.
Peter Buneman, Sanjeev Khanna, Keishi Tajima, Wang Chiew Tan
ACM Trans. Database Syst.1
2003 Path Queries on Compressed XML
Peter Buneman, Martin Grohe, Christoph Koch 0001
VLDB1
2003 Curated Databases
abstract
Summary form only given. Scientists, notably biologists, are making increasing use of databases to publish both their data and their interpretation of data. These databases are valuable because of the human effort (curation) that goes into their construction and maintenance. They typically consist of a mixture of source data, metadata, annotations, and relevant data that has been extracted from other curated databases. Current database and data exchange technology does not serve database curation well. In this paper, the author addresses a number of issues connected with curated databases. Annotation of existing data now provides a new form of communication between scientists, but conventional database technology provides little support for attaching annotations. The author shows why new models of both data and query languages are needed. Closely related to annotation is provenance - archiving - is also important for verifying the basis of scientific research, yet few published scientific databases do a good job of archiving. Past "editions" of the database get lost. The author describes a system that allows frequent archiving and efficient retrieval with remarkably little space overhead. Finally the author argues that we need a new model of how curated databases are constructed. The idea that such databases are constructed as views of other data through conventional query and update languages is unhelpful, and that formulation of a "copy-and-paste" model of data construction may provide us with better curation tools.
Peter Buneman
WISE1
2003 Reasoning about keys for XML
Peter Buneman, Susan B. Davidson, Wenfei Fan, Carmem S. Hara, Wang Chiew Tan
Inf. Syst.1
2003 Guest Editor's Foreword
Peter Buneman
J. Comput. Syst. Sci.1
2003 Interaction between path and type constraints
abstract
Path constraints are capable of expressing inclusion and inverse relationships and have proved useful in modeling and querying semistructured data [Abiteboul and Vianu 1999; Buneman et al. 2000]. Types also constrain the structure of data and are commonly found in traditional databases. There has also been work on imposing structure or a type system on semistructured data for storing and querying semistructured data in a traditional database system [Alon et al. 2001; Deutsch et al. 1999a; Florescu and Kossmann 1999; Shanmugasundaram et al. 1999]. One wants to know whether complexity results for reasoning about path constraints established in the untyped (semistructured) context could carry over to traditional databases, and vice versa. It is therefore appropriate to understand the interaction between types and path constraints. In addition, XML [Bray et al. 1998], which may involve both an optional schema (e.g., DTDs or XML Schema [Thompson et al. 2001]) and integrity constraints, highlights the importance of the study of the interaction.This article investigates that interaction. In particular it studies constraint implication problems, which are important both in understanding the semantics of type/constraint systems and in query optimization. It shows that path constraints interact with types in a highly intricate way. For that purpose a number of results on path constraint implication are established in the presence and absence of type systems. These results demonstrate that adding a type system may in some cases simplify reasoning about path constraints and in other cases make it harder. For example, it is shown that there is a path constraint implication problem that is decidable in PTIME in the untyped context, but that becomes undecidable when a type system is added. On the other hand, there is an implication problem that is undecidable in the untyped context, but becomes not only decidable in cubic time but also finitely axiomatizable when a type system is imposed.
Peter Buneman, Wenfei Fan, Scott Weinstein
ACM Trans. Comput. Log.1
2002 On Propagation of Deletions and Annotations Through Views
abstract
We study two classes of view update problems in relational databases. We are given a source database S, a monotone query Q, and the view Q(S) generated by the query. The first problem that we consider is the classical view deletion problem where we wish to identify a minimal set T of tuples in S whose deletion will eliminate a given tuple t from the view. We study the complexity of optimizing two natural objectives in this setting, namely, find T to minimize the side-effects on the view, and the source, respectively. For both objective functions, we show a dichotomy in the complexity. Interestingly, the problem is either in P or is NP-hard, for queries in the same class in either objective function.The second problem in our study is the annotation placement problem. Suppose we annotate an attribute of a tuple in S. The rules for carrying the annotation forward through a query are easily stated. On the other hand, suppose we annotate an attribute of a tuple in the view Q(S), what annotation(s) in S will cause this annotation to appear in the view, minimizing the propagation to other attributes in Q(S)? View annotation is becoming an increasingly useful method of communicating meta-data among users of shared scientific data sets, and to our knowledge, there has been no formal study of this problem.Our study of these problems gives us important insights into computational issues involved in data provenance or lineage --- the process by which data moves through databases. We show that the two problems correspond to two fundamentally distinct notions of provenance, why and where-provenance.
Peter Buneman, Sanjeev Khanna, Wang Chiew Tan
PODS1
2002 Archiving scientific data
abstract
We present an archiving technique for hierarchical data with key structure. Our approach is based on the notion of timestamps whereby an element appearing in multiple versions of the database is stored only once along with a compact description of versions in which it appears. The basic idea of timestamping was discovered by Driscoll et. al. in the context of persistent data structures where one wishes to track the sequences of changes made to a data structure. We extend this idea to develop an archiving tool for XML data that is capable of providing meaningful change descriptions and can also efficiently support a variety of basic functions concerning the evolution of data such as retrieval of any specific version from the archive and querying the temporal history of any element. This is in contrast to diff-based approaches where such operations may require undoing a large number of changes or significant reasoning with the deltas. Surprisingly, our archiving technique does not incur any significant space overhead when contrasted with other approaches. Our experimental results support this and also show that the compacted archive file interacts well with other compression techniques. Finally, another useful property of our approach is that the resulting archive is also in XML and hence can directly leverage existing XML tools.
Peter Buneman, Sanjeev Khanna, Keishi Tajima, Wang Chiew Tan
SIGMOD Conference1
2002 Keys for XML
Peter Buneman, Susan B. Davidson, Wenfei Fan, Carmem S. Hara, Wang Chiew Tan
Comput. Networks1
2001 Why and Where: A Characterization of Data Provenance
Peter Buneman, Sanjeev Khanna, Wang Chiew Tan
ICDT1
2001 Keys for XML
abstract
We discuss the denition of keys for XML documents, paying particular attention to the concept of a relative key, which is commonly used in hierarchically structured documents and scientic databases.
Peter Buneman, Susan B. Davidson, Wenfei Fan, Carmem S. Hara, Wang Chiew Tan
WWW1
2000 Data Provenance: Some Basic Issues
Peter Buneman, Sanjeev Khanna, Wang Chiew Tan
FSTTCS1
2000 Towards a Query Language for Annotation Graphs
Steven Bird, Peter Buneman, Wang Chiew Tan
LREC2
2000 Path Constraints in Semistructured Databases
Peter Buneman, Wenfei Fan, Scott Weinstein
J. Comput. Syst. Sci.1
2000 UnQL: A Query Language and Algebra for Semistructured Data Based on Structural Recursion
Peter Buneman, Mary F. Fernández, Dan Suciu
VLDB J.1
1999 Interaction between Path and Type Constraints
abstract
XML [7], which is emerging as an important standard for data exchange on the World-Wide Web, highlights the importance of semistructured data. Although the XML standard itself does not require any schema or type system, a number of proposals [6, 17, 19] have been developed that roughly correspond to data definition languages. These allow one to constrain the structure of XML data by imposing a schema on it. These and other proposals also advocate the need for integrity constraints, another form of constraints that should, for example, be capable of expressing inclusion constraints and inverse relationships. The latter have recently been studied as path constraints in the context of semistructured data [4, 9]. It is likely that future XML proposals will involve both forms of constraints, and it is therefore appropriate to understand the interaction between them. This paper investigates that interaction. In particular it studies constraint implication problems, which are important both in understanding the semantics of type/constraint systems and in query optimization. A number of results on path constraint implication are established in the presence and absence of type systems. These results demonstrate that adding a type system may in some cases simplify reasoning about path constraints and in other cases make it harder. For example, it is shown that there is a path constraint implication problem that is decidable in PTIME in the untyped context, but that becomes undecidable when a type system is added. On the other hand, there is an implication problem that is undecidable in the untyped context, but becomes not only decidable in cubic time but also finitely axiomatizable when a type system is imposed.
Peter Buneman, Wenfei Fan, Scott Weinstein
PODS1
1998 Path Constraints in Semistructured and Structured Databases
abstract
We present a class of path constraints of interest in connection with both structured and semi-structured databases, and investigate their associated implication problems. These path constraints are capable of expressing natural integrity constraints that are not only a fundamental part of the semantics of the data, but are also important in query optimization. We show that in semistructured databases, despite the simple syntax of the constraints, their associated implication problem is r.e. complete and finite implication problem is co-r.e. complete. However, we establish the decidability of the implication problems for several fragments of the path constraint language, and demonstrate that these fragments suffice to express important semantic information such as inverse relationships and local database constraints commonly found in object-oriented databases. We also show that in the presence of types, the analysis of path constraint implication becomes more delicate. We demonstrate so...
Peter Buneman, Wenfei Fan, Scott Weinstein
PODS1
1997 Adding Structure to Unstructured Data
Peter Buneman, Susan B. Davidson, Mary F. Fernández, Dan Suciu
ICDT1
1997 Semistructured Data
abstract
In semistructured data, the information that is normally associated with a schema is contained within the data, which is sometimes called "self-describing".In some forms of semistructured data there is no separate schema, in others it exists but only places loose constraints on the data.Semistructured data has recently emerged as an important topic of study for a variety of reasons.First, there are data sources such as the Web, which we would like to treat as databases but which cannot be constrained by a schema.Second, it may be desirable to have an extremely flexible format for data exchange between disparate databases.Third, even when dealing with structured data, it may be helpful to view it.as semistructured for the purposes of browsing.This tutorial will cover a number of issues surrounding such data: finding a concise formulation, building a sufficiently expressive language for querying and transformation, and optimizat,ion problems.
Peter Buneman
PODS1
1996 A Query Language and Optimization Techniques for Unstructured Data
abstract
A new kind of data model has recently emerged in which the database is not constrained by a conventional schema. Systems like ACeDB, which has become very popular with biologists, and the recent Tsimmis proposal for data integration organize data in tree-like structures whose components can be used equally well to represent sets and tuples. Such structures allow great flexibility y in data representation.What query language is appropriate for such structures? Here we propose a simple language UnQL for querying data organized as a rooted, edge-labeled graph. In this model, relational data may be represented as fixed-depth trees, and on such trees UnQL is equivalent to the relational algebra. The novelty of UnQL consists in its programming constructs for arbitrarily deep data and for cyclic structures. While strictly more powerful than query languages with path expressions like XSQL, UnQL can still be efficiently evaluated. We describe new optimization techniques for the deep or "vertical" dimension of UnQL queries. Furthermore, we show that known optimization techniques for operators on flat relations apply to the "horizontal" dimension of UnQL.
Peter Buneman, Susan B. Davidson, Gerd G. Hillebrand, Dan Suciu
SIGMOD Conference1
1996 Polymorphism and Type Inference in Database Programming
abstract
In order to find a static type system that adequately supports database languages, we need to express the most general type of a program that involves database operations. This can be achieved through an extension to the type system of ML that captures the polymorphic nation of field selection, together with a techniques that generalizes relational operators to arbitrary data structures. The combination provides a statically typed language in which generalized relational databases may be cleanly represented as typed structures. As in ML types are inferred, which relieves the programmer of making the type assertions that may be required in a complex database environment. These extensions may also be used to provide static polymorphic typechecking in object-oriented languages and databases. A problem that arises with object-oriented databases is the apparent need for dynamic typechecking when dealing queries on heterogeneous collections of objects. An extension of the type system needed for generalized relational operations can also be used for manipulating collections of dynamically typed values in a statically typed language. A prototype language based on these ideas has been implemented. While it lacks a proper treatment of persistent data, it demonstrates that a wide variety of database structures can be cleanly represented in a polymorphic programming language.
Peter Buneman, Atsushi Ohori
ACM Trans. Database Syst.1
1995 The Data That You Won't Find in Databases: Tutorial panel on data exchange formats
abstract
No abstract available.
Peter Buneman, David Maier 0001
SIGMOD Conference1
1995 A Data Transformation System for Biological Data Sources
Peter Buneman, Susan B. Davidson, Kyle Hart, G. Christian Overton, Limsoon Wong
VLDB1
1995 Principles of Programming with Complex Objects and Collection Types
abstract
We present a new principle for the development of database query languages that the primitive operations should be organized around types. Viewing a relational database as consisting of sets of records, this principle dectates that we should investigate separately operations for records and sets. There are two immediate advantages of this approach, which is partly inspired by basic ideas from category theoryl. First, it provides a language for structures in which record and set types may be freely combined: nested relations or complex objects. Second, the fundamental operations for sets are closely related to those for other “collection types” such as bags or lists, and this suggests how database languages may be uniformly extended to these new types. the most general operation on sets, that of structural recursion, is one in which not all programs are well-defined. In looking for limited forms of this operation that always give rise to well-defined operations, we find a number of close connection with exiting database languages, notably those developed for complex objects. Moreover, even though the general paradigm of structural recursion is shown to be no more expressive than one of the existing languages for complex objects, it possesses certain properties of uniformity that make it a better candidate for an efficient, practical language. Thus rather than developing query languages by extending, for example, relational calculus, we advocate a very powerful paradigm in which a number of well-known languages are to be found as natural sublanguages.
Peter Buneman, Shamim A. Naqvi, Val Tannen, Limsoon Wong
Theor. Comput. Sci.1
1992 Theoretical Aspects of Schema Merging
Peter Buneman, Susan B. Davidson, Anthony Kosky
EDBT1
1992 Naturally Embedded Query Languages
Val Tannen, Peter Buneman, Limsoon Wong
ICDT2
1991 A Semantics for Complex Objects and Approximate Answers
abstract
A new definition of complex objects is introduced which provides a denotation for incomplete tuples as well as partially described sets. Set values are “sandwiched” between “complete” and “consistent” descriptions (respectively represented in the Smyth and Hoare powerdomains), allowing the maximal values to be arbitrary subsets of maximal elements in the domain of the space of descriptions. We then restrict our attention to complex objects which are in some sense “natural,” i.e., those which represent “views” of entity-relationship databases, and define rules over these objects. The rules can be used not only as an integrity check on the information in the database, but can be used constructively to infer consistent instances of conclusions and to refine complete instances of the hypothesis. The system is shown to extend the power of datalog (without negation) and the relational algebra (with set difference), and to have an efficient implementation.
Peter Buneman, Susan B. Davidson, Aaron Watters
J. Comput. Syst. Sci.1
1991 Using Powerdomains to Generalize Relational Databases
abstract
Much of relational algebra and the underlying principles of relational database design have a simple representation in the theory of domains that is traditionally used in the denotational semantics of programming languages. By investigating the possible orderings on powerdomains that are well known in the study of nondeterminism and concurrency it is possible to show that many of the ideas in relational databases apply to structures that are much more general than relations. This also suggests a method of representing database objects as typed objects in programming languages. In this paper we show how operations such as natural join and projection—which are fundamental to relational database design—can be generalized, and we use this generalized framework to give characterizations of several relational database concepts including functional dependencies and universal relations. All of these have a simple-minded semantics in terms of the underlying domains, which can be thought of as domains of partial descriptions of “real-world” objects. We also discuss the applicability of relational database theory to nonrelational structures such as records with variants, higher-order relations, recursive structures and other ordered spaces.
Peter Buneman, Achim Jung, Atsushi Ohori
Theor. Comput. Sci.1
1990 Querying independent databases
Peter Buneman, Susan B. Davidson, Aaron Watters
Inf. Sci.1
1989 Static Type Inference for Parametric Classes
abstract
Central features of object-oriented programming are method inheritance and data abstraction attained through hierarchical organization of classes. Recent studies show that method inheritance can be nicely supported by ML style type inference when extended to labeled records. This is based on the fact that a function that selects a field ƒ of a record can be given a polymorphic type that enables it to be applied to any record which contains a field ƒ. Several type systems also provide data abstraction through abstract type declarations. However, these two features have not yet been properly integrated in a statically checked polymorphic type system. This paper proposes a static type system that achieves this integration in an ML-like polymorphic language by adding a class construct that allows the programmer to build a hierarchy of classes connected by multiple inheritance declarations. Moreover, classes can be parameterized by types allowing “generic” definitions. The type correctness of class declarations is statically checked by the type system. The type system also infers a principal scheme for any type correct program containing methods and objects defined in classes.
Atsushi Ohori, Peter Buneman
OOPSLA2
1989 Database Programming in Machiavelli - a Polymorphic Language with Static Type Inference
abstract
Machiavelli is a polymorphically typed programming language in the spirit of ML, but supports an extended method of type inferencing that makes its polymorphism more general and appropriate for database applications. In particular, a function that selects a field ƒ of a records is polymorphic in the sense that it can be applied to any record which contains a field ƒ with the appropriate type. When combined with a set data type and database operations including join and projection, this provides a natural medium for relational database programming. Moreover, by implementing database objects as reference types and generating the appropriate views — sets of structures with “identity” — we can achieve a degree of static type checking for object-oriented databases.
Atsushi Ohori, Peter Buneman, Val Tannen
SIGMOD Conference2
1988 A Semantics for Complex Objects and Approximate Queries
abstract
A new definition of complex objects is introduced which provides a denotation for incomplete tuples as well as partially described sets. Set values are “sandwiched” between “complete” and “consistent” descriptions (representing the Smyth and Hoare powerdomains respectively), allowing the maximal values to be arbitrary subsets of maximal elements in the domain of the set. We also examine the use of rules in defining queries over such objects.
Peter Buneman, Susan B. Davidson, Aaron Watters
PODS1
1988 Binding and Type Checking in Database Programming Languages
abstract
Static binding and type-checking, by which we mean the ability to bind names and assign types in advance of program execution is a desirable feature of many modern programming languages. In particular, it is one of the most useful techniques for catching programming errors and is a powerful aid in program optimisation, However, many programming tasks, especially those involving persistent data, appear to require some form of delayed binding and type checking. In this paper we illustrate the need for delaying those operations and examine a selection of languages to see how they provide a mixture of delayed and static operations. We conclude that, with the current state of language technology, the programmer needs explicit control over the timing of binding and type checking.
Malcolm P. Atkinson 0001, Peter Buneman, Ronald Morrison
Comput. J.2
1986 A Domain Theoretic Approach to Higher-Order Relations
Peter Buneman, Atsushi Ohori
ICDT1
1986 Inheritance and Persistence in Database Programming Languages
abstract
In order to represent inheritance, several recent designs for database programming languages have made use of class construct, which can be thought of as a restricted data type with an associated set of instances. Moreover, these classes are persistent they survive from one program invocation to another. This paper examines whether it is necessary to the together type, extent and persistence in order to model inheritance and suggests that they may be separated to provide more general database programming languages. In particular we shall see that it is possible to assign a generic data type to a function that extracts all the objects of a given type in the database so that the class hierarchy can be derived from the type hierarchy. We shall also examine object-level inheritance and its relationship to data types for relational databases. A final section examines how the various forms of persistence interact with inheritance at both object and type level.
Peter Buneman, Malcolm P. Atkinson 0001
SIGMOD Conference1
1982 An Implementation Technique for Database Query Languages
abstract
Structured query languages, such as those available for relational databases, are becoming increasingly desirable for all database management systems. Such languages are applicative: there is no need for an assignment or update statement. A new technique is described that allows for the implementation of applicative query languages against most commonly used database systems. The technique involves “lazy” evaluation and has a number of advantages over existing methods: it allows queries and functions of arbitrary complexity to be constructed; it reduces the use of secondary storage; it provides a simple control structure through which interfaces to other programs may be constructed; and the implementation, including the database interface, is quite compact. Although the technique is presented for a specific functional programming system and for a CODASYL DBMS, it is general and may be used for other query languages and database systems.
Peter Buneman, Robert E. Frankel, Rishiyur S. Nikhil
ACM Trans. Database Syst.1
1981 Constructing Superviews
abstract
A method is described for integrating two or more databases into a conceptual "superview", through a set of schema transformations. Such integration may be useful when it is required to produce a unified view of two databases while preserving their physical independence. Each transformation defines a mapping of queries against the superview into the appropriate set of queries against the underlying databases and imposes a constraint that is checked when the query is evaluated. A program that interactively aids the user in constructing the superview and that performs this query transformation is being developed.
Amihai Motro, Peter Buneman
SIGMOD Conference2
1980 The Towers of Hanoi Problem
Peter Buneman, Leon S. Levy
Inf. Process. Lett.1
1979 FQL - A Functional Query Language
abstract
An applicative language based upon recent ideas by John Backus has been developed. The language provides a powerful formalism for the expression of complex database queries. Though currently implemented with an interface to a CODASYL system, the language employs a sufficiently general data model that use with other database management systems is possible. This paper describes the language through a number of examples and outlines its implementation.
Peter Buneman, Robert E. Frankel
SIGMOD Conference1
1979 The Problem of Multiple Paths in a Database Schema
Peter Buneman
VLDB1
1979 Efficiently Monitoring Relational Databases
abstract
An alerter is a program which monitors a database and reports to some user or program when a specified condition occurs. It may be that the condition is a complicated expression involving several entities in the database; in this case the evaluation of the expression may be computationally expensive. A scheme is presented in which alerters may be placed on a complex query involving a relational database, and a method is demonstrated for reducing the amount of computation involved in checking whether an alerter should be triggered.
Peter Buneman, Eric K. Clemons
ACM Trans. Database Syst.1
1979 A Space Efficient Dynamic Allocation Algorithm for Queuing Messages
abstract
A simple dynamic allocation algorithm is described for queuing variable length messages in memory. The algorithm makes use of the ability of many operating system to increase and decrease available memory as required. Some results describing its efficiency are presented.
Eric Beyer, Peter Buneman
ACM Trans. Program. Lang. Syst.2