M-TOP: Multi-Target Operator Placement of Query Graphs for Data Streams Nazario Cipriani, Oliver Schiller, Bernhard Mitschang IDEAS 2011 – Lisbon, 21.

Slides:



Advertisements
Similar presentations
Munich IETF, August 1997 Fluid A Java Version of Nifty Siegfried Löffler Rechenzentrum Universität Stuttgart.
Advertisements

Lehrstuhl Informatik III: Datenbanksysteme Astrometric Matching - E-Science Workflow 1 Lehrstuhl Informatik III: 1 Datenbanksysteme 1 Fakultät für Informatik.
Rue du Rhône 114- CH-1204 Geneva - T: F: Ecma TC43: Universal 3D.
Design and Implementation Issues for Explorative Location-based Applications: The NexusRallye Daniela Nicklas, Nicola Hönle, Michael Moltenbrey, Bernhard.
Summary XBRL Challenge Objective: Tools that rely on XBRL data, e.g., tool that extracts data for multi-company comparison via desktop application; or.
Xia Zhou*, Stratis Ioannidis ♯, and Laurent Massoulié + * University of California, Santa Barbara ♯ Technicolor Research Lab, Palo Alto + Technicolor Research.
Monitoring Fish Passage with an Automated Imaging System Steve R. Brink, Senior Fisheries Biologist Northwest Hydro Annual Meeting 2014, Seattle.
User Conference 11/14/2013 GOM 3 : A Look Ahead Tony Dupont Earth Science Associates Long Beach, CA.
Wiki-Reality: Augmenting Reality with Community Driven Websites Speaker: Yi Wu Intel Labs/vision and image processing research Collaborators: Douglas Gray,
“SharePoint Farm Deployment & Configuration. Recommendations” Michael Nemtsev, Readify Pty Microsoft MVP.
© 2014 QUAD ONE | | CONFIDENTIAL 1 CLM Application Deck Paleti Sainath Business Analyst.
Surgical Planning Laboratory Brigham and Women’s Hospital Boston, Massachusetts USA a teaching affiliate of Harvard Medical School User Interfaces and.
Context-Aware User Interfaces. Gent, 21 maart 2005 Context-Aware User Interfaces Context-Aware User Interfaces is a requirement for all defined scenarios.
Dynamic model of a drop shot from an inkjet printer.
Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California ArcGIS Tracking Analyst – an Introduction Morakot Pilouk,
THINC: A Virtual Display Architecture for Thin-Client Computing Ricardo A. Baratto, Leonard N. Kim, Jason Nieh Network Computing Laboratory Columbia University.
Anahita: A System for 3D Video Streaming with Depth Customization
Integration of Hand-Held Devices into Collaboration Environments IC’02 Las Vegas, NV June June Geoffrey Fox, Sung-Hoon Ko, Kangseok Kim,
Recognition of Traffic Lights in Live Video Streams on Mobile Devices
IS&T Scientific Visualization Tutorial Erik Brisson Introduction to Scientific Visualization.
T T Population Sampling Distribution Purpose Allows the analyst to determine the mean and standard deviation of a sampling distribution.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Top level – aggregated data Exception reporting + no choice Navigation controls Display area Script.
T T07-01 Sample Size Effect – Normal Distribution Purpose Allows the analyst to analyze the effect that sample size has on a sampling distribution.
Mark O’Shea | Microsoft MVP Windows Expert – IT Pro Introducing The Windows 8.1 Update.
Research Area B Leif Kobbelt. Communication System Interface Research Area B 2.
Graph 8 a. Graph b. Domain _________ c. Range __________
Technische Universität München Context-Aware Recommendations in Decentralized, Item-Based Collaborative Filtering on Mobile Devices Wolfgang Woerndl, Henrik.
Geographic Information Systems Web GIS. What is a Web GIS? ► Web GIS is an on-line version of geographic information system ► Using it, GIS data and functions.
What’s New in Sage SalesLogix V Release Overview Sage SalesLogix v7.5.2 focuses on: −User Enhancements streamline the user experience furthering.
March 10, 2012 Citrix SE Jerry Shea Top Ten things every IT person needs to know about VDI.
Chep06 1 High End Visualization with Scalable Display System By Dinesh M. Sarode, S.K.Bose, P.S.Dhekne, Venkata P.P.K Computer Division, BARC, Mumbai.
A Transcoding Proxy for HTML Web Pages: Web Page Sampling and Conversion Evaluation. Andrew Stone CS525m.
CDS 301 Fall, 2009 Vector Visualization Chap. 6 October 7, 2009 Jie Zhang Copyright ©
Chapter 3 Parallel Algorithm Design. Outline Task/channel model Task/channel model Algorithm design methodology Algorithm design methodology Case studies.
Speakers: Nishan Joomun, Senior Multimedia Designer & Dr. Patrick Devey, Chief Learning Officer.
Agenda Introduction New Features in Map Suite Desktop Edition 3.0 Demonstration Where to Get Help and Learn More Q&A 2.
Optimize your campaign. Use the DCO Display Campaign Optimizer. Let Google technology manage your display campaigns for you.
VIRTUAL REALITY Sagar.Khadabadi. Introduction The very first idea of it was presented by Ivan Sutherland in 1965: “make that (virtual) world in the window.
2D Flow Visualization streamline, pathline, hedges, spotnoise 郭翰琦 陈珩.
Rick Parent - CIS681 Background Perception Display Considerations Film and Video, Analog and Digital Technology.
CS332 Visual Processing Department of Computer Science Wellesley College Analysis of Motion Recovering observer motion.
Vector Field Visualization
Building Dashboards SharePoint and Business Intelligence.
Integration for physically based animation CSE 3541 Matt Boggus.
Data Visualization Fall 2015.
MBL 305 ASP.NET Mobile Controls: Best Practices Gökşin Bakir CSA Yage Ltd. Microsoft Regional Director.
CHAPTER 6 (1) VECTOR VISUALIZATION. OUTLINE Vector datasets are samplings of vector fields over discrete spatial domains Visualizing Vector A number of.
MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 1 A Particle System for Interactive Visualization of 3D Flows Jens Krüger Peter Kipfer.
Computer Applications Chapter 16. Management Information Systems Management Information Systems (MIS)- an organized system of processing and reporting.
Zee: Zero-Effort Crowdsourcing for Indoor Localization
Lesson 29: Building a Database. Learning Objectives After studying this lesson, you will be able to:  Identify key database design techniques  Open.
Ubiquitous Access for Collaborative Information System Using SVG July Sangmi Lee, Geoffrey Fox, Sunghoon Ko, Minjun Wang, Xiaohong Qui
Frank Bergschneider February 21, 2014 Presented to National Instruments.
@CRMUG Agenda Navitus and CRM Workflow vs. dialog Workflow usage Workflow creation Dialog usage Dialog Creation Combining workflows and dialogs Running.
ITU workshop Quality of Service and Quality of Experience of Multimedia Applications and Services Haarlem/Amsterdam, 9-11 May 2016.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Windows 7 Ultimate
Guide for Excel Integration Fusion CRM ADFdi
Generic Gaze Interaction Events for Web Browsers
Microsoft office setup tech support
P2P Streaming for Mobile Nodes: Scenarios and Related Issues
OGSA Data Architecture Scenarios
Vijay Srinivasan Thomas Phan
Introduction to Computer Graphics with WebGL
Discovering Computers 2010: Living in a Digital World Chapter 3
A graphing calculator is required for some problems or parts of problems 2000.
28 January - 1 February 2019 NIPWG 6 - Rostock, Germany
Publishing image services in ArcGIS
Parallel Programming in C with MPI and OpenMP
Presentation transcript:

M-TOP: Multi-Target Operator Placement of Query Graphs for Data Streams Nazario Cipriani, Oliver Schiller, Bernhard Mitschang IDEAS 2011 – Lisbon, 21. September 2011

Universität Stuttgart SFB 627 Sample Scenario – Distributed Visualization Pipeline Interpolator: Interpolates the Velocity Field Interpolator: Interpolates the Velocity Field Window Tracker: Tracks the Window States Window Tracker: Tracks the Window States Fluid Solver: Calcutales the Vector Field Fluid Solver: Calcutales the Vector Field Rendering: Project Primitives, Rasterize Primitives Rendering: Project Primitives, Rasterize Primitives Mobile Client: Display Images Mobile Client: Display Images SourcesOperatorsSinks Update Orientation Update User Location Position Tracker: Tracks the Positions of the Mobile Objects Position Tracker: Tracks the Positions of the Mobile Objects Update Mobile Objects Update Window States Calculate Stream Lines: Stream Lines Calculation Calculate Stream Lines: Stream Lines Calculation Calculate Stream Ribbons: Stream Ribbons Calculation Calculate Stream Ribbons: Stream Ribbons Calculation Environment: Provides Data for Environment Environment: Provides Data for Environment Calculate Magnitude: Calculates the Velocity Magnitude Calculate Magnitude: Calculates the Velocity Magnitude Distribute: Seeds the Stream Lines Starting Positions Distribute: Seeds the Stream Lines Starting Positions Desktop Computer: Display Images Desktop Computer: Display Images Rendering: Project Primitives, Rasterize Primitives Rendering: Project Primitives, Rasterize Primitives Update Orientation 2

Universität Stuttgart SFB 627 Sample Scenario – Distributed Visualization Pipeline Interpolator: Interpolates the Velocity Field Interpolator: Interpolates the Velocity Field Window Tracker: Tracks the Window States Window Tracker: Tracks the Window States Fluid Solver: Calcutales the Vector Field Fluid Solver: Calcutales the Vector Field Rendering: Project Primitives, Rasterize Primitives Rendering: Project Primitives, Rasterize Primitives Mobile Client: Display Images Mobile Client: Display Images SourcesOperatorsSinks Update Orientation Update User Location Position Tracker: Tracks the Positions of the Mobile Objects Position Tracker: Tracks the Positions of the Mobile Objects Update Mobile Objects Update Window States Calculate Stream Lines: Stream Lines Calculation Calculate Stream Lines: Stream Lines Calculation Calculate Stream Ribbons: Stream Ribbons Calculation Calculate Stream Ribbons: Stream Ribbons Calculation Environment: Provides Data for Environment Environment: Provides Data for Environment Calculate Magnitude: Calculates the Velocity Magnitude Calculate Magnitude: Calculates the Velocity Magnitude Distribute: Seeds the Stream Lines Starting Positions Distribute: Seeds the Stream Lines Starting Positions Desktop Computer: Display Images Desktop Computer: Display Images Rendering: Project Primitives, Rasterize Primitives Rendering: Project Primitives, Rasterize Primitives Update Orientation 3

Universität Stuttgart SFB 627 There are More Sample Scenarios… Navigation application considering current position of mobile objects Online trajectory compression on mobile devices Tourist information guide … 4

Universität Stuttgart SFB 627 Operator Placement Problem Static Data 2 Sensor1 Sensor2 Static Data 1 5

Universität Stuttgart SFB 627 Operator Placement Problem Static Data 2 Sensor1 Sensor2 Static Data 1 Query Document

Universität Stuttgart SFB 627 Operator Placement Problem Static Data 2 Sensor1 Sensor2 Static Data 1 Pinned operators

Universität Stuttgart SFB 627 Operator Placement Problem Static Data 2 Sensor1 Sensor2 Static Data 1

Universität Stuttgart SFB 627 Operator Placement Problem Static Data 2 Sensor1 Sensor2 Static Data 1

Universität Stuttgart SFB 627 Operator Placement Problem Static Data 2 Sensor1 Sensor2 Static Data 1 But: Placement is NP-Complete! Approximation!

Universität Stuttgart SFB 627 Agenda Multi-Target Operator Placement Problem Classification of Placement Strategies M-TOP Approach Evaluation Conclusion and Future Work

Universität Stuttgart SFB 627 Customer (c) Bandwidth > 500 kbit Cost No costs Customer (b) Bandwidth > 1 Mbit Latency < 2 s Cost < 1 Unit Multi-Target Operator Placement Problem – Domain-specific Requirements Customer (a) Bandwidth > 10 Mbit Latency <= 500 ms 12

Universität Stuttgart SFB 627 Customer (c) Bandwidth > 500 kbit Cost No costs Customer (b) Bandwidth > 1 Mbit Latency < 2 s Cost < 1 Unit Multi-Target Operator Placement Problem – Domain-specific Requirements Customer (a) Bandwidth > 10 Mbit Latency <= 500 ms 13 Multi-Target Operator Placement Problem! Different requirements for placement decision!

Universität Stuttgart SFB 627 Multi-Target Operator Placement Problem – But What to Do? 14 O4 O2 Q1 Q2 O1 O3 S1 Bandwidth > 10 Mbit Latency <= 500 ms

Universität Stuttgart SFB 627 Multi-Target Operator Placement Problem – But What to Do? 15 Q2 O1 O2 S1 O4 O3 Q1 Q2 O1 O2 S1 O4 O3 Q1 ? Bandwidth > 10 Mbit Latency <= 500 ms O4 O2 Q1 Q2 O1 O3 S1 Optimize Bandwidth? Optimize Latency?

Universität Stuttgart SFB 627 A Classification of Existing Placement Strategies 16 Operator Placement Targets System Load Aurora, Medusa Latency SBON, Rizou et al. single targetmulti target fixed variable Decision Making Cost + Delay Mariposa a priori a posteriori Latency + Bandwidth Bonfils et al. Latency + Network Load Rizou et al. a priori Metaheuristic Search E.g.: Tabu Search, Sinnulated Annealing QoS-aware Placement M-TOP Bandwidth SAND/Borealis Operator Importance ACES Latency + System Load Zhou et al. Processing + Transmission + Storage Ying et al. a posteriori

Universität Stuttgart SFB 627 A Classification of Existing Placement Strategies 17 Operator Placement Targets System Load Aurora, Medusa Latency SBON, Rizou et al. single targetmulti target fixed variable Decision Making Cost + Delay Mariposa a priori a posteriori Latency + Bandwidth Bonfils et al. Latency + Network Load Rizou et al. a priori Metaheuristic Search E.g.: Tabu Search, Sinnulated Annealing QoS-aware Placement M-TOP Bandwidth SAND/Borealis Operator Importance ACES Latency + System Load Zhou et al. Processing + Transmission + Storage Ying et al. a posteriori Multi-target operator placement with variable targets and a priori decision making

Universität Stuttgart SFB 627 The M-TOP Approach – Target Definition 18 Query graph developers provide target specifications Example QoS-Targets specification bottleneck condition relative importance rank scheme Target – Bandwidth (500kBit - 50% - Max)

Universität Stuttgart SFB 627 The M-TOP Approach – Runtime Statistics QoS-Statistics include Bandwidth, Latency, Reliability, … Collected during execution of operators Node–Node QoS-statistics Describe link performance between nodes Node–Operator QoS-statistics Describe node performance executing a certain operator Characteristic diagram of QoS-statistics as fixed length time series Describe the expected probabilities for a certain value w.r.t. QoS-statistics Lookup returns min, avg, and max value as well as the characteristic diagram 19 Operators QoS Nodes

Universität Stuttgart SFB 627 The M-TOP Approach 20 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics

Universität Stuttgart SFB 627 The M-TOP Approach – Conflation 21 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics Conflation

Universität Stuttgart SFB 627 The M-TOP Approach – Conflation 22 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics Conflation Reduce number of operators to place!

Universität Stuttgart SFB 627 The M-TOP Approach 23 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics

Universität Stuttgart SFB 627 The M-TOP Approach – Early Prune and Graph Assembly 24 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics Eliminated by Early Prune

Universität Stuttgart SFB 627 Execution of Query Graph The M-TOP Approach – Early Prune and Graph Assembly 25 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Merge Operators Node Preselection Statistics Eliminated by Graph Assembly Eliminated by Early Prune Execution of Query Graph bottleneck condition relative importance rank scheme Target – Bandwidth (500kBit - 50% - Max)

Universität Stuttgart SFB 627 The M-TOP Approach – Early Prune and Graph Assembly 26 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics Eliminated by Graph Assembly Eliminated by Early Prune Reduce number of nodes!

Universität Stuttgart SFB 627 The M-TOP Approach 27 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics

Universität Stuttgart SFB 627 The M-TOP Approach – Ranking 28 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics bottleneck condition relative importance rank scheme Target – Bandwidth (500kBit - 50% - Max) Rank value 0.75 Rank value 0.6

Universität Stuttgart SFB 627 The M-TOP Approach – Ranking 29 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics bottleneck condition relative importance rank scheme Target – Bandwidth (500kBit - 50% - Max) Rank value 0.75 Rank value 0.6 Bring to front candidates by scoring value!

Universität Stuttgart SFB 627 The M-TOP Approach 30 Conflation Early Prune Graph Assembly RankingMapping Execution Find Edges Between Nodes Rank Nodes And Edges Map Operators to Nodes Execution of Query Graph Merge Operators Node Preselection Statistics

Universität Stuttgart SFB 627 The M-TOP Approach – Mapping By modeling the Mapping Problem as CSP instance NP-formalisms are applicable Use a meta heuristic to solve the complex problem Genetic Algorithm (GA) but also other methods (Backtracking, …) are possible Reason: Computationally too expensive to calculate all possibilities and pick best solution A Genetic Algorithm (GA) is inspired by the Darwinian law that the fittest individuals (or solutions) have higher probability to survive than others E.g., fitter ones can better adapt to changing conditions 31

Universität Stuttgart SFB 627 The M-TOP Approach – Mapping as Genetic Algorithm Loop until termination condition is true Maximum number m of iterations reached or best solution did not change over last k steps 32

Universität Stuttgart SFB 627 The M-TOP Approach – Mapping as Genetic Algorithm Loop until termination condition is true Maximum number m of iterations reached or best solution did not change over last k steps Step1: Assign fitness values to individuals Corresponds to the objective function for the mapping step with additional constraints 33

Universität Stuttgart SFB 627 The M-TOP Approach – Mapping as Genetic Algorithm Loop until termination condition is true Maximum number m of iterations reached or best solution did not change over last k steps Step1: Assign fitness values to individuals Corresponds to the objective function for the mapping step with additional constraints 34

Universität Stuttgart SFB 627 The M-TOP Approach – Mapping as Genetic Algorithm Loop until termination condition is true Maximum number m of iterations reached or best solution did not change over last k steps Step1: Assign fitness values to individuals Corresponds to the objective function for the mapping step with additional constraints Step2: Select individuals for recombination and mutation Step3: Recombine and mutate individuals 35

Universität Stuttgart SFB 627 Loop until termination condition is true Maximum number m of iterations reached or best solution did not change over last k steps Step1: Assign fitness values to individuals Corresponds to the objective function for the mapping step with additional constraints Step2: Select individuals for recombination and mutation Step3: Recombine and mutate individuals The M-TOP Approach – Mapping as Genetic Algorithm 36 potential recombination points

Universität Stuttgart SFB 627 The M-TOP Approach – Mapping as Genetic Algorithm Loop until termination condition is true Maximum number m of iterations reached or best solution did not change over last k steps Step1: Assign fitness values to individuals Corresponds to the objective function for the mapping step with additional constraints Step2: Select individuals for recombination and mutation Step3: Recombine and mutate individuals Step4: Store fittest individuals, go to Step1 if term. condition is false Return the fittest (the best) individual 37

Universität Stuttgart SFB 627 The M-TOP Approach – Mapping as Genetic Algorithm Loop until termination condition is true Maximum number m of iterations reached or best solution did not change over last k steps Step1: Assign fitness values to individuals Corresponds to the objective function for the mapping step with additional constraints Step2: Select individuals for recombination and mutation Step3: Recombine and mutate individuals Step4: Store fittest individuals, go to Step1 if term. condition is false Return the fittest (the best) individual 38 Mapping

Universität Stuttgart SFB 627 Evaluation – Runtime Measurements 39

Universität Stuttgart SFB 627 Evaluation – Runtime Measurements – Mapping 40 Runtime: much faster than simply probing

Universität Stuttgart SFB 627 Evaluation – Runtime Measurements – Mapping 41 Runtime: much faster than simply probing Objective value: approximation works well (maybe better for bigger candidate node cardinalities)

Universität Stuttgart SFB 627 Evaluation – Runtime Measurements – Mapping 42 Runtime: much faster than simply probing Objective value: approximation works well (maybe better for bigger candidate node cardinalities) Additive QoS: approximation and best latency possible not far-off

Universität Stuttgart SFB 627 Evaluation – Runtime Measurements – Mapping 43 Runtime: much faster than simply probing Objective value: approximation works well (maybe better for bigger candidate node cardinalities) Additive QoS: approximation and best latency possible not far-off M-TOP achieves approx. 90%-95% of optimal solution.

Universität Stuttgart SFB 627 Conclusion and Future Work Multi-target operator placement with variable targets and a priori decision making Specify placement requirements in terms of QoS-targets Bottleneck condition, relative importance, rank scheme To find possible solutions M-TOP adopts a meta-heuristic in form of a GA to sample the search space Future work include Consider already running query graphs, adapt to changing conditions (e.g., operator migration) 44

Universität Stuttgart SFB 627 Finish… And Flowers for You! 45