EDBT 2026 Demo / reviewers in the wild / expert
James F. Terwilliger
dblp:53/1820
· DBLP profile ↗
15ranked-venue papers
7as first author
0since 2021 · last 2015
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Databases, data management, data science and information retrieval · 14 · 7 first-authorArtificial intelligence and machine learning · 1 · 1 first-authorHuman-computer interaction and ubiquitous computing · 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
10 papers |
Data integration and cleaning · 38% Data models and query languages · 27% Query processing and optimization · 17% | |
| Software engineering, system software, and programming languages
1 paper |
Requirements engineering and software design · 100% |
Topics — the 13 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Data integration and cleaning › schema mapping
object-relational mapping |
0.4 | 4 | 2013 | Incremental mapping compilation in an object-to-relational mapping system · SIGMOD Conference 2013 Worry-free database upgrades: automated model-driven evolution of schemas and complex mappings · SIGMOD Conference 2010 Reverse engineering models from databases to bootstrap application development · ICDE 2010 |
Query processing and optimization
query rewriting |
0.3 | 2 | 2014 | Mapping XML to a Wide Sparse Table · IEEE Trans. Knowl. Data Eng. 2014 Mapping XML to a Wide Sparse Table · ICDE 2012 |
Data integration and cleaning › schema mapping
XML-to-relational mapping |
0.3 | 2 | 2014 | Mapping XML to a Wide Sparse Table · IEEE Trans. Knowl. Data Eng. 2014 Mapping XML to a Wide Sparse Table · ICDE 2012 |
Data integration and cleaning
schema mapping |
0.2 | 2 | 2013 | Incremental mapping compilation in an object-to-relational mapping system · SIGMOD Conference 2013 Updatable and Evolvable Transforms for Virtual Databases · Proc. VLDB Endow. 2010 |
Data stream processing
continuous query processing |
0.2 | 1 | 2014 | Trill: A High-Performance Incremental Query Processor for Diverse Analytics · Proc. VLDB Endow. 2014 |
Query processing and optimization › incremental computation
incremental query processing |
0.2 | 1 | 2014 | Trill: A High-Performance Incremental Query Processor for Diverse Analytics · Proc. VLDB Endow. 2014 |
Data models and query languages
XML |
0.2 | 1 | 2014 | Mapping XML to a Wide Sparse Table · IEEE Trans. Knowl. Data Eng. 2014 |
Data models and query languages
XML data management |
0.2 | 2 | 2012 | Mapping XML to a Wide Sparse Table · ICDE 2012 Full-Fidelity Flexible Object-Oriented XML Access · Proc. VLDB Endow. 2009 |
Data models and query languages › schema management
schema evolution |
0.1 | 2 | 2010 | Worry-free database upgrades: automated model-driven evolution of schemas and complex mappings · SIGMOD Conference 2010 Updatable and Evolvable Transforms for Virtual Databases · Proc. VLDB Endow. 2010 |
Database system architecture and tuning › view management
updatable views |
0.1 | 1 | 2010 | Updatable and Evolvable Transforms for Virtual Databases · Proc. VLDB Endow. 2010 |
Data integration and cleaning › data integration system
virtual database |
0.1 | 1 | 2010 | Updatable and Evolvable Transforms for Virtual Databases · Proc. VLDB Endow. 2010 |
Data models and query languages › database programming language
language-integrated query |
0.1 | 1 | 2008 | Language-integrated querying of XML data in SQL server · Proc. VLDB Endow. 2008 |
Requirements engineering and software design
model-driven engineering |
0.0 | 1 | 2010 | Reverse engineering models from databases to bootstrap application development · ICDE 2010 |
Methods — techniques the papers use, named apart from their topics
pattern-finding rules · 0.2join reduction · 0.2dynamic compilation · 0.2batched-columnar data representation · 0.2XPath-to-SQL translation · 0.2roundtrip validation · 0.2NP-hardness analysis · 0.2sparse table mapping · 0.1model-driven engineering · 0.1declarative mapping · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2015 | Tempe: Live scripting for live dataabstractData scientists are increasingly working with live streaming data, for example, business telemetry and signals from wearable devices and the Internet of Things. Unfortunately, current tools for exploratory data analysis provide poor support for streaming data. This paper presents Tempe, a data science environment for temporal and streaming data. Tempe's extensible scripting environment allows for live programming, displays interactive, continually updating visualizations, and provides a uniform query language for both stored and live data. We discuss the streaming features of Tempe and evaluate our design choices with a deployment study at Microsoft with a product team who used Tempe continuously for six months. Robert DeLine, Danyel Fisher, Badrish Chandramouli, Jonathan Goldstein, Michael Barnett 0001, James F. Terwilliger, John Robert Wernsing |
VL/HCC | 6 |
| 2014 | What Can Programming Languages Say About Data Exchange?abstractData Exchange, defined generally, is the process of taking data structured under one schema and transforming it into data structured under another independent schema. This process is present in enough scenarios both theoretical and practical that it has been addressed in many different ways. Most prominent amongst the solutions to the problem is that proposed by database literature, in which one constructs schema mappings, using (a subset of) first-order predicate calculus, to establish the high-level relationship among the database schemas participating in the exchange. From a schema mapping an executable process is derived to per-form the exchange. This line of research has made signifi-cant progress and come to impressive findings, but has some theoretical and practical shortcomings as well. For instance, there are theoretical limitations as to how to compose or in-vert such mappings in a complete and unique way, which is a barrier to making such mappings bidirectional. It is possible to address some of these shortcomings by looking to solu-tions from a different discipline—a construct from the pro-gramming language literature called a lens—that addresses similar problems from a different perspective. By combining solutions from these two disciplines, one ends up with a new direction of research as well as a result that might be greater than the sum of its parts. Michael Johnson 0001, Jorge Pérez 0001, James F. Terwilliger |
EDBT | 3 |
| 2014 | Trill: A High-Performance Incremental Query Processor for Diverse AnalyticsabstractThis paper introduces Trill -- a new query processor for analytics. Trill fulfills a combination of three requirements for a query processor to serve the diverse big data analytics space: (1) Query Model : Trill is based on a tempo-relational model that enables it to handle streaming and relational queries with early results, across the latency spectrum from real-time to offline; (2) Fabric and Language Integration : Trill is architected as a high-level language library that supports rich data-types and user libraries, and integrates well with existing distribution fabrics and applications; and (3) Performance : Trill's throughput is high across the latency spectrum. For streaming data, Trill's throughput is 2-4 orders of magnitude higher than comparable streaming engines. For offline relational queries, Trill's throughput is comparable to a major modern commercial columnar DBMS. Trill uses a streaming batched-columnar data representation with a new dynamic compilation-based system architecture that addresses all these requirements. In this paper, we describe Trill's new design and architecture, and report experimental results that demonstrate Trill's high performance across diverse analytics scenarios. We also describe how Trill's ability to support diverse analytics has resulted in its adoption across many usage scenarios at Microsoft. Badrish Chandramouli, Jonathan Goldstein, Michael Barnett 0001, Robert DeLine, John C. Platt, James F. Terwilliger, John Robert Wernsing |
Proc. VLDB Endow. | 6 |
| 2014 | Mapping XML to a Wide Sparse TableabstractXML is commonly supported by SQL database systems. However, existing mappings of XML to tables can only deliver satisfactory query performance for limited use cases. In this paper, we propose a novel mapping of XML data into one wide table whose columns are sparsely populated. This mapping provides good performance for document types and queries that are observed in enterprise applications but are not supported efficiently by existing work. XML queries are evaluated by translating them into SQL queries over the wide sparsely-populated table. We show how to translate full XPath 1.0 into SQL. Based on the characteristics of the new mapping, we present rewriting optimizations that dramatically reduce the number of joins. Experiments demonstrate that query evaluation over the new mapping delivers considerable improvements over existing techniques for the target use cases. Liang Jeff Chen, Philip A. Bernstein, Peter Carlin, Dimitrije Filipovic, Michael Rys, Nikita Shamgunov, James F. Terwilliger, Milos Todic, Sasa Tomasevic, Dragan Tomic |
IEEE Trans. Knowl. Data Eng. | 7 |
| 2013 | Incremental mapping compilation in an object-to-relational mapping systemabstractIn an object-to-relational mapping system (ORM), mapping expressions explain how to expose relational data as objects and how to store objects in tables. If mappings are sufficiently expressive, then it is possible to define lossy mappings. If a user updates an object, stores it in the database based on a lossy mapping, and then retrieves the object from the database, the user might get a different result than the updated state of the object; that is, the mapping might not "roundtrip." To avoid this, the ORM should validate that user-defined mappings roundtrip the data. However, this problem is NP-hard, so mapping validation can be very slow for large or complex mappings. Philip A. Bernstein, Marie Jacob, Jorge Pérez 0001, Guillem Rull, James F. Terwilliger |
SIGMOD Conference | 5 |
| 2012 | Mapping XML to a Wide Sparse TableabstractXML is commonly supported by SQL database systems. However, existing mappings of XML to tables can only deliver satisfactory query performance for limited use cases. In this paper, we propose a novel mapping of XML data into one wide table whose columns are sparsely populated. This mapping provides good performance for document types and queries that are observed in enterprise applications but are not supported efficiently by existing work. XML queries are evaluated by translating them into SQL queries over the wide sparsely-populated table. We show how to translate full XPath 1.0 into SQL. Based on the characteristics of the new mapping, we present rewriting optimizations that minimize the number of joins. Experiments demonstrate that query evaluation over the new mapping delivers considerable improvements over existing techniques for the target use cases. Liang Jeff Chen, Philip A. Bernstein, Peter Carlin, Dimitrije Filipovic, Michael Rys, Nikita Shamgunov, James F. Terwilliger, Milos Todic, Sasa Tomasevic, Dragan Tomic |
ICDE | 7 |
| 2011 | Microsoft Codename "Montego" - Data Import, Transformation, and Publication for Information Workers
Stephen J. Maine, Lorenz Prem, Clemens A. Szyperski, James F. Terwilliger |
Proc. VLDB Endow. | 4 |
| 2010 | Automated Co-evolution of Conceptual Models, Physical Databases, and Mappings
James F. Terwilliger, Philip A. Bernstein, Adi Unnithan |
ER | 1 |
| 2010 | Reverse engineering models from databases to bootstrap application developmentabstractObject-relational mapping systems have become often-used tools to provide application access to relational databases. In a database-first development scenario, the onus is on the developer to construct a meaningful object layer for the application because shipping tools, as ORM tools only ship database reverse-engineering tools that generate objects with a trivial one-to-one mapping. We built a tool, EdmGen++, that combines pattern-finding rules from conceptual modelling literature with configurable conditions that increase the likelihood that found patterns are semantically relevant. EdmGen++ produces a conceptual model with inheritance in Microsoft's Entity Data Model, which Microsoft's Entity Framework uses to support an executable object-to-relational mapping. The execution time of EdmGen++ on customer databases is reasonable for design-time. Ankit Malpani, Philip A. Bernstein, Sergey Melnik 0001, James F. Terwilliger |
ICDE | 4 |
| 2010 | Worry-free database upgrades: automated model-driven evolution of schemas and complex mappingsabstractSchema evolution is an unavoidable consequence of the application development lifecycle. The two primary schemas in an application, the client conceptual object model and the persistent database model, must co-evolve or risk quality, stability, and maintainability issues. We present MoDEF, an extension to Visual Studio that supports automatic evolution of object-relational mapping artifacts in the Microsoft Entity Framework. When starting with a valid mapping between client and store, MoDEF translates changes made to a client model into incremental changes to the store as an upgrade script, along with a new valid mapping to the new store. MoDEF mines the existing mapping for mapping patterns which MoDEF reuses for new client artifacts. James F. Terwilliger, Philip A. Bernstein, Adi Unnithan |
SIGMOD Conference | 1 |
| 2010 | Updatable and Evolvable Transforms for Virtual DatabasesabstractApplications typically have some local understanding of a database schema, a virtual database that may differ significantly from the actual schema of the data where it is stored. Application engineers often support a virtual database using custom-built middleware because the available solutions, including updatable views, are unable to express necessary capabilities. We propose an alternative means of mapping a virtual database to a physical database that guarantees they remain synchronized under data or schema updates against the virtual schema. One constructs a mapping by composing channel transformations (CTs) that encapsulate atomic transformations --- including complex transformations such as pivoting --- with known updatability properties. Applications, query interfaces, and any other services can behave as if the virtual database is the implemented schema. We describe how CTs translate queries, DML, and DDL, and the properties that are necessary for such translation to be correct. We describe two example CTs in detail, and evaluate an implementation of channels for completeness and performance. James F. Terwilliger, Lois M. L. Delcambre, David Maier 0001, Jeremy Steinhauer, Scott Britell |
Proc. VLDB Endow. | 1 |
| 2009 | Full-Fidelity Flexible Object-Oriented XML AccessabstractDevelopers need to programmatically access persistent XML data. Object-oriented access is often the preferred method. Translating XML data into objects or vice-versa is a hard problem due to the data model mismatch and the difficulty of query translation. We propose a framework that addresses this problem by transforming object-based queries and updates into queries and updates on XML using flexible, declarative mappings between classes and XML schema types. The same mappings are used to shred XML fragments from query results into client-side objects. Information in the XML store that is not mapped using the mapping language, such as comments and processing instructions, are also made available in the object representation. James F. Terwilliger, Philip A. Bernstein, Sergey Melnik 0001 |
Proc. VLDB Endow. | 1 |
| 2008 | Language-integrated querying of XML data in SQL serverabstractDevelopers need to access persistent XML data programmatically. Object-oriented access is often the preferred method. Translating XML data into objects or vice-versa is a hard problem due to the data model mismatch and the difficulty of query translation. Our prototype addresses this problem by transforming object-based queries and updates into queries and updates on XML using declarative mappings between classes and XML schema types. Our prototype extends the ADO.NET Entity Framework and leverages its object-relational mapping capabilities. We demonstrate how a developer can interact with stored relational and XML data using the Language Integrated Query (LINQ) feature of .NET. We show how LINQ queries are translated into a combination of SQL and XQuery. Finally, we illustrate how explicit mappings facilitate data independence upon database refactoring. James F. Terwilliger, Sergey Melnik 0001, Philip A. Bernstein |
Proc. VLDB Endow. | 1 |
| 2007 | Querying through a user interface
James F. Terwilliger, Lois M. L. Delcambre, Judith R. Logan |
Data Knowl. Eng. | 1 |
| 2006 | The User Interface Is the Conceptual Model
James F. Terwilliger, Lois M. L. Delcambre, Judith R. Logan |
ER | 1 |