Today, Google launched their "Google Maps Data API":
From simple GPS tracks to rich KML documents to collaborative maps,
the geo developer community has continually redefined and enriched the
geoweb, giving rise to better canvases for geographic participatory
culture. Notably, the Google Maps API
and other tools have led to the creation of more dynamic and
interactive content, putting new demands on the ways in which geodata
is stored, accessed, indexed and rendered. To address these challenges,
today we've released the Google Maps Data API in Labs, a Google Data API for viewing, storing and updating geodata on the web.
The Google Maps Data API is built on the following principles:
- Storage should scale simply with usage. You shouldn't have
to worry about maintaining a data store to build a cool Google Maps
mashup. Focus on building the client, and we'll provide hosting and
bandwidth for free.
- Geodata should be accessible across platforms and devices.
With many client libraries and clients, accessing stored geodata should
be possible from anywhere, whether it's on the web, a mobile phone, a
3D application, or even a command line.
- Realtime geodata requires realtime indexing. For a lot of
geographic content, freshness is important. Geodata from the Google
Maps Data API can be instantly indexed and made searchable in Google
- Rendering geodata is better and faster with the right tools.
to provide better ways to render your content to meet platform and
The full announcement can be found on the Google Geo Developers Blog.
The Maps Data API represents maps using KML. Data is read, written, and updated using RESTful HTTP 'GET', 'POST', 'PUT', and 'DELETE' requests and the Atom standard. The GET request is also capable of search requests. Documentation anda developer's guide can be found here.
The Maps Data API appears to be free for personal / free applications, and non-profits. Google have yet to announce commercial costs and licensing but it is probably along the lines of their other mapping licenses.
It looks like the Maps Data API could very useful for the mashup community and for non-profits, as a convenient global 'cloud' store for KML style map data. The data is publically visible and searchable - this makes the data accessible to other users, and Google gain from the 'free data' that they distribute. As it is stored on Google's own servers, map rendering using Google Maps should be quicker than if the data was stored on a third party site (eg. your website or Amazon S3).
So what are the potential downsides, and is it such a big deal? Well there are already alternatives. There's nothing stopping you hosting and managing your own KML files on your website account or through a service like Amazon S3 / Cloudfront. These services will usually be more convenient to manage and they do not tie you to a specific map product. However end user response times are probably slower. Commercial entites and applications will also prefer to keep their data to themselves.
There is also the trust factor. Many people are becoming increasingly worried about Google's market share in a number of areas. Do you really want to give them more data for 'free'? If the market says yes, then the Maps Data API could be a big success.