110 likes | 197 Views
Alpiri DataGrid. Semantic Web meets Web Services. Problem: Information Fragmentation. Information on products, places … fragmented Products : Pricing info at amazon under Amazon ASIN, at CDNow under SIDs, auction info at Ebay under …
E N D
Alpiri DataGrid Semantic Web meets Web Services
Problem: Information Fragmentation • Information on products, places … fragmented • Products : Pricing info at amazon under Amazon ASIN, at CDNow under SIDs, auction info at Ebay under … • Places : Tourist info at lonely planet, travel at expedia, weather at …, maps at …, … • Universal problem … X2X and within X • Leads to mess in the world of data exchange • Web Services offer hope
But … just SOAP isn’t enough • Data under different names in different places • E.g., getPrice(<sku>) • Every etailer can provide SOAP based getPrice interface • Onus of which SKU to use is on caller of interface • Is keeping Web Services from becoming many to many • No data routing tables • How does the m/c find out who has what data? • Goal : caller shouldn’t have to know • What name the data is stored under • Where the data is located
DataGrid : Inspired by DNS • DNS • Pre-1983 : Batch distribution of hosts DBs • BSD 4.2 : transparently wove together a disperse set of host databases and presented a uniform interface • Key Elements : Naming, Routing, Caching & Security • DataGrid • 2001 : Batch dist. Data on users, products, … • Architecture inspired by DNS to solve this problem • Provides Naming, Routing, Caching & Security
DataGrid Functionality • DNS : GetHostByName(<host>) • DataGrid :GetData(<object>, <property>) • Multiple types of objects (not just host names) • Multiple properties (not just ip addresses) E.g., GetData(San Jose, weather) GetData(Gameboy, productDetails) • Types of objects & properties is extensible • Issues that DataGrid protocol solves • How do you refer to San Jose (CA, not Puerto Rico) without requiring universal names for everything • How does GetData know where to get data from?
DataGrid Naming • Two mechanisms for referring to things • By description : • “A MusicAlbum whose title is ‘Dark Side of the Moon’ and whose author’s title is ‘Pink Floyd’ …” • By name : isbn, amzn asins, odp cats, … • Amzn:B000002UB2, CDNOW:675674146 • Descriptions require core database of a few thousand terms • MusicAlbum, title, …
Query Routing • DNS like structure for redirection • Roots • Non-exclusive naming results in non-exclusive roots • Cross between search engines & DNS root • Answer aggregated from multiple sources
Caching • More sensitive to errors than DNS • Pull-push caching scheme Request : Content-Length: … Proxy: Alpiri-Proxy/0.n QueryID: d8f894g Data Provider Answer : Expires : … DG Server Update: QueryID: d8f894g Update: QueryID: d8f894g www….
DataGrid Application : Real-time Commerce • Real-time data about specials, auctions, availability, news … on products, topics, … • Potential driving force for DataGrid
Why does it matter? • Web Services are important • Bringing the internet to programs • Web Services are stalled • A year of hype, no big interesting app • One-one Web Services lacks network effects • Have to solve name & routing problems for many to many Web Services