Future and Emerging Technologies (FET)

18
Future and Emerging Technologies (FET) The roots of innovation The roots of innovation Proactive initiative on: Global Computing (GC) DBGlobe IST-2001-32645 WP4 Querying and Information Discovery INRIA (Serge Abiteboul)

description

DBGlobe IST-2001-32645. WP4 Querying and Information Discovery INRIA (Serge Abiteboul). Proactive initiative on: Global Computing (GC). Future and Emerging Technologies (FET). The roots of innovation. Main choices. Main technical issues for querying in the DbGlobe context - PowerPoint PPT Presentation

Transcript of Future and Emerging Technologies (FET)

Future and Emerging Technologies (FET)

Future and Emerging Technologies (FET)

The roots of innovationThe roots of innovationThe roots of innovationThe roots of innovation

Proactive initiative on:

Global Computing (GC)

Proactive initiative on:

Global Computing (GC)

DBGlobe IST-2001-32645

WP4Querying and Information Discovery

INRIA (Serge Abiteboul)

DBGlobe (IST-2001-32645) 2

Main choices

• Main technical issues for querying in the DbGlobe context– Exchange of information between PMOs– Management of distribution and replication

• provides support for proxy, caching

• Requirement: use standards– XML– XML query languages (XPATH, Xquery, XOQL)– Web services (SOAP)

• Proposed solution: Active XML• Discovery of information: linked to discovery of services,

see WP1

DBGlobe (IST-2001-32645) 3

Outline for Active XML

• Active XML: data integration and querying platform– The AXML language– AXML peers : repository + Web client + Web server– System architecture

• Distribution and replication [Sigmod’03a]– Motivation: mobile devices with limited resources– Contributions

• Controlling service invocations [Sigmod’03b]– Motivations– A technique based on typing

• Conclusion

DBGlobe (IST-2001-32645) 4

Active XML

• XML document with embedded calls to Web services– Intensional information– Dynamic information

• AXML peer (e.g., a PMO)– Repository: stores (A)XML data– Client: calls Web services– Server: support for queries over repository data

• Foundations: to be further investigated– Deductive databases and fixpoint logic– Tree automata– Rewriting systems

DBGlobe (IST-2001-32645) 5

AXML Documents<knownAuctions ID="peer10">

<category name="Toys">

<sc>eBay.net/getOffers("Toys")</sc>

<auction id="1254" >

<heldBy>eBay.net</heldBy>

<item>Pink panther</item>

</auction> …

<sc>babel.org/translate("Czech", "English",

<sc>crystal.cz/getToys()</sc>)</sc>

<sc>peer25/getAuctions([../@name])</sc>

</category> ...

<sc frequency="once" >getMyAuctions()</sc> …

</knownAuctions>

May contain calls to any SOAP Web service

Are enriched by each service call's results

The returned nodes are inserted as siblings of the corresponding <sc> element

Activation of calls and data lifespan are controlled

• frequency: when is the service called ?

• validity: how long is the retrieved data kept ?

• mode: immediate or lazy ?Push and pull modes (see WP3)

DBGlobe (IST-2001-32645) 6

AXML Serviceslet closeAuction($a) be for $b in $a/bid where $b/amount =

max($a/bid/amount) return <sc mode="immediate"

frequency="once"> notifyWinner($b/who,

$a/aID, $b/amount) </sc> <status>closed</status>

A simple, declarative way to create Wef services…• A service operation is specified as a query with parameters.

• It may query (local) AXML documents.

• It is made available on the Web using the SOAP protocol.

… which allows for new, powerful features.• Intentional parameters and results: AXML documents (containing service calls) can be

exchanged.

• Continuous services send back a stream of answers (SOAP messages) to the caller.

Basic AXML services are compatible with current standards for Web services invocation.

Used in AXML documents, AXML services are powerful tools for data integration and querying.

DBGlobe (IST-2001-32645) 7

AXML Architecture

Queryprocessor

Evaluator

query

servicedescriptions

readupdate read

updateconsults

SOAPwrapper

SOAP

SOAP

AXML peer S3

SOAPservice

SOAP client

AXML peer S1

service call service result

AXML document store

AXML peer S2

AXML

XML

AXML

AXML

Technical environment:• SUN’s Java SDK 1.4 (includes XML parser, XPath processor, XSLT engine)• Apache Tomcat 4.0 servlet engine• Apache Axis SOAP toolkit 1.0 beta 3 • X-OQL query processor, persistant DOM repository• JSP-based user interface, using JSTL 1.0 standard tag library

DBGlobe (IST-2001-32645) 8

Example: A number of PMOs engaged in auctions

• Each PMO proposes auctions:– Document myauctions.xml with the

PMO’s items and their current bids– Services offered:

• getLocalAuctions(),• status(auctionId)

• Each PMO bids on auctions:– Document mybids.xml with the

PMO’s bids– Service offered:

• bid(PMO,auctionId, amount)• bidUpTo(PMO, auctionId,

increment, limit)

• Each PMO knows about other PMOs’ auctions:– Document

allauctions.xml contains calls to other PMOs that transitively retrieve their known auctions.

– Service offered : getAllAuctions()

• When an auction closes, the winner is notified.

VLDB’02 demo

DBGlobe (IST-2001-32645) 9

Distribution and replication

DBGlobe (IST-2001-32645) 10

Motivation

• PMOs have limited resources:• Storage space• Computation power• Network bandwidth

• Therefore, we would like to:– distribute the load among PMOs, by:

• Using distributed services (AXML does it !)• Distributing documents across several devices

– replicate documents and services, to allow for “local” computation.

DBGlobe (IST-2001-32645) 11

• A user has a PDA, and is in Colorado.

• We could let her call the ski portal services,

• We would rather replicate on her PDA the relevant data and services, so that they can be called locally.

Example

• A national US ski portal :– Contains information about ski

resorts, hotels.– Provides services to query this

information.

• Issues :– Data / services should be replicated

?– How to adapt the replicated code ?– The PDA has limited resources /

capabilities, therefore:• We need a cost model to

choose what to replicate• Control the use of replication

DBGlobe (IST-2001-32645) 12

Contributions

• We developed:– A data model for AXML with distribution and replication– A location-aware extension of XQuery to handle

distributed/replicated data and services.– A cost model for the peer-to-peer context, measuring the

“observable performance” of each peer– A replication algorithm (based on the cost model) that determines

• What data/services need to be copied ?• How to adapt the service code ?

• Implementation work is about to start.• A paper describing the results, to appear in SIGMOD’03

DBGlobe (IST-2001-32645) 13

Controlling service invocation

DBGlobe (IST-2001-32645) 14

Controlling service invocation

• Active XML peers call each other’s services, therefore they exchange AXML documents, that may contain service calls.

SOAP

AXML peer S3

SOAPservice

SOAP client

SOAP

AXML peer S1

service call

service result

SOAP

AXML peer S2

(A)XML documents

• When such a document is exchanged, the services calls it contains can be invoked :– by the sender (before sending the

document)– or the receiver (after receiving it)

• How do we control it?

DBGlobe (IST-2001-32645) 15

Controlling service invocation: why?

• For security reasons or capabilities, e.g.:– I don’t trust this service/domain– I don’t have the right credentials to invoke it, or it

costs money.– I don’t know how to deal with a service call,

because I don’t know Active XML !• Decide where to perform some calls:

– It may be better to have a proxy perform all the calls on behalf of a PDA

– Improve performances• … and many others.

DBGlobe (IST-2001-32645) 16

How we do it: With types !

• WSDL : Web services description language (XML schema)

• We extended it to include service calls• We provide algorithms to decide “to call or not to call”

– It finds which service calls should be invoked– This is an inherently recursive process, since these calls may

return data that contains service calls• Foundations: alternating tree automata techniques

– General problem still open – progress • A prototype has been implemented• A paper describing the results, to appear in SIGMOD’03

DBGlobe (IST-2001-32645) 17

Conclusion

• Active XML Version 1 is out• Extensions of AXML to fit DBGlobe requirements:

– Design of distribution & replication; implementation has started – Design of the control of call invocation; has been implemented

and is now being integrated

• Work on optimization has progressed– Very complex issue– Involves many facets of optimization of distributed databases +

novel issues– More work needed

• AXML PMO on a small device– Implementation for coming year

DBGlobe (IST-2001-32645) 18

Thank you.