Skip to main content
eScholarship
Open Access Publications from the University of California

UC San Diego

UC San Diego Electronic Theses and Dissertations bannerUC San Diego

Data Management Issues and Optimizations in an Ajax Application Framework

Abstract

Since 2005, with Ajax functionality becoming a de-facto requirement of cloud-based applications, a developer needs to integrate a plethora of languages in order to deliver even simple data-centric web applications: SQL to access the database, HTML and JavaScript for browser-side interactions, and yet another programming language (e.g. Java) for server-side business logic. Even worse, most of the JavaScript and Java is tedious, imperative code to perform mundane, low-level data integration, coordination and access optimization problems, which result either from language and data heterogeneities, or from the distributed programming necessitated by multiple computation points (browser, application server, database server).

FORWARD is a data-centric, declarative web application development framework that uses SQL++, a minimally enhanced version of SQL as its core programming model. Data from SQL queries can be styled directly with a data-driven page configuration that allows HTML templates and pre-packaged Ajax units (e.g. maps, charts, calendars), thus leading to Ajax pages that are automatically rendered and refreshed. In the majority of applications, no Java or JavaScript is needed.

A central contribution is the provision of a unified, SQL-accessible application state that captures the application's database along with typical web application programming data spaces, such as session and request data. The unified state includes a logical representation of the core page data pertinent to the business logic, thus allowing the SQL-based business logic to easily access page data seamlessly with the rest of the state.

This dissertation also discusses a few key optimization and automation components of FORWARD, which are enabled by FORWARD's declarative approach. FORWARD mapping framework can express SQL++ queries found common in transforming data from one schema to another, and is used extensively in the page layer. A novel ID-based incremental view maintenance (IVM) system takes an algebraic approach and expresses data diffs with IDs, so that diff computation is accelerated as data access is minimized. Furthermore, the IVM system is extended to handle SQL++ query language and schema-less data model.

Main Content
For improved accessibility of PDF content, download the file to your device.
Current View