Azure Maps:
This is a continuation of a series of articles on
operational engineering aspects of Azure public cloud computing. In this
article, we take a break to discuss a location service named Azure Maps. This
is a full-fledged general availability service that provides similar Service
Level Agreements as expected from others in the category.
Azure Maps is a collection of geospatial services and
SDKs that fetches the latest geographic data and provides it as a context to
web and mobile applications.
Specifically, it provides REST APIs to render vector and raster maps as
overlays including satellite imagery, provides creator services to enable
indoor map data publication, provides search services to locate addresses,
places, and points of interest given indoor and outdoor data, provides various
routing options such as point-to-point, multipoint, multipoint optimization,
isochrone, electric vehicle, commercial vehicle, traffic influenced, and matrix
routing, provides traffic flow view and incidents view, for applications that
require real-time traffic information, provides Time zone and Geolocation
services, provides elevation services with Digital Elevation Model, provides
Geofencing service and mapping data storage, with location information hosted
in Azure and provides Location intelligence through geospatial analytics.
SDKs are also available with flavors suited for desktop
and mobile applications. Both the SDKs are quite powerful and enhance
programmability. They allow customization of interactive maps that can render
content and imagery specific to the publisher. The interactive map uses WebGL
map control that is known for rendering large datasets with high performance.
The SDKs can be used with JavaScript and TypeScript.
Location is a datatype. It can be represented either as a
point or a polygon and each helps with answering questions such as getting top
3 stores near to a geographic point or stores within a region. Since it is a
data type, there is some standardization available. SQL Server defines not one
but two data types for the purpose of specifying location: the Geography data
type and the Geometry data type. The Geography data type stores
ellipsoidal data such as GPS Latitude and Longitude and the geometry data type
stores Euclidean (flat) coordinate system. The point and the polygon are
examples of the Geography data type. Both the geography and the geometry data
type must have reference to a spatial system and since there are many of them,
it must be used specifically in association with one. This is done with the
help of a parameter called the Spatial Reference Identifier or SRID for short.
The SRID 4326 is the well-known GPS coordinates that give information in the
form of latitude/Longitude. Translation of an address to a
Latitude/Longitude/SRID tuple is supported with the help of built-in functions
that simply drill down progressively from the overall coordinate span. A table such as ZipCode could have an
identifier, code, state, boundary, and center point with the help of these two
data types. The boundary could be considered the polygon formed by
the zip and the Center point as the central location in this zip. Distances
between stores and their membership to zip can be calculated based on this
center point. Geography data type also lets us perform clustering analytics
which answers questions such as the number of stores or restaurants satisfying
a certain spatial condition and/or matching certain attributes. These are
implemented using R-Tree data structures that support such clustering
techniques. The geometry data type supports operations such as area and
distance because it translates to coordinates.
It has its own rectangular coordinate system that we can use to specify
the boundaries or the ‘bounding box’ that the spatial index covers.
Mapping the spatial data involves rendering the data as a
layer on top of images. These overlays enhance the display and provide visual
aid to the end-users with geographical context. The Azure Maps Power BI
provides this functionality to visualize spatial data on top of a map. An Azure
Maps account is required to create this resource via the Azure Portal.
Thanks
No comments:
Post a Comment