<!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>teepee - A Triple Pattern Fragment Pro ler Visualization Tool</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Lars Heling</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Maribel Acosta</string-name>
          <email>acostag@kit.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute AIFB, Karlsruhe Institute of Technology (KIT)</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Triple Pattern Fragments (TPFs) is a low-cost interface for querying knowledge graphs on the web. In this work, we present teepee, a visualization tool for analyzing the pro ling results of TPF performance. Moreover, teepee allows for comparing the performance of di erent congurations of TPF servers. Attendees will observe how the execution of requests against TPFs is impacted by i) the type and cardinality of the requested triple patterns, and ii) network delays and server workload. The demo is available at http://km.aifb.kit.edu/services/teepee/.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>{ The online demo of teepee1, which includes a basic setup of the TPF Pro ler
with a limited con guration for the sake of performance.
{ The source code of teepee, which is available as part of the TPF Pro ler
repository2 and can be adjusted and executed locally.</p>
      <p>teepee</p>
      <p>TPF Profiler
Sampling</p>
      <p>Triple Pattern</p>
      <p>Generation</p>
      <p>Response Time
Measurement</p>
      <p>
        View
Results
Compare
Results
teepee includes three components for visualizing the performance results of TPFs
(cf. Figure 1): TPF Pro ler, View Results, and Compare Results.
TPF Pro ler [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The rst component of teepee invokes the TPF Pro ler. Given
the URI of a TPF server and a sample size, the TPF Pro ler collects performance
measurements when submitting di erent requests to the server in three steps.
First, the TPF Pro ler randomly selects a sample of RDF triples from the KG via
the TPF server. In the second step, a set of triple patterns is generated based on
the sampled triples by replacing RDF terms with variables. In the third step, the
TPF Pro ler executes the triple patterns previously generated sample against
the TPF server and record the measured response time per request.
View Results. After the measurement is completed, the results generated by
the pro ler can be viewed. The visualizations when viewing the results are
separated into two major section. In the rst section, visualization of the response
time with respect to the triple pattern type and answer cardinality are shown.
In the second section, the sample used for the measurement is visualized.
Compare Results. For the comparison of di erent measurements, teepee
provides an A/B comparison visualization view. The view allows for selecting two
results and visualizes the results next to each other. This facilitates, for instance,
a direct comparison of di erent TPF server con gurations.
3
      </p>
    </sec>
    <sec id="sec-2">
      <title>Demonstration of Use Cases</title>
      <p>The attendees of the demo will learn how teepee can be used to gain insights into
TPF server performance using its visualization capabilities. The two use cases
can be followed using the online version of teepee1 which includes the examples
used in this demonstration. In the online demo, the users are encouraged to
generate results themselves by con guring and running the TPF Pro ler.
Impact of triple pattern properties on TPF performance. First, we
select View Results to retrieve a list of all available results generated by the TPF
Pro ler. In the list, the examples are listed rst. User-generated results are listed
below (indicated by an ID starting with \U"). Next, we select View Results of
Example 1. The view shows metadata on the top, indicating that the results
are for the DBLP KG with a sample size of m = 100, page size of 100, HDT
(a) Response Time Visualization
(b) Sample Visualization
backend and a remote server. Below, the visualizations show the response times
for analyzing di erent factors. As shown in Figure 2a, the response times are
visualized as boxplots for the di erent triple pattern types. Hovering over the
boxplot shows detailed information of the results. In the example, we can
observe, that the triple pattern type has an impact on the response time as the
boxplots vary in shape and position. The pattern type hv; r; vi shows the
highest median response time. Moreover, the results are visualized according to the
answer cardinalities of the triple patterns. The results of the example show a
slight increase in the response time for larger answer cardinalities. Additionally,
it can be observed that there are no triple patterns with an answer cardinality
within the range of 1 104 and 1 106 answers. Most triple patterns show a
cardinality below 50 which may allow for optimizing the server performance by
reducing its page size. This assumption can be analyzed further using the A/B
comparison visualizations presented in the next use case. Furthermore,
information on the sampled triples by the TPF Pro ler is provided as well. The number
of samples is listed as well as the number of the unique triple patterns
generated from the sample. Moreover, the number of distinct subjects, predicates, and
objects in the triple patterns are provided allowing to gain an insight into the
RDF term distribution. Shown in Figure 2b, all terms in the sample are listed
and connected if they commonly occur in the same triple. Furthermore, links for
all positions in the triples are added. Hovering over \Subjects" for instance will
indicate all terms that occur as subjects in the sample. In the example, the term
foaf:maker is selected and it can be observed that it occurs in a large number
of triples within the sample.</p>
      <p>(a) Boxplot A/B comparison
(b) Radar plot A/B comparison
Impact of di erent servers via A/B comparison. Second, we select
Compare Results to visualize the results in an A/B comparison to gain insights into
how di erent TPF server con gurations a ect response times. Therefore, we
select Example 2 and Example 6, which are the results for the DBpedia KG di ering
in the TPF server environment. The server in Example 2 is a publicly available
TPF server hosted remotely at http://data.linkeddatafragments.org. The
server in Example 6 is hosted locally. In Figure 3a, the response times for a
selection of triple pattern types are shown with results for the remote server on the
left and for the local server on the right. Two major insights can be gained from
this visualization. First, we observe that the response time for the remote server
is 10 times higher than for the local server. This indicates that network
delays and server workload are in uencing the response time for the remote server.
Second, the response time for the pattern type hv; v; vi is lower with respect
to the other pattern types on the remote server. This result suggests that the
publicly available server caches the results for this triple pattern type. This is
probably due to the fact that hv; v; vi is requested frequently, e.g. each time the
web page of the TPF server is loaded. The radar plot in Figure 3b supports the
comparison by visualizing various statistics of the response time.
4</p>
    </sec>
    <sec id="sec-3">
      <title>Conclusions</title>
      <p>This demo presents teepee, a tool that combines the TPF Pro ler with
visualization capabilities to enable analyses of TPF performance. teepee allows for
gaining a better understanding of how di erent factors impact on the
performance of TPF servers. In two use cases, the attendees are able to analyze and
compare empirical results over well-known KGs using teepee.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Heling</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Acosta</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maleshkova</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sure-Vetter</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Querying large knowledge graphs over triple pattern fragments: An empirical study</article-title>
          .
          <source>In: ISWC</source>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Verborgh</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Vander</given-names>
            <surname>Sande</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Hartig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            ,
            <surname>Van Herwegen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>De Vocht</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>De Meester</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Haesendonck</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            ,
            <surname>Colpaert</surname>
          </string-name>
          ,
          <string-name>
            <surname>P.</surname>
          </string-name>
          :
          <article-title>Triple pattern fragments: A lowcost knowledge graph interface for the web</article-title>
          .
          <source>Web Semantics: Science, Services and Agents on the World Wide Web</source>
          <volume>37</volume>
          ,
          <issue>184</issue>
          {
          <fpage>206</fpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>