<!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>Lessons Learned and Research Agenda for Big Data Integration of Product Speci cations (Discussion Paper)</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Luciano Barbosa</string-name>
          <email>luciano@cin.ufpe.br</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Valter Crescenzi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Xin Luna Dong</string-name>
          <email>lunadong@amazon.com</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Paolo Merialdo</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Federico Piai</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Disheng Qiu</string-name>
          <email>disheng@wanderio.com</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Yanyan Shen</string-name>
          <email>shenyy@sjtu.edu.cn</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Divesh Srivastava</string-name>
          <email>divesh@research.att.com</email>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Roma Tre University</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Shanghai Jiao Tong University</institution>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Universidade Federal de Pernambuco</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2018</year>
      </pub-date>
      <fpage>24</fpage>
      <lpage>27</lpage>
      <abstract>
        <p>The product domain represents a challenging scenario for developing and evaluating big data integration solutions: the number of sources providing product speci cations is very large, and ever increasing over time. The volume of available data is impressive, and these data keep changing very frequently. In this paper, we present ongoing e orts, challenges and our research agenda to address big data integration for product speci cations.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>This paper describes our recent experiences dealing with the issue of extracting
and integrating data from product speci cation pages on the Web, the challenges
that we encountered and opportunities we leveraged. We provide an overview
on our ongoing research activities on this problem, we discuss the lessons that
we have learned from our experience, and illustrate open problems and future
directions.</p>
      <p>Integrating data from the product domain represents a challenging issue,
presenting most of the di culties associated with big data solutions at the web scale.
Thousands of websites contain an impressive number of product pages. Each page
provides information about a single product: usually general product speci
cations (typically technical and physical features), and some source-speci c data,
such as, price and customers' reviews.</p>
      <p>
        Integrating product data might enable many valuable applications, such as
data driven market analysis, question answering, and price comparison. However,
data integration at the web-scale raises intriguing challenges due to the volume,
variety, velocity, and veracity of data [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
{ In this context, the volume of data refers not only to the large number of
products but, even more importantly, to the number of sources. In order to
achieve coverage and diversity, we need to process a very large number of
sources across the entire web, not just a small number of pre-selected sources.
{ The variety of data is directly in uenced by the number of sources and
arises at many di erent levels, a ecting every task of our pipeline. At the
product category level, websites, especially the head ones, organize products
according to such a vast plethora of categorization strategies that it gets
very di cult, if not impossible, to reconcile them into a uni ed taxonomy.
At the product description level, heterogeneities are related to attributes
and values, which are published according to di erent granularities (e.g.,
physical dimensions in one eld vs three separate elds for width, length,
height), formats (e.g., centimeters vs inches) and representations (e.g., the
color of a product as a feature vs distinct products for di erent colors).
{ The Velocity of data concerns the rate of appearance and disappearance of
pages in sources as well as the rate of appearance and disappearance of web
sources. Also, while some attributes (such as technical and physical features)
are quite stable over time, the contents of the individual pages can change
daily, for example for prices and reviews.
{ The Veracity of data deals with honest mistakes that can occur in web pages,
but also with deceits, that is, deliberate attempts to confuse or cheat (e.g.,
providing imprecise or erroneous product characteristics).
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>End-to-End Data Integration Pipeline</title>
      <p>To address the above challenges, we are working on an end-to-end data
integration solution for product speci cation pages. For simplicity of presentation, we
describe our approach as a linear pipeline, as depicted in Figure 1, where tasks
are performed in sequence and independent of one another. However, there might
be feedback loops between the tasks, as intermediate results can indeed in uence
the performance and the behavior of the preceding tasks and of the end to end
solution.</p>
      <p>
        In our vision, the information need is expressed by an input set of sample
pages. We observe that products are typically organized in categories, and hence
we expect that the sample pages refer to products from the categories of interest.
Our approach is inspired by the Open Information Extraction [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] paradigm: the
schema for the target data is not speci ed in advance, and the categories of the
target products do not refer to a prede ned product taxonomy, but they are
rather inferred from data in the product pages of the input sample and in the
product pages that are gathered from the Web along a progressive and iterative
process.
      </p>
      <p>
        Every task produces output to feed the successive task in the pipeline, but
intermediate results could nd other compelling application scenarios as well.
To this end, we advocate that the pipeline must include an empirical evaluation
benchmark for every task.
Source
Discovery
Evaluation
Evaluation
Evaluation
Evaluation
Evaluation
Source discovery aims at e ciently nding and crawling product websites in
order to gather pages that refer to the products of interest. One might believe
that discovering product websites is a minor task, as a relatively small number
of head sources can o er enough data for most of the products. For example,
amazon.com already provides data about an impressive number of products.
However, valuable information is actually published by an enormous number
of tail sources [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ], i.e., sources that each provide a small number of product
entities. These tail sources are important because they improve coverage. They
can often o er tail entities, i.e., products that are present in a small number
of sources, as well as tail attributes, i.e., product properties that are present in
a small number of entities. Also, tail sources ofter refer to tail categories, i.e.,
small niche categories of products. Finally, tail sources contribute to information
diversity, as they provide values that depend on the local source, such as, product
reviews and price.
      </p>
      <p>Data discovery and extraction has the objective of processing the pages
harvested in the previous task in order to locate and extract product attribute
names and their values. As we mentioned above, we do not rely on a prede ned
schema, but rather extract attributes bottom-up, with the goal of discovering
not just head attributes, but also tail attributes that cannot always be described
in advance.</p>
      <p>
        Data linkage seeks to cluster pages from di erent sources that refer to the same
products. It is worth observing that in the traditional data integration pipeline,
schema alignment is performed before record linkage [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Unfortunately, with
a very large number of sources, such a traditional approach becomes infeasible
because of the huge variety and heterogeneity among attributes. We propose then
to perform data linkage before schema alignment as we can take advantage of the
opportunity that products are named entities, and hence a product speci cation
page usually publishes the product identi er.
      </p>
      <p>Schema alignment addresses the challenge of semantic ambiguity and aims
to reconcile the attributes o ered by di erent sources, that is, to understand
which attributes have the same meaning and which ones do not, as well as
identify value transformations to normalize di erent representations of the same
attribute values. Since we do not rely on a global schema given in advance,
correspondences among attributes are established bottom-up leveraging the results
of the previous data extraction and data linkage phases.
Data fusion tackles the issue of reconciling con icting values that may occur
for attributes from di erent sources. Data fusion aims at evaluating the
trustworthiness of data, deciding the true value for each data item, and the accuracy
of the sources. To address these challenges, data fusion techniques rely on data
redundancy, which further motivates the need to process many sources.
2.1</p>
      <p>Our approach: redundancy as a friend
Our approach to develop the above pipeline aims at taking advantage of the
opportunity that products are named entities, and hence a product speci cation
page usually publishes the product identi er. Web sources that deliver
product speci cation pages publish product identi ers mainly for economic reasons:
websites need to expose the product identi ers to let them be indexed by
shopping agents and available to customers who search products for comparing prices
or consulting speci cations. Large e-commerce marketplaces strongly encourage
sellers and retailers to publish product identi ers, as they improve e ciency
both for the internal management of data and for the exchange of data with
search engines like Google and Bing.</p>
      <p>The presence of identi ers allows us to drive the pipeline from source
discovery to data integration by leveraging the opportunity of redundancy of
information at the global level, and the homogeneity of information at the local
level.</p>
      <p>{ At the global level, we observe that head (popular) products are present in
several head (large) sources as well as in many tail (small) sources. Therefore,
we expect that identi ers of head products are spread across many sources.
Further, many head products in a category will often co-occur in multiple
sources.
{ At the local level, we observe that the structure and the semantics of
information, within each source, tend to be regular. Hence, we expect the product
speci cation and product identi ers presented in a given page are published
according to the same structure for every page in the same source.</p>
      <p>Figure 2 illustrates the key intuitions underlying our approach from source
discovery to data integration to meet the goal of e ectively and e ciently
dealing with head and tail sources, hence including all pages of head and tail entities.
Starting from known head entities in head sources, we take advantage of
homogeneity of information at the local level to extract product speci cations and
identi ers for tail entities in head sources (even head sources o er many tail
entities). Then, we exploit the presence of head entities across sources: searching
head identi ers, we discover tail sources (even tail sources o er a few head
entities). Again, we exploit homogeneity of information at the local level to extract
identi ers and speci cations for tail entities in tail sources.</p>
      <p>eBay, Amazon, Google Shop explicitly require sellers to publish the id for many
product categories. For example, see eBay's rules:
http://for-business.ebay.com/product-identi
ers-what-they-are-and-why-they-areimportant.</p>
      <p>
        Based on our Redundancy as a friend approach, we developed a focused
crawler, Dexter [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], to discover and crawl product web sites o ering product
pages for the input categories. Dexter starts from a seed set of product pages,
and iteratively discovers and crawls new sources, from which extracts products
speci cations. Then, we developed a big data linkage approach speci cally
tailored for product pages that takes advantage of the redundancy of information
at a global level, and homogeneity of structure and semantic at the individual
source level [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>Lessons Learned and Research Agenda</title>
      <p>
        In an experimental evaluation performed between Sept 2014 and Feb 2015, we
have trained the focused Dexter crawler [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] to gather product pages from 10
coarse categories: camera, cutlery, headphone, monitor, notebook, shoes,
software, sunglasses, toilet accessories, televisions. The crawler discovered 3.5k
websites, for a total of 1.9M pages. Each website contributed to provide pages for the
di erent categories, and pages were grouped into 7; 145 clusters, corresponding
to the local categories exposed by the websites (on average every websites has 2
local categories). The dataset is publicly available on-line.
      </p>
      <p>
        Building a Benchmark Product Dataset { We compared the contents of our
dataset with pages in Common Crawl, an open repository of web crawl data.
About 68% of the sources discovered by our approach were not present in
Common Crawl. Only 20% of our sources contained fewer pages than the same sources
in Common Crawl, and a very small fraction of the pages in these sources were
product pages: on a sample set of 12 websites where Common Crawl presented
Note that the on-line version (https://github.com/disheng/DEXTER) is an
extension of the dataset presented in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
http://commoncrawl.org/
more pages than in our dataset, we evaluated that only 0.8% of the pages were
product pages.
      </p>
      <p>These results suggest the critical need for the community to build a suitable
benchmark product dataset to conduct big data research. Our dataset can be
considered a rst step in this direction. Another important step would be that
of maintaining the dataset over time, as discussed next.</p>
      <p>Maintaining the Benchmark Product Dataset: Addressing the Velocity Challenge
{ In March 2018, we have checked all the URLs of the pages of the dataset.
We have observed that just 30% of the original pages and 37% of the original
sources are still valid (we consider a source valid if it contains at least one
working URL). We also performed an extraction of the product speci cations.
We obtained complete speci cation from just 20% of the pages.</p>
      <p>These numbers clearly indicate that the velocity dimension a ects all the
tasks of the pipeline. Developing solutions to collect snapshots over regular time
intervals and perform data integration over time can open intriguing research
directions. While some activities, such as checking the appearance/disappearance
of sources can be done on monthly basis, others, such as crawling web sites to
check appearance/disappearance of pages and changes in the pages should be
performed more frequently. To this end, the development of e cient incremental
solutions for source discovery and web crawling represent interesting research
directions.</p>
      <p>As our experiments emphasize, data extraction rules are brittle over time.
The development of wrappers resilient to changes in the pages has always been
a primary goal in data extraction research. A dataset with multiple snapshots
over a long interval of time, as the one that we have advocated above, could
serve as a benchmark for data extraction solutions.</p>
      <p>Harnessing Velocity { We observe that while velocity represents a challenge, it
could also become an opportunity. We observe that analyzing changes in the
pages could help improve our data extraction and data linkage techniques.</p>
      <p>For example, one of the main challenges of the product identi er extraction
step is to eliminate identi ers that refer to suggested and related products,
instead of the main product of the page. Examining the same product page over
time may help us to more easily separate out the former part, since those may
change faster over time than the description of the product in the page.
Schema Alignment { We are currently working on the development of techniques
to perform schema alignment for our product domain. The main di culties that
we have to face are due to the heterogeneity at the schema and at the instance
level, due to the large number of independent sources.</p>
      <p>To give a concrete example of the heterogeneity at the schema level, consider
the dataset collected using the Dexter crawler, described earlier in this section.
The speci cations extracted from these sources contain more than 86k distinct
attribute names (after normalization by lowercasing and removal of non
alphanumeric characters). Most of the attribute names (about 85k) are present in
less than 3% of the sources, while only 80 attribute names occur in 10% of the
sources, with the most popular attribute name occurring in just 38% sources.</p>
      <p>The solution that we are investigating exploits data linkage to cluster
attributes that share the same values. Since heterogeneity occurs also at the
instance level, we aim at progressively nding correspondences between the cluster
resolving increasingly complex matches between values with di erent
representations.</p>
      <p>Addressing the Veracity Challenge and Data Fusion { Analyzing the sources of
our dataset we noticed that some clusters contain product pages from di
erent categories. In some cases, the errors are in the sources: some websites adopt
unexpected (or even completely wrong) criteria as, for example, classifying
monitors under a laptop category or vice-versa; other websites aggregate products
and related accessories (which represent another category of products). In other
cases, the errors are due to wrong classi cations by the system.</p>
      <p>To overcome these issues we want to investigate di erent solutions. First,
we believe that introducing feedbacks in our pipeline could signi cantly improve
data quality, especially for precision. For example, alternating source discovery
and data linkage we could select better identi ers to feed to Search for source
discovery, thus increasing the precision, with respect to the target category, of
the sources. Similarly, results from schema alignment could help improve the
precision of linkage, as pages whose attributes do not align are unlikely to represent
the same product. Another promising direction to improve precision without
penalizing recall is to study solutions to exploit humans in the loop. In particular,
we aim at developing and evaluating techniques based on active learning and
crowdsourcing to continuously train the classi ers with e ective and updated
training sets.</p>
      <p>
        We have observed many inconsistencies between values of a product attribute
across sources. Existing data fusion techniques [
        <xref ref-type="bibr" rid="ref2 ref3">2, 3</xref>
        ] can help to resolve these
inconsistencies when they are due to honest mistakes, possibly in combination with
extraction errors. However, the product domain also exhibits inconsistencies due
to deceit, where sources may deliberately provide imprecise or erroneous product
characteristics. Identifying and e ectively addressing such inconsistencies at web
scale is an important direction of future work.
      </p>
      <p>Beyond Source Homogeneity { Our approach to data extraction is based on the
assumption that pages are structurally homogeneous at the local source level.
This is a valid assumption for a vast majority of websites, but there are
exceptions. For example, some websites that publish used products have a weak
template and leave the seller the freedom to publish the product speci cation
without any structural imposition. For some application scenarios, one can
simply drop these sources. If on the contrary they are important, data extraction
should be performed by solutions that do not rely on the template.
Beyond Product Speci cations { So far we have considered the extraction of the
identi ers and of the speci cations. However important data that complete the
product description are price and reviews. Challenging issues for the extraction
of price are to distinguish the price of the principal product in the page from the
prices of other products, such as suggested products, similar products, and the
actual price from discounts or list price. Reviews represent important information
in many applications. An interesting problem is how to combine structured data
from the speci cation with the unstructured data of the reviews.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Dalvi</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Machanavajjhala</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pang</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>An analysis of structured data on the web</article-title>
          .
          <source>Proceedings of the VLDB Endowment</source>
          <volume>5</volume>
          (
          <issue>7</issue>
          ),
          <volume>680</volume>
          {
          <fpage>691</fpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Dong</surname>
            ,
            <given-names>X.L.</given-names>
          </string-name>
          :
          <article-title>How far are we from collecting the knowledge in the world?</article-title>
          <source>In: Keynote at 19th International Workshop on Web and Databases. ACM</source>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Dong</surname>
            ,
            <given-names>X.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Srivastava</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Big data integration</article-title>
          , vol.
          <volume>7</volume>
          . Morgan &amp; Claypool Publishers (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Etzioni</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Banko</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Soderland</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weld</surname>
            ,
            <given-names>D.S.</given-names>
          </string-name>
          :
          <article-title>Open information extraction from the web</article-title>
          .
          <source>Communications of the ACM</source>
          <volume>51</volume>
          (
          <issue>12</issue>
          ),
          <volume>68</volume>
          {
          <fpage>74</fpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Qiu</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barbosa</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Crescenzi</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merialdo</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Srivastava</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Big data linkage for product speci cation pages</article-title>
          .
          <source>In: Proceedings of the 2018 ACM SIGMOD International Conference on Management of data. ACM</source>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Qiu</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barbosa</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dong</surname>
            ,
            <given-names>X.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shen</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Srivastava</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Dexter: large-scale discovery and extraction of product speci cations on the web</article-title>
          .
          <source>Proceedings of the VLDB Endowment</source>
          <volume>8</volume>
          (
          <issue>13</issue>
          ),
          <volume>2194</volume>
          {
          <fpage>2205</fpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>