Download presentation
Presentation is loading. Please wait.
Published byLoren Bridges Modified over 9 years ago
1
Service Marts: a Service Framework for Search Computing Alessandro Campi Andrea Maesani
2
Alessandro Campi SeCo Service Framework Registration of new search services –Their semantic description –The production of relevant parameters Informal and quick registration of "myWebSite"
3
Alessandro Campi SeCo Search Services A special class of software services whose responses are ranked lists of objects –Ranking reflects a combination of: item-based rank computation algorithms, social recommendations, personalization and context-based adaptation, business incentives,… Interaction is based upon request-responses –Requests = queries –Responses = ranked lists of items Items contain attribute-value pairs, links to resources, and content Rankings are normally opaque Lists are too long and should be partially retrieved 3
4
Alessandro Campi SeCo Hotel AccessPattern1AccessPattern2AccessPattern3 BookingTripAdvisor Expedia Service Mart A uniform paradigm for service deployment –Uniform interfaces to high-level service composition frameworks –Abstractions and technologies for hiding low-level service implementation
5
Alessandro Campi SeCo Service Mart Inspired by "data marts" used as uniform paradigm for data integration and warehousing –with an associated high-level ER conceptual representation –along the direction already marked by Web marts in Web modelling and engineering They roughly correspond to the notion of "domain" and hide multiple low-level services, possibly offered by distinct providers
6
Alessandro Campi SeCo Service Interfaces Hotel Input Output ERSPI Response Time Caching Time AccessPattern1AccessPattern2AccessPattern3 BookingTripAdvisor Expedia InputOutput InputOutput InputOutputInputOutput InputOutput Keywords (Light Semantic Description)
7
Alessandro Campi SeCo Service Parameters Name Input Output Order Type: defines the eventual order of the results. CacheTTL: if the service is cacheable, this attribute defines the validity time of cached data Chunked: describes if the service is chunked or not. ChunkSize: defines the dimension of the result of each call ERSPI: defines the average number of results of each invocation Average response time Keywords: Light Semantic Description Cost 7
8
Alessandro Campi SeCo QoS Scalability Capacity (Limit of concurrent requests for guaranteed performance) Performance (a measure of the speed in completing a service request) –Response time –Latency –Throughput Reliability –Mean time between failure (MTBF) –Mean Time to Failure (MTF) –Mean Time To Transition (MTTT) Robustness/ Flexibility Exception handling 8
9
Alessandro Campi SeCo QoS Accuracy (Defines the error rate produced by the service) Supported Standard (A measure of whether the service complies with standards) Stability/change cycle (A measure of the frequency of change related to the service in terms of its interface and/or implementation) Completeness Confidentiality Accountability Traceability and Auditability Data encryption Non-Repudiation
10
Alessandro Campi SeCo Service Interfaces Low-level services (real Web services or wrapped web sites) can be enclosed by means of two basic mechanisms: –Run-time invocation (flight availability) –Periodic materialization (major soccer events) –Mixed
11
Alessandro Campi SeCo Materialization Att1Att2… DB“Static” Web site Att1Att2…
12
Alessandro Campi SeCo Direct Web service call
13
Alessandro Campi SeCo Input1Input2…Output1Output2… Lixto wrappers
14
Alessandro Campi SeCo Att1Att2…Attn… Att1Att2…Attn… Att1Att2…Attn… Multiple Lixto wrappers
15
Alessandro Campi SeCo Lixto wrappers
16
Alessandro Campi SeCo Lixto wrappers
17
Alessandro Campi SeCo Lixto wrappers
18
Alessandro Campi SeCo Lixto wrappers
19
Alessandro Campi SeCo Lixto wrappers
20
Alessandro Campi SeCo Lixto wrappers
21
Alessandro Campi SeCo Lixto wrappers
22
Alessandro Campi SeCo Service Mart Hotel AccessPattern1AccessPattern2AccessPattern3 Attribute NameTypeKeywords (Light Semantic Description) BookingTripAdvisor Expedia Key Multiplicity (1-N) Attribute … Certain Attributes have associated Domains (sets of legal values)
23
Alessandro Campi SeCo AttributeKeyAttribute … KeyAttribute … KeyAttribute … Edge connecting two service marts by means of a sequence of pairs of service mart attributes, such that every paired attributes have compatible types: comparison using predicates (=, ) is supported The same pair of access marts can have more than one join pattern Service Marts
24
Alessandro Campi SeCo Service Marts CityStartDateEndDate…… Hotel Start Place End Place Date… Flight NameCityStartDateEndDate… Event > < > <
25
Alessandro Campi SeCo Access patterns Hotel Input …Output NameTypeLight Semantic DescriptionCardinality AccessPattern1AccessPattern2AccessPattern3 BookingTripAdvisor Expedia
26
Alessandro Campi SeCo Access patterns Patterns representing the allowed invocations of service marts Access pattern attributes are classified as: –Input –Output Access patterns have a flat representation –They receive as input singleton values for input parameters –They produce as output tuples of values for output parameters Multi-valued attributes are used in cartesian product with all other extracted combinations
27
Alessandro Campi SeCo Access patterns Patterns are either ordered (search) or unordered Rankings are crisp (when tuples are partially ordered by the explicit values of output attributes) or opaque
28
Alessandro Campi SeCo Mapping to access patterns The process of selecting for a query plan consisting of a partial order of invocation of access patterns, such that all input parameters of the access pattern get bound, whereas: –an input parameter associated with an input value is bound –an input parameter associated with an output parameter of a precedent access pattern in the partial order is bound –an input parameter associated with a domain is (weakly) bound
29
Alessandro Campi SeCo Mapping to access patterns The mapping process produces one or more query plans Weak bindings should be used only if after the failing of all mappings which do not use them Weak bindings require domain injection, domains are partially ordered, domains are injected according to such partial order Selection among equivalent query plans - using the same domain injections - should be decided by an optimizer 29
30
Alessandro Campi SeCo Mapping to access patterns Input1Input2…Output1Output2… AP1 Input1Input2…Output1Output2… AP3 Input1Input2…Output1Output2Output3… AP2 Input1Output1… Output2Output3… AP4
31
Alessandro Campi SeCo Query execution time Input1Input2…Output1… S1 Input1Input2…Output1Output2… S3 Input1Output2 S2.1 Input1Output1… Output2Output3… S4 Input1…Output2Output3… S2.2 S2
32
Alessandro Campi SeCo Access Mart Engineering Performed at registration time Requires the right set of language abstractions and components Requires Web integration technologies –e.g. Lixto Dedicated to developers
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.