<!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>Crumbs4Cube: Turning Breadcrumbs into Smart Enriched Data Cubes</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Dihia Lanasri</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Selma Khouri</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Roaya Saidoune</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Kamila Boudoukha</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ladjel Bellatreche</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Algiers</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Algeria</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>LIAS/ISAE-ENSMA</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Poitiers</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>France</string-name>
        </contrib>
      </contrib-group>
      <fpage>128</fpage>
      <lpage>132</lpage>
      <abstract>
        <p>Traditionally, companies analyze data that has been extracted from their internal data sources and loaded into data warehouses (DWs). In the digitalization Era, the data that companies are looking for is no longer limited to their internal sources, but also include external resources such as Linked Open Data (LOD). Usually, these sources are composed of two components: datasets and data left behind by people while exploring these data (digital breadcrumbs materialized by SPARQL query logs). Considering the breadcrumbs in the process of DW construction represents a big challenge, due to their volume, variety and the expertise of users generating them. In this paper, we propose Crumbs4Cube, a comprehensive tool for discovering multidimensional patterns from LOD breadcrumbs. It o ers designers mechanisms to manage, investigate and visualize these breadcrumbs before integrating them into a target DW.</p>
      </abstract>
      <kwd-group>
        <kwd>Multidimensional patterns</kwd>
        <kwd>LOD query-logs</kwd>
        <kwd>LOD datasets</kwd>
        <kwd>Smart Data Discovery</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Companies never stop integrating data from their local sources into their data
warehouses (DWs) to get added value. Local sources are usually insu cient to
let these companies being more competitive in making intelligent decisions. In
this context, they are obliged to include smart external resources to enrich their
internal sources to get advanced insights. Under the impulse of the open-world
data, the enrichment technique has shown its bene t in terms of the added
value of designing several constantly evolving digital entities such as knowledge
graphs [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and data repositories [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. This enrichment is usually performed by
resorting to external sources such as sensors, social network messages, and LOD.
These sources are usually composed of two components: (i) datasets and (ii)
the data left behind by people while exploring these datasets. LOD is one of
the valuable external sources. Their principles allow naive and expert people
accessing and retrieving data stored and published via SPARQL endpoints
reecting their requirements. Various initiatives like USEWOD and LSQ collected
Copyright © 2019 for this paper by its authors. Use permitted under Creative
Commons License Attribution 4.0 International (CC BY 4.0).
and published these query-logs that may contain valuable multidimensional
patterns (M DP ) that include facts, dimensions, and hierarchies. Face to this
situation, these crumbs have to be investigated to turn their hidden data into smart
multidimensional data that enriches an existing DW.
      </p>
      <p>
        In the last decade, a couple of studies proposed a materialized integration
of the rst component of the LOD (i.e. the datasets) in the DW design [
        <xref ref-type="bibr" rid="ref4 ref5">4,5</xref>
        ],
where multidimensional models are derived from the LOD datasets. In these
proposals, the LOD datasets undergo the same DW processes performed for
internal sources. Other studies analyzed the LOD dataset via standard OLAP
operations using tools such as SPARQLytics [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. These studies ignore the second
component of the LOD: the query-logs. Integrating these crumbs in the DW
construction is not an easy task, because they are large, contain hidden smart
multidimensional data, do not have the same structure and format (graphs)
as the internal sources. To facilitate this integration, these crumbs have to be
prepared in terms of cleaning, exploration, investigation [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and visualization
in order to extract smart multidimensional data. Once prepared, they will be
integrated into the DW. In this study we focus on the investigation of the
querylogs for discovering M DP [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], the enrichment process of the M DP in an existing
DW is not supported by our tool, it requires schema matching and integration
techniques that have been widely discussed in literature.
      </p>
      <p>In this paper, we propose a tool Crumbs4Cube for augmenting an existing
DW through automatic discovering of M DP from the LOD query logs and
creating their associated conceptual multidimensional graph that can be exploited
by designers to investigate the hidden data in the query logs. This paper is
organized as follows: Section 2 presents the architecture of Crumbs4Cube. Section
3 presents our demonstration and Section 4 concludes our paper.
2</p>
    </sec>
    <sec id="sec-2">
      <title>System Architecture Overview</title>
      <p>Crumbs4Cube generates a conceptual multidimensional graph based on the Fact/
dimension dichotomy. Our application adopts a 3-tiered architecture based on
the MVC framework.</p>
      <p>I) Data layer: in this data layer, Jena TDB triple store is used to persist
the RDF graphs. LOD are de ned using RDF standard presenting data in the
form of RDF graphs. Each RDF statement is a directed labeled graph and takes
the form &lt;s, p, o, g&gt; such that in the graph label g, subject s has the predicate
(i.e. property) p, and the value of that property is the object o. Sparql queries
are de ned for matching a de ned subgraph of triples &lt; s0; p0; o0 &gt; in the queried
RDF graph. For instance, Example 1 illustrates a Sparql query of scholarly data
LOD used in our demonstration:
SELECT DISTINCT ?pred ?author_url ?author_name
WHERE { &lt;uri/conquer-query&gt; bibo:authorList ?authorList. ?authorList ?pred ?author_url .
?author_url foaf:name ?author_name}</p>
      <p>II) Business layer: the di erent modules of Crumbs4Cube (Fig. 1) are
developed using JAVA and the Jena API (ARQ and Core libraries) as follows:
(1) Clean log-queries. It consists in syntactic and semantic cleaning of
SPARQL queries in order to keep valid SELECT queries, using REGEX,
HTMLparser (to decode queries) and ARQ JENA (SPARQL parser).
(2) MDP Exploration. It is the core of our process. It consists in constructing
the star graphs from the cleaned queries using three identi ed scenarios:</p>
      <p>Scenario 1: Aggregate Queries. It starts by identifying the aggregate
queries among the set of valid queries. In such queries, the measures of facts are
already aggregated via functions like: COUNT, SUM, etc. and analyzed by some
dimensions identi ed in the GROUP BY clause, the identi cation of facts and
dimensions is consequently straightforward. Aggregate queries are of the form:
Select ?var1 ?var2 ... ?varn AggFct1(?varx1) ... AggFct(?varxm)}
Where {triple patterns &lt;S,P,O&gt;} Group By ?var1,..., ?varn</p>
      <p>
        Scenario 2: Star Graphs. Unlike the rst scenario, this scenario
investigates the interactions between queries. The M DP [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] are identi ed from the
consolidation of the di erent graphs generated from the all valid queries.
      </p>
      <p>Scenario 3: Enriched Star Graphs. It extends scenario 2 by enriching
the obtained M DP with new concepts identi ed from the LOD dataset.</p>
      <p>For Scenario 1, the following steps are performed for each query: (a)
Aggregate query construction: for identifying the variables in each triple &lt;?S,P,?O&gt;
of the query (like ?pred or ?author url in the query of Example 1 given above),
we de ned BPEnriched function that analyses the queries by: (i) adding a triple
&lt;?S;rdf:type,?type &gt; to retrieve ?type re ecting the concept of ?S (same process
is achieved for variables ?O), (ii) adding a triple &lt;?P;rdf:range,?type &gt; for
identifying the Datatype of property P , (b) Query execution: executes the queries
enriched by the cited triples on the SPARQL endpoint and retrieves the results.
(c) Graph construction: from the obtained results, the process constructs the
multidimensional graph of each query, where: the attributes on which
aggregate functions are applied are considered as measures. The concepts of these
attributes are considered as facts, the concepts associated to the Group By are
considered as dimensions or dimension attributes according to their type. These
M DP are constructed as graphs where the vertex is the fact and dimensions &amp;
attributes are the related nodes.</p>
      <p>
        For scenarios 2 and 3, the following steps are performed: (a) Transform
Select to Construct Query: after enriching the queries using BPEnriched
function, one main step that is speci c to scenarios 2 and 3 is the construction of a
graph re ecting the triple patterns of each query, using a Construct query. (b)
Query Execution: it executes the Construct queries on the SPARQL endpoint
then retrieves the results as an RDF graph. (c) Graph alleviation: It consists
in lightening graphs by removing triples containing generic properties including:
rdf:type, rdf:label, etc. and generic classes like owl:Thing that are not relevant
for M DP . (d) Consolidation: it consists of two main phases: (i) Consolidation
by vertex : the obtained graphs sharing the same vertex are consolidated. (ii)
Consolidation by nodes : for each non-vertex node in a given graph, if it exists
as a vertex in another graph G, the children of this node are consolidated with
this vertex of G. All the following steps are applied for all scenarios.
(4) Graphs alleviation. A valid multidimensional graph has at least a fact
with a dimension and a measure. Non valid graphs are rejected.
(5) Multidimensional Annotation. It allows annotating the
multidimensional graphs by adding triples of type &lt;Class, annotated, Annotation&gt;, such
as: Class represents the node of the graph, and Annotation 2 f Fact, Dimension,
Leveldimension, Factattribute, Dimension Attributes, Measure g.
(6) Graph Enrichment. Following scenario 3, this module looks deeper into
the interactions between the query logs and the LOD dataset. The process starts
exploring new properties and concepts that enrich the obtained multidimensional
graph annotated. For each fact/dimension/level (S) of the consolidated graph,
we look for its related triples &lt; S; P; O &gt; in the LOD knowledge base. For each
resource (O): if P is datatype property, O is considered as an attribute. If P is
a relationship, O is considered as a dimension or level).
(7) Automatic Business Validation. It allows an automatic validation
using a domain ontology if available (or at least Wordnet Ontology) using WS4J
library. Automatic validation rules are checked de ned in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>III) View layer: represents the interfaces of Crumbs4Cube that: (a) help
the designer discovering M DP from LOD. (b) calculate quality metrics
identied (saved in YAML les) of the multidimensional model obtained. This layer is
developed in HTML/CSS/JavaScript(JS), graphs are represented with JS
amCharts4 library. Scala language is used for optimization issues, Apache Maven
and Github for versioning management. The source code of our tool Crumbs4Cube
is available at https://github:com/SaidouneRouaya/cubeQE.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Demonstration Overview</title>
      <p>For the demonstration of Crumbs4Cube, we simulate the process of exploring
LOD query logs using ScholarlyData logs; for business validation we used the
ScholarlyData Ontology. Log les contain 5 485 082 queries. This demonstration
was performed on a machine OS Windows 10, 128 GB of RAM, Processor
Intel(R) Xeon(R) CPU E5-2673 V4 @ 2.30GHz.</p>
      <p>Scenario 1 : a small rate (1,54%) of aggregate queries have been obtained from
the set of valid queries, which impacted the rate of M DP discovered. This
encouraged us to consider the second scenario.</p>
      <p>Scenario 2 : The resulting rate of valid queries in the logs is about 63,24%.
Crumbs4Cube allows the designer to launch the process of generating a
multidimensional graph from the treated queries. For this scenario and after validation,
26 multidimensional graphs have been discovered from the logs.
Scenario 3 : After enriching the multidimensional graph with ScholarlyData
dataset, we obtained new results that show new patterns discovered from the
dataset (Fig.3 for the concept Workshop Events). The tool also provides di
erent metrics for all scenarios, used to evaluate the quality of the discovered M DP ,
they are used to help the BI designer to validate the obtained MD graphs. A
demonstration video is available at https://youtu:be/4Z1X3X12gB4.</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusion</title>
      <p>In this paper, we presented a new tool Crumbs4Cube that discovers M DP from
LOD query-logs exploration. Crumbs4Cube is developed to assist the designer
through di erent modules and allows extracting useful multidimensional insights
that are di cult to explore directly from the dataset without prior knowledge.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Khouri</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lanasri</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saidoune</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Boudoukha</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bellatreche</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Loglinc: Log queries of linked open data investigator for cube design</article-title>
          .
          <source>DEXA</source>
          (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Lehmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , et al.:
          <article-title>Dbpedia - A large-scale, multilingual knowledge base extracted from wikipedia</article-title>
          .
          <source>Semantic Web</source>
          <volume>6</volume>
          (
          <issue>2</issue>
          ),
          <volume>167</volume>
          {
          <fpage>195</fpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Morton</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Balazinska</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grossman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mackinlay</surname>
          </string-name>
          , J.:
          <article-title>Support the data enthusiast: Challenges for next-generation data-analysis systems</article-title>
          .
          <source>Proceedings of the VLDB Endowment</source>
          <volume>7</volume>
          (
          <issue>6</issue>
          ),
          <volume>453</volume>
          {
          <fpage>456</fpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Nebot</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Berlanga</surname>
          </string-name>
          , R.:
          <article-title>Statistically-driven generation of multidimensional analytical schemas from linked data</article-title>
          .
          <source>Knowledge-Based Systems 110</source>
          ,
          <fpage>15</fpage>
          {
          <fpage>29</fpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Rizzi</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gallinucci</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abello</surname>
            ,
            <given-names>M.G.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Romero</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Towards exploratory olap on linked data</article-title>
          .
          <source>In: SEBD</source>
          . pp.
          <volume>86</volume>
          {
          <issue>93</issue>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Romero</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abello</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Automatic validation of requirements to support multidimensional design</article-title>
          .
          <source>Data &amp; Knowledge Engineering</source>
          <volume>69</volume>
          (
          <issue>9</issue>
          ),
          <volume>917</volume>
          {
          <fpage>942</fpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Rudolf</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Voigt</surname>
          </string-name>
          , Lehner,
          <string-name>
            <surname>W.</surname>
          </string-name>
          :
          <article-title>Sparqlytics: multidimensional analytics for rdf</article-title>
          .
          <source>Datenbanksysteme fur Business</source>
          ,
          <source>Technologie und Web (BTW</source>
          <year>2017</year>
          )
          <article-title>(</article-title>
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Salem</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ben-Abdallah</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          :
          <article-title>The design of valid multidimensional star schemas assisted by repair solutions</article-title>
          .
          <source>VJCS</source>
          <volume>2</volume>
          (
          <issue>3</issue>
          ),
          <volume>169</volume>
          {
          <fpage>179</fpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carey</surname>
            ,
            <given-names>M.J.:</given-names>
          </string-name>
          <article-title>An IDEA: an ingestion framework for data enrichment in asterixdb</article-title>
          . CoRR abs/
          <year>1902</year>
          .08271 (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>