<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Linked Data processing for Embedded Devices</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Anh Le-Tuan</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>INSIGHT Centre for Data Analytics National University of Ireland</institution>
          ,
          <addr-line>Galway</addr-line>
        </aff>
      </contrib-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        An important goal of pervasive computing or the Internet of things(IOTs) is the
enabling of smart services and applications that proactively adapt to the context
of users and surrounding environments [
        <xref ref-type="bibr" rid="ref15 ref20">20, 15</xref>
        ]. In principle, these systems
consist of embedded and networked computing devices that can automatically detect
context and make an appropriate adaptation. However, allowing autonomous
detect of context on the devices is di cult. Data from sensors should be collected
to produce machine readable situational awareness data that allows for the
intelligent response. There are many challenges in representing, integrating and
reasoning on volatile and diverse data.
      </p>
      <p>
        Linked Data provides a promising solution to these di culties. RDF is a well
established data model to describe the semantics of real data [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. As well as
allowing a exible way of integrating heterogeneous data, and RDF ontology-based
context description enables better reasoning and a better sharing contextual
information [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ].
      </p>
      <p>While many embedded devices have enough computing resources and storage
for processing RDF data locally, this is still a challenging task. The existing
RDF libraries for embedded devices are limited in functionality, and the RDF
frameworks for PC-based workstations su er performance issues running on such
devices. Our work aims to a comprehensive, scalable and resourced-awareness
software framework to process RDF data for embedded devices.</p>
      <p>
        In this thesis, we introduce a system architecture that support RDF storage,
SPARQL Query, RDF reasoning and continuous query for RDF stream on
embedded devices. To achieve the e cient performance and scalability, we propose
data management techniques that adapt to hardware characteristics of
embedded devices. Computing resources on embedded devices are constrained, their
usage should be context-dependent. Therefore, we work on an adaptation model
that supports trading o system performance and device resources depending on
their availability. The model is based on the cost model of the data management
techniques.
On a powerful server, Linked Data can be e ciently processed with existing RDF
frameworks such as Sesame [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] or Jena [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. In many context-aware systems [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ],
raw data from connected devices is sent to a server from which contextual
information is created, stored and queried. However, due to the distributed
characteristic of pervasive and IOT environments, the centralised architecture is a
weak point. In such environments, it is provisioned that devices, physical objects
are autonomous, independent, interoperable and easily added or removed [
        <xref ref-type="bibr" rid="ref19 ref7">19, 7</xref>
        ].
      </p>
      <p>Executing the data processing tasks locally on embedded devices might
require much more e orts in optimising the computations or in handling limited
resources. However, devices can be self-contained and be able to operate in
different environments. Furthermore, data transmission costs can be dramatically
reduced as it does not require the transfer of data from a device to a server.
Working independently from a remote server also avoids the requirement for
devices to maintain a frequent connection. Thus, the risks caused by intermittent
connectivity can be reduced. As device data is not stored and processed on a
remote server, the privacy and security concern is also reduced. Finally, by
distributing that computation among a large number of existing devices, a greater
computational scale can be achieved.
3</p>
    </sec>
    <sec id="sec-2">
      <title>Related works</title>
      <p>
        There have been several works that try to ship RDF data processing to
embedded devices. Mobile RDF 1 is a lightweight RDF framework that is suitable for
Java Me. This library allows simple APIs such as creating, parsing and serialising
RDF data, but RDF graph modi cations are not supported. Micro-Jena 2 is an
early adoption of Jena to J2ME that is speci cally developed for Symbian OS.
However,it only provides in-memory processing. AndroJena 3 is another
adoption of Jena that o ers all functionalities as original Jena framework. However,
ignoring the fact that RDF data processing cannot be directly applied to the
mobile setting, Androjena has scalability issue due to memory limitation of
mobile devices (as shown in our experiment). Wiselib tuplestore [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] is a notable
work that is recently introduced. Attempting to tackle the resource constraint,
the authors tried to reduce code size and build a database tailored to embedded
devices. However, this library does not include SPARQL processor or inferencing
engine.
      </p>
      <p>
        In the response to these dependencies, an initial RDF storage solution and
SPARQL query processor for android devices, RDF on the Go has been
developed [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. To overcome the memory limitation of Android, this work uses
a lightweight version of Berkeley DB 4 to store data in the secondary storage.
However, its performance is ine cient due to the slow read operation and write
operation of Berkeley DB. In a better developed version [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], we provide an
Android native RDF storage to adapt to the characteristic of Android devices.
4
      </p>
    </sec>
    <sec id="sec-3">
      <title>Research questions</title>
      <p>Considering the limitations identi ed in previous sections, the main goal of the
research is to enable a scalable and resource-e cient framework for processing
Linked Data on embedded devices. To achieve the research goal, we address the
following research questions:</p>
      <sec id="sec-3-1">
        <title>1 http://www.hedenus.de/rdf/ 2 http://poseidon.ws.dei.polimi.it/ca/?page id=59 3 https://github.com/lencinhaus/androjena 4 http://www.oracle.com/technetwork/ database/berkeleydb/overview/index.html</title>
        <p>Embedded devices are memory-constrained. If main memory is used without
awareness of the limitation, embedded systems face high risk of crashing due
to out-of-memory. The existing pc-based implementations, such as Sesame or
Jena, tend to use GBs main memory as high speed bu er for data processing.
Our experiments show that Sesame, Jena and its ported version for AndoJena
su er in scalability issues due the memory limitation of devices. Therefore, our
rst research question(RQ1) is how to enable a greater scale of RDF data for
memory-constrained devices.</p>
        <p>
          Since memory is limited on embedded devices, and out-of-memory errors
crash applications, data may be frequently written and read from secondary
storage. Embedded devices use ash memory as secondary storage. Data
structures and indexing schemes for traditional magnetic disk work ine ciently on
ash-based storage due to the di erences in physical data management between
these two types of memory medium [
          <xref ref-type="bibr" rid="ref10 ref2">2, 10</xref>
          ]. As in the initial version of RDF on
the go [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ], Berkeley DB could adapt to the low memory environment,
however, it writes and read RDF data very slowly. Hence, the second research
question(RQ2) is how RDF data can be organised so that it may be e ciently
accessed on ash-based storage of embedded devices. To the best of our knowledge,
this question currently has no attention.
        </p>
        <p>Resource availability on embedded devices is hard to predict. For example,
there may be several background services running to collect data, or
connection bandwidth changes due to changing place. Therefore, resource consumption
should be context dependent and may change according to need. For example,
on battery-powered devices, optimising energy consumption to keep devices alive
should be in a high priority. Hence, how to adapt the optimisations in (RQ1)
and (RQ2) to available resources on embedded devices is consequently our third
research question(RQ3).
5</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Hypotheses</title>
      <p>In this section, we present our provisional hypotheses. We expect that more will
become apparent as this research matures:</p>
      <p>H1: A great scale of RDF data can be achieved on embedded devices by
compressing RDF nodes to reduce the memory consumption and use the
secondary storage as extended bu er.</p>
      <p>
        H2: RDF data can be read and written from/to store e ciently if its physical
organisation is applicable to the I/O behaviours of physical storage [
        <xref ref-type="bibr" rid="ref18 ref9">9, 18</xref>
        ].
      </p>
      <p>H3: De ning the cost models of each resources for the system, the resources
consumption can be determined. According to the cost models, resources
consumption can be traded-o depending on their availability.
6</p>
    </sec>
    <sec id="sec-5">
      <title>Approach</title>
      <p>
        Our research goal is to improve the scalability and the resources e ciency of
RDF data processing for embedded devices. This concern is related to database
management's system performance that is strongly impacted by the
characteristic of hardware resources [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Our approach is to adapt embedded database
management to manipulate RDF data. The next two subsections summarise
our system overview the adaptation and appropriate database techniques for
embedded hardware.
6.1 System Overview
Follow the recommendations of designing embedded database [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], the system is
designed as functionalities customisable. That means the applications can chose
and include only the required features. To reduce the memory consumption of
RDF data, we propose using RDF encoding(H1). This compression technique
is commonly used in many triple stores [
        <xref ref-type="bibr" rid="ref23 ref5">23, 5</xref>
        ]. The system includes a shrinking
bu er to claim free memory(H1) when need. In secondary storage, we use data
structure and indexing techniques supporting high throughput to trade o the
I/O asymmetry of ash-based storage(H2). To trade o resource consumption,
optimising execution plans is o ered by an Execution Engine(H3).
      </p>
      <sec id="sec-5-1">
        <title>Decoder</title>
      </sec>
      <sec id="sec-5-2">
        <title>Continuos Query SPARQL Query</title>
      </sec>
      <sec id="sec-5-3">
        <title>Processor Processor</title>
      </sec>
      <sec id="sec-5-4">
        <title>Reasoner</title>
      </sec>
      <sec id="sec-5-5">
        <title>Execution Engine</title>
      </sec>
      <sec id="sec-5-6">
        <title>Bu er Manager</title>
      </sec>
      <sec id="sec-5-7">
        <title>Physical Storage Encoder</title>
        <p>y
r
a
n
o
i
t
c
i</p>
        <p>D
6.2 Adaptation techniques
The hardware characteristics of embedded devices that signi cantly in uence
systems performance of a database management system are the limitation of
main memory and the novel I/O behaviours of ash-based storage. In following,
we propose database techniques to adapt RDF processing data to such hardware
environment(RQ1, RQ2).</p>
        <p>
          Using RDF encoding, RDF nodes are transformed into 32-bit length integers.
Most of the operations of RDF nodes, such as matching during a query execution,
can be performed in the compressed form. Only encoded integers are cached in
main while their string representations are kept on ash storage. When it is
needed, the Decoder will return the original form. To reduce space required to
store the strings, pre x mapping techniques and Hu man coding [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ] are also
applied.
        </p>
        <p>
          Data is read and written from ash-based storage in xed size memory blocks.
Hence, the Bu er Manager and the Physical Storage organise data in memory
blocks of the same size. To avoid out-of-memory errors, the Bu er Manager
writes data to storage to claim free memory. The storage I/O is much slower
than other operations in the system. Therefore, the number of reads and writes
must be reduced as much as possible. In the Bu er Manager, a score is assigned
to each block to detect its access frequency. From the score, the Bu er Manager
chooses and writes the block with the lowest score to the storage and keeps the
more active block in main memory. To manage the intermediated data from
joins, we also use indexes on bags of mapping [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] to optimise bu er size.
        </p>
        <p>
          On ash-based storage, reading is much faster than writing because it has no
mechanical seek latency. Overwriting in ash memory is signi cant slow due to
the erase-before-write limitation [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. To trade o ash I/O asymmetry, to fasten
deallocating data, to support intensive inserting RDF triples, we try to optimise
the write operation of the Physical Storage. Therefore, we use a two-layers index
to manage persistent data. In a le, tuples are sorted lexicographically and are
compressed into xed-size blocks. The spare index holds the positions of data
blocks in the system les, and it is small enough to t into main memory. Each
block is identi ed by its lowest tuple and its highest tuple. Free space is always
left in each data block to insert new tuples. Thus, it only has to update the
modi ed data block instead of resorting the whole le that may require many
rewriting operations. When a block is split for new space, the updated part will
be copied into a new block and is assigned as the last data block of the le. The
old block remains the same, but the sparse index is updated with its new lowest
tuple and highest tuple. This block is updated later when a new tuple arrives. It
might waste space since data blocks in a le are not entirely full, however, this
is a standard strategy (also on non-Flash storage) to trade space e ciency with
performance.
7
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Evaluation plan &amp; Preliminary Results</title>
      <p>To test our approaches, we compare the scalability of our system to other systems
that could run on the same devices( H1, H2). The scalability means that the size
of RDF dataset that the system can support and answer queries in an acceptable
delay. Furthermore, we plan to simulate scenarios of changing resources to test
the resource consumption adaptation model( H3).</p>
      <p>
        The following is our experimental results of our current work's stage. The
experiment evaluates the updating throughput and scalability of RDF storage,
the response time of SPARQL queries processor and the ability of processing
continuous queries. As we have found LUBM's dataset and queries are not
applicable to evaluate reasoners on small devices [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], the evaluation on reasoner is
currently future work.
3,000
2,500
2,000
1,500
1,000
500
      </p>
      <p>
        To set up the evaluation, we implement a testing prototype in Java. On top of
that, we integrate the SPARQL query processor of Jena [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ] and the version for
embedded devices of CQELS [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. We use generated data and SPARQL queries
from BSBM benchmark [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] to test the RDF storage and the SPARQL processor.
The throughput test is a simulation of data growing process by gradually adding
more data. The response time of queries is measured on the same dataset that all
engines can support. On a BeagleBone Black 5, we compare our implementation
RDF 3B with Jena and Sesame. And on an Android tablet Nexus 7 6, we compare
our RDF-OTG with AndroJena and RDF-BDB, which uses Berkeley DB for
RDF storage.
3,500 Ops 3,500 Ops
      </p>
      <p>RDF 3B
JenaTDB
Sesame</p>
      <p>RDF-OTG
TDBoid</p>
      <p>RDF-BDB
3,000
2,500
2,000
1,500
1,000
500</p>
      <p>Number of triples
200,000 400,000 600,000 800,000
Comparison update throughput with Jena and Sesame on</p>
      <p>Beagle Bone Black</p>
      <p>Number of triples
200,000 400,000 600,000 800,000
Comparison update throughput with TDBoid and RDF-BDB</p>
      <p>on Nexus tablet 7
1 1</p>
      <p>The throughput tests results are illustrated in Figure 2 2. On the
BeagleBone, the native store of Sesame and JenaTDB can load 500k triples and 600k
triples. The tests stopped due to out-of-memory errors. Our engine, RDF 3B, can
insert more than 1 million triples with higher throughput. The update
throughput reaches a peak of 3000 operations per second(Ops) and remains stable at
1000 Ops. On the tablet, our system RDF-OTG also shows greater e ciency
in inserting rate and scale. The directly ported version of Jena, the TDBoid
crashed after inserting 200k triples. With the shrinkable mechanism of Berkeley
DB, RDF-BDB does not run out of memory. However, its inserting rate is very
low (10-20 Ops). Thus, we show PC-based implementations work ine ciently on
embedded devices due to the memory constraint. The B++ Tre indexing
technique (of Berkeley BD) may work e ciently on magnetic disk, but it is ine cient
for ash-based storage</p>
      <p>The gure 3 reports the response time of SPARQL queries on respectively
500k triples on the BeagleBone and 200k on the tablet. Jena and Sesame answer
these queries with di erent delays. For example, Sesame answers query 5 faster
than JenaTDB, but it responds more slowly in query 11. On the tablet, the
performance of RDF-BDB is much slower than RDF-OTG and TDBoid due to
the latency in Berkeley DB. For example, it can not answer query 1 and query 5</p>
      <sec id="sec-6-1">
        <title>5 https://beagleboard.org/black 6 https://en.wikipedia.org/wiki/Nexus 7 (2012)</title>
        <p>less than 20 seconds. Overall, in our test, our framework can answer all SPARQL
queries less than 4 seconds on the BeagleBone Black and 16 seconds on the
tablet. However, as we reuse the SPARQL processor of Jena, our implementations
perform slightly better than Jena because it can access RDF data on ash faster.
4.55 JReSnDeasFaTmD3BeB 1280 RRTDDDFFB--OBoDTidGB
4 16
3.5 14
) 3
cond
(se 2.5
e
m
iT 2
) 12
cond
(se 10
e
m
iT 8
1.5
1
0.5
0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q10 Q11
Comparison query response time with Jena and Sesame on</p>
        <p>Beagle Bone Black
6
4
2
0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q10 Q11
Comparison query response time with TDBoid and</p>
        <p>RDF-BDB on tablet Nexus 7</p>
        <p>Fig. 3. Query response time
1 1</p>
        <p>
          We test the continuous query processor in the scenario of event
processing [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. It can process an average of 50 events per second on the Beagle Bone
Black. The memory pro ling shows that for the same size of data, our testing
applications consume one-third memory as Jena does and a half as much as
Sesame requires.
8
        </p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Re ections</title>
      <p>This work aims to adapt embedded database management for e cient
processing RDF data on embedded devices. This work is based on the understanding
of database management techniques and embedded devices' architecture and
RDF data processing. Our initial results promisingly show that database
optimisations can support better scalability and performance for RDF data on
embedded devices.</p>
      <p>From the experiment results, we have found interesting opportunities to
improve our system. For example, in the SPARQL query processor, the algorithm
of Sesame can be applied to execute query 5, and in query 11 we use Jena's.
Furthermore, a scalable reasoner can be achieved by leverage the high throughput
storage to store the materialised triples which are derived from forwarding rules.
It can be assumed that using a persistent triple storage to store derived triples
will reduce the memory consumption and the cost of re-materialising data. If the
RDF Dictionary on di erent devices can be e ciently synchronised, the transfer
of RDF data between devices is fastened since only the encoded integer need to
be sent.</p>
      <p>Finally, we believe our software framework could support a scalable and
e cient RDF data processing for pervasive and IOTs applications.</p>
      <p>Acknowledgement: This thesis is funded by Irish Research Council under
Grants No. GOIPG/2014/917 and supervised by Dr. Danh Le-Phuoc and Dr.
Conor Hayes.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>A.</given-names>
            <surname>Ailamaki</surname>
          </string-name>
          .
          <article-title>Databases and Hardware: The Beginning and Sequel of a Beautiful Friendship</article-title>
          .
          <source>Proceedings of the VLDB</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>D.</given-names>
            <surname>Ajwani</surname>
          </string-name>
          , I. Malinger, U. Meyer, and
          <string-name>
            <given-names>S.</given-names>
            <surname>Toledo</surname>
          </string-name>
          .
          <article-title>Characterizing the performance of ash memory storage devices and its impact on algorithm design</article-title>
          .
          <source>WEA</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>P.</given-names>
            <surname>Barnaghi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Henson</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Taylor</surname>
          </string-name>
          .
          <article-title>Semantics for the internet of things: Early progress and back to the future</article-title>
          .
          <source>Int. J. Semant. Web Inf. Syst.</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>C.</given-names>
            <surname>Bizer</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Schultz</surname>
          </string-name>
          . The Berlin SPARQL Benchmark.
          <source>International Journal on Semantic Web and Information Systems</source>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>J.</given-names>
            <surname>Broekstra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kampman</surname>
          </string-name>
          , and
          <string-name>
            <surname>F. van Harmelen. Sesame :</surname>
          </string-name>
          <article-title>A generic architecture for storing and querying rdf and rdf schema</article-title>
          .
          <source>ISWC</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>M. D'Aquin</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Nikolov</surname>
            , and
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Motta</surname>
          </string-name>
          .
          <article-title>How much semantic data on small devices?</article-title>
          <source>EKAW</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>H.</given-names>
            <surname>Hasemann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kroller</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Pagel</surname>
          </string-name>
          .
          <article-title>RDF provisioning for the internet of things</article-title>
          .
          <source>International Conference on the Internet of Things</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>H.</given-names>
            <surname>Hasemann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kroller</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Pagel. The Wiselib TupleStore : A Modular RDF</surname>
          </string-name>
          <article-title>Database for the Internet of Things</article-title>
          .
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Hector</given-names>
            <surname>Garcia-Molina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Ullman</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Widom</surname>
          </string-name>
          .
          <source>Database systems The Complete Book</source>
          .
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. I. Koltsidas and
          <string-name>
            <given-names>S. D.</given-names>
            <surname>Viglas</surname>
          </string-name>
          .
          <article-title>Data management over ash memory</article-title>
          .
          <source>SIGMOD</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>D.</surname>
          </string-name>
          Le-phuoc.
          <article-title>A Native and Adaptive Approach for Linked Stream Data Processing</article-title>
          .
          <source>PhD thesis</source>
          , NUI Galway,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>D.</surname>
            Le-Phuoc,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Dao-Tran</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Le-Tuan</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Nguyen-Duc</surname>
            , and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Hauswirth</surname>
          </string-name>
          .
          <article-title>Grand Challenge : RDF Stream Processing with CQELS Framework for Real-time Analysis</article-title>
          .
          <source>DEBS</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>D.</surname>
            Le-phuoc, A. Le-tuan, G. Schiele, and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Hauswirth</surname>
          </string-name>
          .
          <source>Querying Heterogeneous Personal Information on the Go. ISWC</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>D.</surname>
            Le-phuoc,
            <given-names>J. X.</given-names>
          </string-name>
          <string-name>
            <surname>Parreira</surname>
            , and
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Reynolds. RDF</surname>
          </string-name>
          <article-title>On the Go: An RDF Storage and Query Processor for Mobile Devices</article-title>
          . In ISWC,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>D.</given-names>
            <surname>Miorandi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Sicari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>De Pellegrini</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Chlamtac.</surname>
          </string-name>
          <article-title>Internet of things: Vision, applications</article-title>
          and research challenges.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>M.</given-names>
            <surname>Miraoui</surname>
          </string-name>
          .,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tadj</surname>
          </string-name>
          , and
          <article-title>Chokri ben Armar. Architecuture survey of contextaware system in pervasive computing environment</article-title>
          .
          <source>UbiComp</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>A.</given-names>
            <surname>Nori</surname>
          </string-name>
          .
          <article-title>Mobile and embedded databases</article-title>
          .
          <source>In SIGMOD</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>A.</given-names>
            <surname>Owens</surname>
          </string-name>
          .
          <article-title>Using Low Latency Storage to Improve RDF Store Performance</article-title>
          .
          <source>PhD thesis</source>
          , University of Southampton,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>M.</given-names>
            <surname>Satyanarayanan</surname>
          </string-name>
          .
          <article-title>Pervasive computing: Vision and challenges</article-title>
          .
          <source>IEEE Personal Communications</source>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>B.</given-names>
            <surname>Schilit</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Adams</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Want</surname>
          </string-name>
          .
          <article-title>Context-Aware Computing Applications</article-title>
          . WMCSA,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>M.</given-names>
            <surname>Sharma</surname>
          </string-name>
          .
          <source>Compression Using Hu man Coding. IJCSNS</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>T.</given-names>
            <surname>Strang</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Linnho -Popien. A Context Modeling</surname>
          </string-name>
          <article-title>Survey</article-title>
          .
          <source>UbiComp</source>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <given-names>K.</given-names>
            <surname>Wilkinson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Sayers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Kuno</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Reynolds</surname>
          </string-name>
          .
          <article-title>E cient RDF storage and retrieval in Jena2</article-title>
          . SWDB,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>