<!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>Monitoring the Status of SPARQL Endpoints</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Pierre-Yves Vandenbussche</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carlos Buil Aranda</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Aidan Hogan</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jurgen Umbrich</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science, Ponti cia Universidad Catolica de Chile</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Digital Enterprise Research Institute, National University of Ireland</institution>
          ,
          <addr-line>Galway</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Fujitsu (Ireland) Limited</institution>
          ,
          <addr-line>Swords, Co. Dublin</addr-line>
          ,
          <country country="IE">Ireland</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We demo an online system that tracks the availability of over four-hundred public SPARQL endpoints and makes up-to-date results available to the public. Our demo currently focuses on how often an endpoint is online/o ine, but we plan to extend the system to collect metrics about available meta-data descriptions, SPARQL features supported, and performance for generic queries.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Motivation</title>
      <p>In previous work [2], we presented an analysis of the landscape of public
SPARQL endpoints and asked the question: are these endpoints ready for
action?4 Taking the full list of 427 public endpoints from the CKAN/DataHub
catalogue (as available at the time of writing), for each endpoints, we conducted
a number of experiments to gauge the following four main aspects:
Our results showed that about half of the endpoints listed on
CKAN/DataHub are now o ine, that only a few endpoints make meta-data
descriptions available about their content (VoID) or features supported (SPARQL 1.1
Service Descriptions) in easy-to- nd locations, that there was mixed adoption
This work was supported by Fujitsu (Ireland) Ltd. &amp; by Science Foundation Ireland
under Grant No. SFI/08/CE/I1380 (Lion-2). Carlos Buil-Aranda was supported by
CONICYT/FONDECYT project No. 3130617.
4 This work is accepted for the Experiments track of ISWC 2013 [2]. This demo paper
rather focuses on our tool for making results available to the community.
of SPARQL and (recently standardised) SPARQL 1.1 features, that the
performance of di erent endpoints over HTTP for generic queries could vary by
orders of magnitude, and that less than one third of the endpoints had an
average availability in the interval 99{100% (i.e., at least two-nines availability). We
concluded that the usability of di erent public endpoints varies greatly.</p>
      <p>We thus propose a system that tracks and collects metrics about public
endpoints over time. Currently, our service tracks the hourly availability of
endpoints, and we plan to extend it to collect weekly metrics about the available
meta-data, supported features and performance of these endpoints, as well as
other metrics that the community may wish to suggest.</p>
      <p>In Section 2, we rst discuss our current \SPARQL Endpoint Status"
system, available online at http://labs.mondeca.com/sparqlEndpointsStatus/.
Thereafter, in Section 3, we discuss our proposed extensions.
2</p>
    </sec>
    <sec id="sec-2">
      <title>SPARQL Endpoint Status</title>
      <p>Monitoring Availability The system automatically collects and updates a list
of public SPARQL endpoints from the CKAN/DataHub catalogue. These
endpoints are queried on an hourly basis using two alternative SPARQL queries:
ASK WHERE{ ?s ?p ?o . }</p>
      <p>SELECT ?s WHERE{ ?s ?p ?o . } LIMIT 1</p>
      <p>The ASK query on the left is issued rst. If this query fails (from previous
experience, we note that some endpoints do not support ASK [2, x 3]), we try the
SELECT query on the right. Both queries are selected at they should be as cheap
as possible for the endpoint to run: our goal is simply to check whether or not
the endpoint is available for answering queries. If the endpoint returns a valid
SPARQL response for either query, we then say that the endpoint is available
at that timepoint. We also record the time taken for the query to execute.</p>
      <p>At the time of writing, we have collected more than two million hourly pings
across hundreds of endpoints over a period of more than two years. Detailed
analysis of these availability results is available in [2, x 5].</p>
      <p>User Interface We provide a user interface to browse and visualise the hourly
results. The user interface supports two primary views.</p>
      <p>
        The rst view, exempli ed in Figure 1, provides a full list of all the
monitored endpoints, their availability in the past 24 hours (ratio of successful hourly
queries in that period), and their availability in the past seven days. A
green/yellow/red/gray icon indicates, resp., that the endpoint is operating
normally/available but had problems in the past 24 hours/not available currently/not available
once in the past 24 hours. As per the icons listed on the right of the screenshot,
each endpoint is also associated with (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) an RSS feed to provide updates on
availability information, (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) a link to the endpoint itself and (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) a link to the
relevant CKAN/DataHub page for the dataset it relates to.
      </p>
      <p>The second view provides details for a given endpoint. Figure 2 shows an
example screenshot for the DBpedia endpoint. The graph on the left shows the
response times for the last 24 hourly pings to that endpoint. The graph on the
right plots the 24 hour availability for each of the last seven days.
RDF Meta-data Results of the hourly pings are exported as RDF. Figure 3
presents an example description. We reuse existing vocabularies as much as
possible (VoID, dcterms, etc.) to describe each dataset, their related SPARQL
endpoint, title and identi er, etc. To capture availability information, we designed
a new vocabulary (no existing one handled this feature). The \endpoint status"
vocabulary5 (ends) allows the description of a status observation with the
information of date, description (we are here reusing dcterms vocabulary), status
availability and response time. All RDF data are then published in a SPARQL
Endpoint available at: http://labs.mondeca.com/endpoint/ends.
5 http://labs.mondeca.com/vocab/endpointStatus/</p>
    </sec>
    <sec id="sec-3">
      <title>Future Extensions</title>
      <p>
        Our system currently captures endpoint availability and query latency. In line
with the discussion of Section 1 and the methods of our experimental paper [2],
we wish to extend our system to track more metrics about public endpoints.
These would include: (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) what meta-data descriptions about each
endpoint/dataset are available and where (e.g., VoID, SPARQL 1.1 SD), (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ) what query
features each endpoint supports (e.g., SPARQL 1.1, full-text), (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) what
performance can be expected for generic queries (atomic lookups, dump queries,
controlled joins). Since the queries are more expensive to run, we propose
running them on a weekly basis to not overburden endpoints. We would then extend
our UI and RDF vocabulary to make these metrics available. We are very much
open to suggestions/use-cases from the community for collecting further metrics.
Furthermore, we are considering making a locally deployable version for clients
to monitor endpoints of relevance to them.
      </p>
      <p>Acknowledgements: This paper was supported by Fujitsu (Ireland)
Limited, and funded in part by Science Foundation Ireland under Grant No.
SFI/08/CE/I1380 (Lion-2). Carlos Buil-Aranda was supported by the
CONICYT/FONDECYT project No. 3130617.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>K.</given-names>
            <surname>Alexander</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Cyganiak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Hausenblas</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Zhao</surname>
          </string-name>
          .
          <article-title>Describing linked datasets</article-title>
          .
          <source>In LDOW</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>C. B. Aranda</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Hogan</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Umbrich</surname>
            , and
            <given-names>P.-Y.</given-names>
          </string-name>
          <string-name>
            <surname>Vandenbussche. SPARQL WebQuerying</surname>
          </string-name>
          <article-title>Infrastructure: Ready for Action? In ISWC</article-title>
          .
          <source>Springer (LNCS)</source>
          ,
          <year>2013</year>
          . (Accepted; to appear.).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>G. T.</given-names>
            <surname>Williams</surname>
          </string-name>
          .
          <source>SPARQL 1</source>
          .
          <article-title>1 Service Description</article-title>
          .
          <source>W3C Recommendation</source>
          ,
          <year>March 2013</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>