practice
Doi: 10.1145/1364782.1364797
There is more to data access than SQL.
BY maRGo SeLtzeR
Beyond
Relational
Databases
THE NUMBER AND VARIETY of computing devices in the
environment are increasing rapidly. real computers
are no longer tethered to desktops or locked in server
rooms. pdAs, highly mobile tablet and laptop devices,
palmtop computers, and mobile telephony handsets
now offer powerful platforms for the delivery of new
applications and services. these devices are, however,
only the tip of the iceberg. hidden from sight are the
many computing and network elements required to
support the infrastructure that makes ubiquitous
computing possible.
With so much computing power traveling around
in briefcases and pockets, developers are building
applications that would have been impossible just a
few years ago. Among the interesting services available
today are text and multimedia messaging, location-based search and information services (for example,
on-demand reviews of nearby restaurants), and ad hoc multiplayer games.
Over the next several years, new classes
of mobile and personalized services,
impossible to predict today, will certainly be developed.
While these services differ from one
another in major ways, they also share
some important attributes. One—the
focus of this article—is the need for
data storage and retrieval functions
built into the application. Messaging
applications need to move messages
around the network reliably and without loss. Location-based services need
to map physical location to logical location (for example, GPS or cell-tower
coordinates to postal code) and then
look up location-based information.
Gaming applications must record and
share the current state of the game on
distributed devices and must manage
content retrieval and delivery to each
of the devices in real time. In all these
cases, fast, reliable data storage and retrieval are critical.
As soon as the discussion turns to
data storage and retrieval, relational
databases come to mind. Relational
databases have been tremendously
successful over the past three decades
and SQL has become the lingua franca
for data access. While data management has become almost synonymous
with RDBMS, however, there are an
increasing number of applications for
which lighter-weight alternatives are
more appropriate.
This article begins with a brief review of how relational systems came to
dominate the data management landscape, and discusses how the relational
technologies have evolved. It presents
a data-centric overview of today’s emergent applications, and delves into data
management needs for today’s and tomorrow’s applications.
Relational Prehistory
Relational databases came out of research at IBM1, 5 and the University of
California at Berkeley7 in the 1970s. Relational databases were fundamentally
a reaction to escalating costs in deploy-