Geoscience Reference
In-Depth Information
maintains multiple data centers around the world and each would likely have a copy
of the map and satellite image, and any other map that is provided. Combining all of
these data storage costs provides some indication of the importance placed on maps
by Google and other companies. Even governments would have difficulty justifying
the initial and ongoing expense of maintaining an online map in this way.
In a transformation that shows that imitation is the sincerest form of flattery, all
of the other major interactive map providers—MapQuest, Yahoo, Microsoft
(Bing)—converted from the standard server-client to the AJAX, tile-based method
of map delivery within a short time after the introduction of Google Maps. In
addition, they all used the same exact method of tiling with the same divisions. All
of the tiles from the major map providers are inter-changeable—at least by position.
13.3.2 AJAX
The second major innovation brought by Google Maps was the incorporation of
Asynchronous JavaScript and XML (AJAX) in the relationship between the server
and client. This was the culmination of many years of effort to re-shape interaction
on the Internet. Essentially, AJAX maintains a continuous connection with the
server—exchanging small messages in the background even when the user has not
made a specific request. This allows for faster server responses when the user does
make a request. AJAX might be thought of an application that works in the
background of a browser to anticipate what the user might want and be ready to
communicate with the server to respond to a request. Operations in Google Maps
that are particularly assisted by AJAX include zooming and panning, a common
form of interaction with maps.
AJAX is a technique that combines JavaScript and XML to create very interac-
tive, server-client web applications. AJAX is not a programming language in itself,
but a term that refers to the use of a group of different technologies together. The
technique uses a combination of HTML, Cascading Style Sheets (CSS), Document
Object Model (DOM), and the eXtensible Markup Language (XML). These are all
freely available technologies. Asynchronous communication is used to exchange
data with the server while the user is idle so that the entire web page does not have
to be reloaded each time the user makes a change (see Fig. 13.5 ). The result is
increased interactivity, speed, and an improved user interface.
AJAX eliminates the usual start-stop-start-stop type of interaction. When the
map is scrolled, additional map tiles are automatically downloaded. The tiles are
added almost instantly because a connection is maintained to the server so that
additional tiles can be quickly loaded. As the user scrolls, more of the map or
satellite image is downloaded from the server without the user making a specific
request for additional tiles.
Asynchronous communication is made possible by the AJAX engine, JavaScript
code that resides between the user and the server. Instead of loading the webpage at
Search WWH ::




Custom Search