• No results found

Grid Data Integration Based on Schema Mapping

N/A
N/A
Protected

Academic year: 2021

Share "Grid Data Integration Based on Schema Mapping"

Copied!
10
0
0

Loading.... (view fulltext now)

Full text

(1)

Schema Mapping

Carmela Comito and Domenico Talia DEIS, University of Calabria,

Via P. Bucci 41 c, 87036 Rende, Italy

{ccomito, talia}@deis.unical.it http://www.deis.unical.it/

Abstract. Data integration is the flexible and managed federation, analysis, and processing of data from different distributed sources. Data integration is a key issue for exploiting the availability of large, heteroge-neous, distributed and highly dynamic data volumes on Grids. This paper presents a framework for integrating heterogeneous XML data sources distributed among the nodes of a Grid. We present a query reformulation algorithm to combine and query XML documents through a decentral-ized point-to-point mediation process among the different data sources based on schema mappings. The above cited XML integration formalism is exposed as a Grid Service within an OGSA-based Grid architecture.

1

Introduction

The goal of a data integration system is to combine heterogeneous data residing at different sites by providing a unified view of this data. Data integration on Grids has to deal with unpredictable, highly dynamic data volumes. So, tradi-tional approaches to data integration, such as FDBMS [1] and the use of medi-ator/wrapper middleware [2], are not suitable in Grid settings. The federation approach is a rather rigid configuration where resources allocation is static and optimization cannot take advantage of evolving circumstances in the execution environment. The design of mediator/wrapper integration systems must be done globally and the coordination of mediators has to be done centrally, which is an obstacle to the exploitation of evolving characteristics of dynamic environments. As a consequence, data sources cannot change often and significantly, otherwise they may violate the mappings to the mediated schema. Recently, several works on data management in peer-to-peer (P2P) systems are moving along this di-rection [3, 4]. All these systems focus on an integration approach not based on a global schema: each peer represents an autonomous information system, and data integration is achieved by establishing mappings among the various peers. The Grid community is devoting great attention toward the management of structured and semi-structured data such as databases and XML data. The

B. K˚agstr¨om et al. (Eds.): PARA 2006, LNCS 4699, pp. 319–328, 2007. c

(2)

most significant examples of such efforts are the OGSA Data Access and

Inte-gration (OGSA-DAI) [5] and the OGSA Distributed Query Processor

(OGSA-DQP) [6] projects. However, till today only few of those projects [7, 8] actually meet schema-integration issues necessary for establishing semantic connections among heterogeneous data sources. For these reasons, we designed the XMAP framework [9] for integrating heterogeneous XML data sources distributed over a Grid. By designing this framework, we aim at developing a decentralized net-work of semantically related schemas that enables the formulation of distributed queries over heterogeneous data sources. We designed a method to combine and query XML documents through a decentralized point-to-point mediation process among the different data sources based on schema mappings. We offer a decen-tralized service-based architecture that exposes this XML integration formalism as a Grid Service [10]. We refer to this architecture as theGrid Data Integration

System(GDIS) [11]. The GDIS infrastructure exploits the middleware provided

by OGSA-DAI building on top of it schema-integration services. As said before, among the few works designed to provide schema-integration in Grids, the most notable ones areHyper [7] andGDMS [8]. Both systems are based on the same approach that we have used ourselves: building data integration services by ex-tending the reference implementation of OGSA-DAI. TheGrid Data Mediation

Service (GDMS) uses a wrapper/mediator approach based on a global schema.

GDMS presents heterogeneous, distributed data sources as one logical virtual data source in the form of an OGSA-DAI service. This work is essentially differ-ent from ours as it uses a global schema. For its part,Hyper is a framework that integrates relational data in P2P systems built on Grid infrastructures. As in other P2P integration systems, the integration is achieved without using any hi-erarchical structure for establishing mappings among the autonomous peers. In that framework, the authors use a simple relational language for expressing both the schemas and the mappings. By comparison, our integration model follows as Hyper an approach not based on a hierarchical structure, however differently from Hyper it focuses on XML data sources and is based on schema mappings that associate paths in different schemas.

The rest of the paper is organized as follows. Section 2 describes the XMAP framework. Section 3 shows as the XMAP algorithm is deployed as a Grid ser-vice within the GDIS architecture. Some performance figures are presented in Section 4 and Section 5 gives some concluding remarks, together with possible extensions of this work.

2

XMAP: A Decentralized XML Data Integration

Framework

The XMAP framework [9], semantically relates XML schemas enabling the for-mulation of queries over heterogeneous, distributed XML data sources. The en-vironment is modeled as a system composed of a number of Grid nodes, where each node can hold one or more XML databases. These nodes are connected to each other through declarative mappings rules.

(3)

2.1 Integration Model

As mentioned before, traditional centralized architecture of data integration sys-tems is not suitable for highly dynamic and distributed environments such as the Grid. Thus, we propose an approach inspired from [4] where the mapping rules are established directly among source schemas without relying on a central mediator or a hierarchy of mediators. In consequence, in our integration model, there is no global schema representing all data sources in a unique data model but a collection of local schemas (the native schema of each data source). Regard-less of the total number of nodes composing the system, each source schema is directly connected to only a small number of other schemas. However, it remains reachable from all other schemas that belong to its “transitive closure”. For any mappingM, its closure is defined as the set of rules that can be derived fromM

by repeated composition of schema paths. In other words, the system supports two different kinds of mapping to connect schemas semantically:point-to-point

mappings andtransitivemappings. In transitive mappings, data sources are re-lated through one or more “mediator schemas”. For example, if we have a source

Adirectly connected to a sourceBandBconnected toC,Ais connected toboth

B and C. Establishing the mappings this way creates a graph of semantically related sources where each of the sources knows its direct semantic neighbors (point-to-point mapping) and can learn about the mappings of its neighbors (transitive mapping). Therefore, in our integration model all nodes are equal: there is no distinction between data sources and mediators. Each node acts both as a data source contributing data and as a local mediator providing an uniform view over the data provided by other nodes.

Our integration model is based on schema mappings to translate queries be-tween different schemas. The goal of a schema mapping is to capture structural as well as terminological correspondences between schemas. We address this goal by associating paths in different schemas. Mappings are specified as path expres-sions that relate a specific element or attribute (together with its path) in the source schema to related elements or attributes in the destination schema. The data integration model we propose is indeed based on path-to-path mappings expressed in the XPath [12] query language, assuming XML Schema as the data model for XML sources. Specifically, this means that a path in a source is de-scribed in terms of XPath expressions.

The mapping rules are specified in XML documents called XMAP documents (see Figures 2, 3 ). Each source schema in the framework is associated to an XMAP document containing all the mapping rules related to it.

2.2 The XMAP Reformulation Algorithm: A Case Study

Our query processing approach exploits the semantic connections established in the system by performing the XPath query reformulation algorithm before executing the input query, in order to gain further knowledge. This way, when a query is posed over the schema of a source, the system will be able to use data from any source that is transitively connected by semantic mappings. Indeed, it

(4)

will reformulate the given query expanding and translating it into appropriate queries for each semantically related source. Thus, the user can retrieve data from all the related sources in the system by simply submitting a single XPath query.

The rationale of the algorithm is to perform single reformulation steps. A reformulation step corresponds to the reformulation of a given query only with respect to the schemas directly connected to it. So, the algorithm is composed of several reformulation steps, but each of such steps performs only direct re-formulations by using the point-to-point mappings. Each time a reformulated query is obtained, the algorithm tries to rewrite it by recursively invoking the reformulation function and using its direct mappings.

The query reformulation algorithm uses as input an XPath query and the mappings, and it produces as output zero, one or more reformulated queries.

In the following we briefly describe an example of use of the XMAP algorithm (see Figure 1).

Let suppose a user wants to find the title of the paper published in theyear

2000. To this aim the following queryQU W is formulated over the schemaU W: QU W=/uw/area/pubs/paper[year= ”2000”]/title

In the first step the algorithm identifies the paths in the query: P1=/uw/area/pubs/paper/title

P2=/uw/area/pubs/paper/year

and produces as output the setP. Next, exploiting the XMAP document asso-ciated to the schemaU W (see Figure 2), the algorithm finds two mapping rules connectingU W to DBLP through the pathsP1 andP2.

More precisely, one of these rules relates P1 to two paths in DBLP, respec-tively /dblp/article/title and /dblp/proceedings/title. Similarly, the

uw area pubs paper title venue year author Q=/uw/area/pubs/paper[year=2000]/title P =/dblp/article/title, /dblp/proceedings/title 2,2 P =/dblp/article/year, /dblp/proceedings/year 1,2 4 2 1 3 5 candidate set destination set S2 S2 * 2,2* P =/dblp/article/title, /dblp/proceedings/title * 1,2 P =/dblp/article/year, /dblp/proceedings/year Q =/dblp/article[year=2000]/title Q =/dblp/proceedings[year=2000]/titleR1 R2 DBLP dblp article key title year journal author cites proceedings key title year UW

/uw/area/pubs/paper [year=2000] /title

P =/uw/area/pubs/paper/year1

P =/uw/area/pubs/paper/title2

XMAP

(5)

<sourceSchema>uw</sourceSchema> <Rule cardinality="Mapping1-N"> <destinationSchema>dblp</destinationSchema> <sourcePath>/uw/area/pubs/paper/title</sourcePath> <destinationPath>/dblp/article/title</destinationPath> <destinationPath>/dblp/proceedings/title</destinationPath> </Rule> <Rule cardinality="Mapping1-N"> <destinationSchema>dblp</destinationSchema> <sourcePath>/uw/area/pubs/paper/year</sourcePath> <destinationPath>/dblp/article/year</destinationPath> <destinationPath>/dblp/proceedings/year</destinationPath> </Rule>

Fig. 2.Fragment of theU W XMAP document

other mapping rule relatesP2 to the path /dblp/article/yearand the path

/dblp/proceedings/year. So, the second step of the algorithm produces as out-put a candidate set composed of the elementsPi,j and the (candidate) schema

DBLP. In the considered example as the schemaDBLPhas correspondences for both pathsP1 andP2, it is identified as a destination schema (step 3), so it

can be used to reformulate the queryU W. In particular, the algorithm (step 4), produces two direct reformulations of the queryQU W over the schemaDBLP,

respectivelyQDBLP1 andQDBLP2.

QDBLP1=/dblp/article[year=”2000”]/title QDBLP2=/dblp/proceedings[year=”2000”]/title

Since in the XMAP document associated to the schemaU W there are no more mapping rules involving the paths in the queryQU W, no further reformulations

are produced. Then the algorithm is recursively invoked over the direct refor-mulationsQDBLP1 andQDBLP2, exploiting the XMAP document associated to the schemaDBLP (see Figure 3). In so doing, the algorithm finds two mapping rules connecting the schema DBLP to the schema IEEE through the paths composing the query QDBLP2, whereas any mapping rules involving the paths of the queryQDBLP1 have been found. As a consequence, the execution of the XMAP reformulation algorithm over the queryQDBLP1 does not produce any reformulated query, instead the reformulation of the queryQDBLP2 produces the reformulationQIEEE:

QIEEE=/ieee/proceedings[year=”2000”]/title

This first recursive invocation of the algorithm ends here producing the query

QIEEE as a direct reformulation of the queryQDBLP2 over the schemaIEEE (that is a transitive reformulation of the original queryQU W). So, now we can

exploit the transitive mappings of the schema DBLP, by recursively invoking the reformulation algorithm over the query QIEEE. As the XMAP document

(6)

<Rule cardinality="Mapping1-1"> <destinationSchema>ieee</destinationSchema> <sourcePath>/dblp/proceedings/title</sourcePath> <destinationPath>/ieee/proceedings/title</destinationPath> </Rule> <Rule cardinality="Mapping1-1"> <destinationSchema>ieee</destinationSchema> <sourcePath>/dblp/proceedings/year</sourcePath> <destinationPath>/ieee/proceedings/year</destinationPath> </Rule>

Fig. 3.Fragment of theDBLP XMAP document

associated to the schemaIEEE has no mappings for the paths composing the queryQIEEE, the algorithm ends here.

3

The Grid Data Integration System (GDIS)

The XMAP reformulation algorithm has been deployed in theGrid Data

Inte-gration System (GDIS). GDIS is a decentralized service-based data integration

architecture for Grid databases; it has been presented in a previous work [11]. The GDIS system offers a wrapper/mediator-based approach to integrate data sources: it adopts the XMAP decentralized mediator approach to handle seman-tic heterogeneity over data sources, whereas syntacseman-tic heterogeneity is hidden behind ad-hoc wrappers. More precisely, in the GDIS architecture (see [11]), the XMAP query reformulation engine is run by thedata integration nodes. Specifi-cally, these nodes offer: (i) a set of data integration utilities allowing to establish mappings, and (ii) the query reformulation algorithm introduced by the XMAP integration formalism. The user query is handled by the reformulator engine that through the XMAP query reformulation algorithm produces zero, one or more reformulations of the original query. All the obtained reformulations (included the original query) are then processed by the distributed query processor (DQP) that partitions each of such queries in several sub-queries. Then, the each pro-duced sub-query execution plan is processed independently by the DQP that through the wrapper access data source and produces the partial query result. After that, the DQP collects the sub-query results into the final query result and return it to the querying node.

GDIS is designed as a service-based distributed architecture and introduces the OGSA-based XML Data Integration (OGSA-XDI) service that extends OGSA-DAI with additional functionality both to enable users to specify semantic mappings (in the form of XMAP documents) among a set of data sources, and to execute the XMAP query rewriting algorithm. The architecture of OGSA-DAI and the core engine are designed for new activities in order to provide new functionalities. Indeed, in order to implement the OGSA-XDI service we decided to extend the free available OGSA-DAI Grid Data Service (GDS) ref-erence implementation. According to this, we introduced a new activity, the

(7)

Fig. 4.OGSA-XDI component services

XPathQueryReformulation activity, that wraps the XPath query reformula-tion algorithm of the XMAP framework. In so doing, our implementareformula-tion is re-gardless of the specific version of OGSA-DAI, and, consequently of the adopted standards (e.g., WSRF, WS-I, OGSI). The OGSA-XDI architecture is composed, analogously to OGSA-DAI, of a number of new services including (see Figure 4): Grid Data Integration service (GDI). This service provides XML schema mapping utilities for semantically connected XML data sources. To this aim the GDI extends the OGSA-DAI by introducing a new activity devoted to the reformulation of an XPath query by using the XMAP reformulation algorithm.

Grid Data Integration Factory (GDIF) which creates a GDI on request. A GDIF extends a Grid Data Service Factory (GDSF) by introducing new metadata in the form of XMAP doucments concerning the mapping rules of the schema of the wrapped database.

Database Access and Integration Service Group Registry (DAISGR) which allows clients to search for GDIFs and GDIs that meet their requirements. This registry service is the one provided by the OGSA-DAI system, as no modifications are necessary to manage the introduced integration services.

4

GDIS Evaluation

In this section we briefly present preliminary evaluations of the GDIS prototype. To experiment with GDIS, we have setup two GDIS systems, one located on LAN and the other one over the Internet. In these experiments, we focus on the performance of GDIS as a whole, not on the specificity of the reformulation process which has been detailed in a previous work. The results presented in

(8)

this section were produced according to the following protocol: the client uses the factory service (GDIF) to create a GDI instance. It then uses this instance to submit the same request 100 times (it waits for the results of the previous request before sending the next one), and finally destroys the instance it has created.

Reformulating queries that are submitted to it is the real task of our GDI. Interactions taking place in this process are represented in Figure 5. First, the client requests to the GDIF the creation of the GDI instance. After some time spent to prepare the perform document, the client submits it to the instance it has just created. During the reformulation process, the GDI asks the registry for any mapping information it might need. It is visible on the figure that mapping information queries are performed lazily, only when it is first needed, which explains why we don’t see a bunch of requests to the registry and then some quiet time to perform reformulation. Instead, reformulation CPU time is spread in between mapping information requests: as soon as a new reformulated query is found, the GDI asks the registry for the XMAP document of the schema over which the query is expressed (assuming it has not seen it before). We shall also notice that XMAP documents are all stored on the registry and that the GDI therefore does not interact with the other GDIFs to obtain mapping information.

0 1000 2000 3000 4000 5000 host time (ms) client GDIF/GDI registry service instanciation request

Fig. 5.Entity interactions during the reformulation of a specific query in the WAN configuration. Interactions are also in this case HTTP requests and responses.

Understanding the dynamics of the query reformulation is of high importance to let us understand the results of the experimentations we have performed.

We evaluated the query reformulation time in both the LAN and WAN sce-narios. As XMAP evaluation is out of the scope of these tests, we will focus on the cutoff of the time spent in the system.

LAN Case. We start considering the case when all entities involved in the system are located on the same LAN.

(9)

0 10 20 30 40 50 60 70 80 90 100 1 2 3 4 proportion (%) # paths GDI net

(a) LAN Setting.

10 20 30 40 50 60 70 80 90 1 2 3 4 proportion (%) # paths GDI net (b) WAN Setting.

Fig. 6.Relative repartition of the time spent for query reformulation with mappings of an average rank equals to 2

The results (relative values) of the experiments for a mapping set with an average rank of 2 are shown in Figure 6(a). The GDI time here is really the time used by XMAP to perform the reformulation, while the “net” time is the communication time spent on the network asking and waiting for XMAP doc-uments. The low-latency and high-bandwidth network connecting the different machines makes this time really low. At the maximum, it represents 6.7% of the total time spent for the reformulation. Reformulation times, for their part, are consistent with the results obtained in the XMAP evaluation, given the dis-crepancy of the hardware between the different series of test. Network times are almost negligible compared to those required to perform query reformulation. The results obtained confirm the intuition that network time only depends on the number and the size of the XMAP documents required to perform the full reformulation.

WAN Case. Results for the rank 2 mapping set are shown in Figure 6(b). They make it obvious that even for a moderate round-trip time (42 ms on average) between the GDIF and the registry, network cost becomes largely predominant. From our results, it appears that the total network time is roughly equivalent to two round-trip times between the GDI and the registry, plus the time necessary to transmit the document at the speed of the wire, multiplied by the number of XMAP documents to import. With our settings, this was always inferior in value to 3 round-trip times. This gives us useful hints to reduce the overall execution time of the reformulation.

5

Conclusions

The continuously growing availability of data sources on Grids requires a co-ordinated and integrated access of such data due to the heterogeneity of the involved data models. Based on these reasons we proposed the XMAP frame-work and the GDIS architecture combining a data integration approach with existing grid services for querying heterogeneous, distributed databases. This

(10)

way we provide an enhanced, data integration-enabled service middleware sup-porting distributed query processing. As for future work, we plan to extend the XMAP framework in order to support more expressive query languages (e.g. XQuery). Further, declarative query approaches will be used to express the dis-tributed and dynamic properties of the evolving network (it could change during query execution), following recent ideas on declarative networking.

Acknowledgements

This work has been partially supported by the FP6 Network of Excellence Core-GRID (Contract IST-2002-004265).

References

1. Sheth, A.P., Larson, J.A.: Federated database systems for managing distributed, heterogeneous, and autonomous databases. ACM Computing Surveys 22(3), 183– 236 (1990)

2. Levy, A.Y., Rajaraman, A., Ordille, J.J.: Querying heterogeneous information sources using source descriptions. In: VLDB, pp. 251–262 (1996)

3. Calvanese, D., Damaggio, E., Giacomo, G.D., Lenzerini, M., Rosati, R.: Semantic data integration in P2P systems. In: DBISP2P, pp. 77–90 (2003)

4. Halevy, A.Y., Suciu, D., Tatarinov, I., Ives, Z.G.: Schema mediation in peer data management systems. In: ICDE, pp. 505–516 (2003)

5. Antonioletti, M., et al.: OGSA-DAI: Two years on. In: Global Grid Forum 10 — Data Area Workshop (2004),http://www.ogsadai.org.uk/

6. Alpdemir, M.N., Mukherjee, A., Gounaris, A., Paton, N.W., Watson, P., Fernandes, A.A.A., Fitzgerald, D.J.: OGSA-DQP: A service for distributed querying on the grid. In: EDBT, pp. 858–861 (2004)

7. Calvanese, D., Giacomo, G.D., Lenzerini, M., Rosati, R., Vetere, G.: Hyper: A framework for peer-to-peer data integration on grids. In: Bouzeghoub, M., Goble, C.A., Kashyap, V., Spaccapietra, S. (eds.) ICSNW 2004. LNCS, vol. 3226, pp. 144–157. Springer, Heidelberg (2004)

8. Brezany, P., Woehrer, A., Tjoa, A.M.: Novel mediator architectures for grid in-formation systems. FGCS - Grid Computing: Theory, Methods and Applica-tions 21(1), 107–114 (2005)

9. Comito, C., Talia, D.: XML data integration in OGSA grids. In: Pierson, J.-M. (ed.) Data Management in Grids. LNCS, vol. 3836, pp. 4–15. Springer, Heidelberg (2006)

10. Foster, I., Kesselman, C., Nick, J.M., Tuecke, S.: The physiology of the grid. In: Global Grid Forum (2002),

http://www.globus.org/alliance/publications/papers/ogsa.pdf

11. Comito, C., Talia, D.: GDIS: A service-based architecture for data integration on grids. In: GADA, pp. 88–98 (2004)

12. Clark, J., DeRose, S.: XML path language (XPath) version 1.0. W3C Recommen-dation (1999),http://www.w3.org/TR/xpath

Figure

Fig. 1. Example of use of the XMAP algorithm
Fig. 4. OGSA-XDI component services
Fig. 5. Entity interactions during the reformulation of a specific query in the WAN configuration
Fig. 6. Relative repartition of the time spent for query reformulation with mappings of an average rank equals to 2

References

Related documents

methodological approach tackles this latter question by introducing a revised error-correction model which accounts for the impact of the scale of disequilibrium and

• This course covers methods for analysis of data from Illumina and Ion Torrent high- throughput sequencing, with or without a reference genome sequence, using free and

SMRs are the ratio of the observed and expected number of deaths in a specific population, which estimates the factor-adjusted rate ratio of the specific and standard population..

 A large majority of GtC students have ready access to technology, including smartphones being owned by 87% of incoming and 82% of returning students.. Additionally, 81%

horizontal opening angle of 90° at 4 kHz means that a single loudspeaker can provide natural sound.. reproduction over an extensive

More importantly, I demonstrate how they are engaging the discourse of cimarronaje cultural (cultural maroonage) as a counter-cartography of blackness, a decolonization