exploiting constraints to build a flexible and extensible
play

Exploiting Constraints to Build a Flexible and Extensible Data - PowerPoint PPT Presentation

Exploiting Constraints to Build a Flexible and Extensible Data Stream Processing Middleware Workshop on Scalable Stream Processing Systems (SSPS) IPDPS 2010, Atlanta/Georgia, USA 19.04.2010 Nazario Cipriani, Carlos Lbbe, Alexander


  1. Exploiting Constraints to Build a Flexible and Extensible Data Stream Processing Middleware Workshop on Scalable Stream Processing Systems (SSPS) IPDPS 2010, Atlanta/Georgia, USA 19.04.2010 Nazario Cipriani, Carlos Lübbe, Alexander Moosbrugger

  2. Data Stream Processing Systems – Some Foundations 2  Context-aware applications need context data to be processed  Context-aware systems utterly heterogeneous  Nearby sensors produce context data streams that needs to be processed online  Not convenient to first store and then process offline due to high data volume  Use Data Stream Processing Systems (DSPS) !  Data streams are handled by Data Stream Processing Systems  A.k.a. Data Stream Management Systems ( DSMS )  Data streams are processed according to some processing definition  Push-based processing paradigm instead of pull-based  Today's DSPS offer a broad range of sophisticated and efficient processing schemes for online data stream processing  Well suited for general purpose data stream processing Universität Stuttgart SFB 627

  3. Agenda 3  Non-Trivial Application Scenario of a Distributed Visualization Pipeline  Adaptation Problem for non-trivial Applications  Gap Between Application’s and System’s Interests  Constraints Classification  Enhancing the NexusDS Platform by Constraints  NexusDS Platform Overview  Network Groups and Operator Model  Constraint-Based Data Flow Graphs  Enhanced Processing Model Supporting Constraints  Conclusion and Future Work Universität Stuttgart SFB 627

  4. Sample Scenario – Distributed Visualization Pipeline 4 Sources Operators Sinks Visualization-Pipeline User Location Updates Data Stream: Bus, Taxi, and User Locations Client: Image Stream Merge & Filtering: Mapping: Rendering: Selection of Rectangular Map Projection Nearby Objects with 3D Buildungs Rasterize e.g., Smartphones, PDAs, etc. Static Data: Buildings & Streets Points of Interest Parameter Updates Universität Stuttgart SFB 627

  5. Sample Scenario – Distributed Visualization Pipeline 5 Sources Operators Sinks Visualization-Pipeline User Location Updates Data Stream: Bus, Taxi, and User Locations Client: Image Stream Merge & Filtering: Mapping: Rendering: Selection of Rectangular Map Projection Nearby Objects with 3D Buildungs Rasterize e.g., Smartphones, PDAs, etc. Static Data: Buildings & Streets Points of Interest Parameter Updates Built-In Operator can be Custom Operator to Dedicated hardware can used here define the Mapping improve performance  Exploit already  Exploit specialized Universität Stuttgart Process for Data to 5 SFB 627 existing operators ! Rendering Primitives ! hardware is reasonable !

  6. Sample Scenario – Distributed Visualization Pipeline 6 Sources Operators Sinks Visualization-Pipeline User Location Updates Data Stream: Bus, Taxi, and User Locations Client: Image Stream Merge & Filtering: Mapping: Rendering: Selection of Rectangular Map Projection Nearby Objects with 3D Buildungs Rasterize e.g., Smartphones, PDAs, etc. Static Data: Buildings & Streets Points of Interest Parameter Updates Mobile devices still have limited capabilities (energy)  Outsource processes Universität Stuttgart SFB 627 if possible!

  7. Requirements for DSPS to Support Non-Trivial Applications? 7  Extensible operator base  Complex domain specific operators, may require dedicated hardware  Support for structured and unstructured data: “ Tuples ” vs. images , videos  Heterogeneous system topology  System with wide range of devices in mind – powerful computing servers vs. mobile devices  Exploit available hardware for efficient execution  Operator has deployment and runtime restrictions  Influence deployment and runtime of operators in processing pipelines Universität Stuttgart SFB 627

  8. Adaptation Gap between Applications and DSPS 8  Many different (distributed) context data streams  Use distributed DSPS  Applications or domains may ask for specific functionality  But still depending on general stream processing principles  Reuse existing components, “do not reinvent the wheel”! Data Stream Domain-specific Data Processing System Stream Application (DSPS) Adaptation Problem Universität Stuttgart 8 SFB 627

  9. Adaptation Gap between Applications and DSPS 9  Many different (distributed) context data streams  Use distributed DSPS  Applications or domains may ask for specific functionality  But still depending on general stream processing principles  Reuse existing components, “do not reinvent the wheel”! Data Stream Domain-specific Data Processing System Stream Application (DSPS) Adapt DSPS to Application 1 2 Adapt Application to DSPS Adaptation Problem Universität Stuttgart 9 9 SFB 627

  10. Adaptation Gap between Applications and DSPS 10  Many different (distributed) context data streams  Use distributed DSPS  Applications or domains may ask for specific functionality  But still depending on general stream processing principles  Reuse existing components, “do not reinvent the wheel”! Data Stream Domain-specific Data Domain-specific Data Processing System Stream Processing Stream Application (DSPS) System Adapt DSPS to Application 1 Adapt DSPS to Application 3 Adapt Application to DSPS 2 Adapt Application to DSPS Adaptation Problem Universität Stuttgart 10 10 SFB 627

  11. Constraints Classification 11 System-Relevant Constraints Domain-Relevant Constraints Freely Application-Relevant Modifiable Constraints User-Relevant Constraints Bounded Modifiable Deployment Constraints Runtime Constraints Universität Stuttgart SFB 627

  12. NexusDS Platform Overview 12 Nexus Applications & Extensions Nexus Applications & Extensions Nexus Applications and Extensions Application Operators Application Services Nexus Domain Extensions Nexus Domain Extensions Nexus Domain Extensions Domain Operators Domain Services Core Operators Core Query Service ( CQS ) Nexus Core Operator Repository Operator Execution Service ( ORS ) Service ( OES ) Service Publisher Communication and Monitoring Monitoring Service ( MS ) Service ( SPS ) Universität Stuttgart SFB 627

  13. NexusDS Platform Overview 13 User-Relevant Constraints Application-Relevant Constraints Nexus Applications & Extensions Nexus Applications & Extensions Nexus Applications and Extensions Application Operators Application Services Domain-Relevant Constraints Nexus Domain Extensions Nexus Domain Extensions Nexus Domain Extensions Domain Operators Domain Services Core Operators Core Query Service ( CQS ) Nexus Core Operator Repository Operator Execution Service ( ORS ) Service ( OES ) System-Relevant Constraints Service Publisher Communication and Monitoring Monitoring Service ( MS ) Service ( SPS ) Universität Stuttgart SFB 627

  14. User-Relevant Application-Relevant Classification of Runtime Environments 14 Domain-Relevant System-Relevant  Organization scheme of available environments to reduce deployment complexity  Access corresponding groups to get available execution environments x86 CPU Architecture Core Group Hardware ATI RV730 GPU Peer Properties Group … Nexus Group Software Windows Visualization Group Arbitrary Domain JVM 1.5 Arbitrary Domain Group Subgroup ..... … Universität Stuttgart SFB 627

  15. User-Relevant Application-Relevant Operator Packages – Overview 15 Domain-Relevant System-Relevant  Meta Data  Defines operator’s properties  Descriptor  Requirements  Deployment Meta Data  Presets  Runtime  Program Code Program Code  Actual operator implementation  Dependencies Dependencies  Third party libraries Operator Package Universität Stuttgart SFB 627

  16. User-Relevant Application-Relevant Constraint-Based Data Flow Graphs 16 Domain-Relevant System-Relevant Deployment Deployment Name = Mapping NodeID = 007…009 Author = Me OperatorID = 123 Hardware = GPU Data Stream: Bus, Taxi, and User Locations Client: Image Stream Merge & Filtering: Mapping: Rendering: Selection of Rectangular Map Projection Nearby Objects with 3D Buildungs Rasterize e.g., Smartphones, PDAs, etc. Static Data: Buildings & Streets Points of Interest Runtime Runtime Buffer = 10 Resolution = 800x600 Buffer = 100 FPS = 20 Model_Detail = Medium Universität Stuttgart 16 SFB 627

  17. User-Relevant Application-Relevant Domain-Relevant System-Relevant Deployment Model – Visualization Pipeline Sample Scenario 17 Extension Nexus Developer C 1 Application 1 Create the domain Nexus Domain Extension service and operators  Constraints! Operator Repository Nexus Core Service (ORS) S S Communication and Monitoring GPU-enabled PC Buildings, Streets, GPU-enabled PC UMPC Client PC (AMD X2 @ 1,6GHz, POIs (AMD X2 @ 1,6GHz, Physical Layer (IntelA110 @ 800MHz, (AMD X2 @ 1,6GHz, 2GB RAM, 2GB RAM, 1GB RAM) 2GB RAM) Nvidia-GF GO 7200) Bus Locations Nvidia-GF GO 7200) Visualization Pipeline Core Query Operator Execution Monitoring Visual Client ( VC ) Service ( VPS ) Service ( CQS ) Service ( OES ) Service ( MS ) Universität Stuttgart SFB 627 Client Application Rendering Step Mapping Step Filtering & Merge Step Mobile Objects & C R M F S ( Sink ) ( Operator ) ( Operator ) ( Operator ) Buildings ( Sources )

Recommend


More recommend