International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Volume XXXIX-B4, 2012
XXII ISPRS Congress, 25 August — 01 September 2012, Melbourne, Australia
temporal criteria and then receive near real-time notifications
containing the data matches the criteria. The remainder of this
section introduces works related to this paper. Then in section
2, we present the proposed system including the system
architecture and details of each component. Section 3 shows
and discusses the preliminary experimental results. Finally,
section 4 offers conclusions and future work.
1.2 Related Works
Publish/Subscribe is a communication model decoupling
publishers and subscribers. Subscribers first register their event
of interest, and asynchronously get notifications of events
generated by publishers. Unlike the point-to-point synchronous
communication model, the asynchronous publish/subscribe
model is more suitable for large-scale distributed applications.
For example, publish/subscribe model has been widely applied
in web blogging with RSS' (RDF Site Summary) and Atom’
technologies. Eugster et al. (2003) wrote a well-cited summary
paper about publish/subscribe systems.
Besides the publish/subscribe system, there are other types of
applications aim on processing streaming data or events, such as
complex event processing (CEP), data stream management
system (DSMS) (similar to event stream processing (ESP)), and
simple event processing. The original designs of these
applications were different. However, as the evolving of these
applications, their functionalities become similar.
Based on their original designs, we can differentiate these
applications by the degree of query complexity they handle. In
general, publish/subscribe systems handled the simplest queries
and simple event processing added filtering functionality on the
basic publish/subscribe. While publish/subscribe and simple
event processing focused on individual events, DSMS and CEP
processed multiple data streams.
There have been many publish/subscribe systems and stream
processing systems. For example, Birman et al. (1987), Powell
(1996), Skeen (1998), TIBCO (1999), Siena (Carzaniga et al.
2001), JEDI (Cugola et al. 2001), and Hermes (Pietzuch 2004)
are the existing works on publish/subscribe system. NiagaraCQ
(Chen et al. 2000), TelegraphCQ (Madden and Franklin 2002;
Chandrasekaran et al. 2003), COUGAR (Bonnet et al. 2001),
PLACE (Mokbel et al. 2005), Tapestry (Terry et al. 1992),
Cayuga (Brenna et al. 2007), StreamBase (2011), Oracle CEP
(2009), Esper (2012), IBM System S (Gedik et al. 2008), and
Microsoft StreamInsight (2012) are the researches related to
data stream processing system.
At the current stage, publish/subscribe systems and DSMS are
similar in terms of their high level architectures and
functionalities. They both allow users to register queries, and
allow data providers to push data to the system through an input
adaptor. Then they both have a continuous query engine to
match the new coming data with the predefined queries. Finally,
they both have an output adaptor to disseminate notifications to
users.
However, as mentioned before, one of the major reasons that
publish/subscribe system is difficult to be applied for sensor
webs is that most of current sensor web services only support
! RSS 20 Specification — (http://www.rssboard.org/rss-
specification)
? Atom wiki (http://www.intertwingly.net/wiki/pie/FrontPage)
pull-based communication model. In other words, there is no
suitable sensor data source for a traditional publish/subscribe
system as they require data to be pushed from data sources,
Therefore, in order to address this issue, this paper proposes a
solution that modifies the input adaptor module in a
publish/subscribe system. Instead of only accept pushed data,
the input adaptor generates requests that pull data from data
sources, and then it pushes the new data to the next module in
the publish/subscribe system. Hence, we this proposed solution
as a hybrid pull-push system.
2. PROPOSED SOLUTION
This paper focuses on the input adaptor module in a
publish/subscribe system to retrieve sensor data from pull-based
sensor web services in a timely manner. Other modules of a
publish/subscribe system, e.g., continuous query engine, are out
of the scope of this paper.
2.1 System Architecture
The proposed input adaptor has three major components,
namely (1) query aggregator, (2) adaptive feeder, and (3) sensor
data cache. With the queries users submit, the query aggregator
first aggregates queries in order to avoid redundant requests.
Then the adaptive feeder tries to get new data with the
aggregated queries in a timely manner. Finally, the sensor data
cache is where the system keeps the sensor data according to the
query criteria. The workflow and architecture is shown in
Figure |.
In this paper, we use OGC SOS as the sensor data source as it is
one of the most popular open standards to share sensor data
online. In addition, OGC SOS also only supports pull-based
interaction model, which matches the major issue we mentioned
earlier.
i Input Adaptor
$ I subscriptions
eee] 0 ow
s I Query Aggregator
|
Les) GJ Pp 4 +
er} |, of a
| sos. € T Adaptive Feeder
ai | i b
I
3 I notifications
I
I Sensor Data Cache
I
Figure 1. System architecture and workflow
In the following two subsections, we present the details of the
query aggregator and the adaptive feeder.
2.2 Query Aggregator
Before presenting the functionality of the query aggregator, We
need to discuss what a query is in the sensor web context. Since
sensors measure a specific physical phenomenon eg, wind
speed) at a certain geographical location and time point, ach
sensor reading contains at least the following five elements,
namely, a physical phenomenon identifier, a measurement
value, a unit of measurement, a geographical location, and à
Intern:
time poii
sensor V
paramete
service |
observati
Therefore
OGC SC
observati
identifier
coverage
time peri
system is
temporal
is called t
are two 0
(the temp
(the start
moving).
type of tei
After defi
present th
Sensor we
input adaj
However,
overlappe:
from sens
spatio-tem
redundant
burden on
sensor dat
aggregator
pull data 1
query aggr
In the qu
Temporal
data loadir
and avoid
key ideas t
First, LOS
temporal f
extents of
Since the
compare s]
out redund
hierarchica
à smaller
memory fc
quadtree as
temporal fr
temporal e»
LOST-Tree
requests, I
volume, wk
footprint an
23 Adapt
After the
unnecessary
the adaptiv
from a pull
New data w
frequently i