Global Positioning System Reference
In-Depth Information
providing robust, scalable storage), BlobStore (for serving data objects,
called blobs, that are much larger than the size allowed for objects in the
Datastore service), and MySQL database for storing relational data. Similarly,
Azure provides scalable services for storing blobs, big table (which provides
a structured way of storing non-relational data), and relational data. The
cloud management functionalities can be used to confi gure scalability,
performance, fault tolerance, replication, and availability of the developed
application. Once the confi guration is set, the cloud manages the system
and the main issues which the developer has to deal with is the migration of
applications to the cloud which effectively means adapting the code to the
PaaS architecture. To demonstrate geoprocessing application deployment
in a PaaS cloud Wang et al. (2009) created an application for creating spatial
indexes which was deployed in GAE, Blower (2010) deployed OGC Web
Map Service in GAE, where a WPS-based spatial buffer analysis was
implemented in GAE, and Gong et al. (2010) provided a WPS-based service
for computation of terrain slope on the Microsoft Azure platform.
Notably, this conglomerate of different techniques still does not provide
a semantically adequate level for storing and processing arrays—BlobStore
remains at the level of standard relational databases offering only 1D Blobs
for nD arrays, whereas Array Databases can accommodate the multi-
dimensional nature, thereby being more expressive, effi cient, and also more
fl exible: new algorithms can be formulated as queries by the users and they
do not require additional server-side implementation.
Another criticism of the PaaS-based cloud deployment is that one
cannot control the distribution of the geoprocessing task. The application
logic is not aware of task decomposition and scheduling, hence, each
service request is executed by a processor, and therefore, there is a limit
on how fast the request can be executed. Capacities of the processor can
be increased though, and the data read from the underlying data storage
can be parallelized, and other service requests can be sent to other service
instances, however, this will mean very little for a computation-intensive
application. Therefore, there is the argument for using a framework which
allows one to better control task distribution—a natural argument for the
use of IaaS which is discussed below.
Infrastructure as a Service (IaaS)
In IaaS, computing hardware including memory, processors, storage,
and networking hardware, is offered as service. Typically, the computing
resources are virtualized from a large hardware resource pool in a data
center. Common examples include Amazon Elastic Compute Cloud (EC2)
Search WWH ::




Custom Search