HyperSpaces: A distributed event-driven shared memory model without destructive modications



Similar documents
Responsive, resilient, elastic and message driven system

Course 10978A Introduction to Azure for Developers

MS 10978A Introduction to Azure for Developers

Shared Parallel File System

Elastic Application Platform for Market Data Real-Time Analytics. for E-Commerce

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

Monitoring Nginx Server

Monitoring Infrastructure (MIS) Software Architecture Document. Version 1.1

Module 14: Scalability and High Availability

OpenText Information Hub (ihub) 3.1 and 3.1.1

10978A: Introduction to Azure for Developers

Chapter 12: Multiprocessor Architectures. Lesson 01: Performance characteristics of Multiprocessor Architectures and Speedup

Remote Graphical Visualization of Large Interactive Spatial Data

Aplicações empresariais de elevada performance com Oracle WebLogic e Coherence. Alexandre Vieira Middleware Solutions Team Leader

Application Architectures

SCADE System Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System

SEMS: The SIP Express Media Server. FRAFOS GmbH

Core J2EE Patterns, Frameworks and Micro Architectures

Real-time Data Replication

A REVIEW PAPER ON THE HADOOP DISTRIBUTED FILE SYSTEM

Introduction to Azure for Developers

Cross-domain Identity Management System for Cloud Environment

RUP Design. Purpose of Analysis & Design. Analysis & Design Workflow. Define Candidate Architecture. Create Initial Architecture Sketch

MA-WA1920: Enterprise iphone and ipad Programming

ITG Software Engineering

LEVERAGING DEDUCTIVE VERIFICATION IN INDUSTRIAL CONTEXTS

An Architecture for Web-based DSS

2 Associating Facts with Time

Son of SOA Resource-Oriented Computing Event-Driven Architecture

Service Oriented Architecture 1 COMPILED BY BJ

Peer-to-Peer (P2P) applications, including both P2P streaming and P2P

Automated Virtual Cloud Management: The need of future

Service Oriented Architectures

f...-. I enterprise Amazon SimpIeDB Developer Guide Scale your application's database on the cloud using Amazon SimpIeDB Prabhakar Chaganti Rich Helms

Appendix A Core Concepts in SQL Server High Availability and Replication

Stream Processing on GPUs Using Distributed Multimedia Middleware

Microsoft Introduction to Azure for Developers

Rakam: Distributed Analytics API

DEPLOYMENT GUIDE Version 1.1. DNS Traffic Management using the BIG-IP Local Traffic Manager

SSIS Scaling and Performance

The Workflow Management Coalition Specification Workflow Management Coalition Terminology & Glossary

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation

Pulsar Realtime Analytics At Scale. Tony Ng April 14, 2015

Automate Your BI Administration to Save Millions with Command Manager and System Manager

XIII. Service Oriented Computing. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini

Managing your Red Hat Enterprise Linux guests with RHN Satellite

Reference Architecture, Requirements, Gaps, Roles

White Paper. Optimizing the Performance Of MySQL Cluster

A Comparison of Distributed Systems: ChorusOS and Amoeba

Multi-GPU Load Balancing for Simulation and Rendering

Business Process Modeling Information Systems in Industry ( )

Semantic Web Success Story

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

Tier Architectures. Kathleen Durant CS 3200

PG DAC. Syllabus. Content. Eligibility Criteria

Introduction to LabVIEW Design Patterns

JOURNAL OF OBJECT TECHNOLOGY

SIMERO Software System Design and Implementation

<Insert Picture Here> Getting Coherence: Introduction to Data Grids South Florida User Group

Streaming Data, Concurrency And R

BlobSeer: Towards efficient data storage management on large-scale, distributed systems

Closer Look at Enterprise Service Bus. Deb L. Ayers Sr. Principle Product Manager Oracle Service Bus SOA Fusion Middleware Division

Architecture Design & Sequence Diagram. Week 7

SERVICE ORIENTED ARCHITECTURE

DIABLO VALLEY COLLEGE CATALOG

Oracle WebLogic Server 11g Administration

This module provides an overview of service and cloud technologies using the Microsoft.NET Framework and the Windows Azure cloud.

Oracle Service Bus. Situation. Oracle Service Bus Primer. Product History and Evolution. Positioning. Usage Scenario

Microsoft Private Cloud Fast Track

Glassfish Architecture.

Introduction to SQL Tuning. 1. Introduction to SQL Tuning SkillBuilders, Inc. SKILLBUILDERS

Resource Utilization of Middleware Components in Embedded Systems

The Service Revolution software engineering without programming languages

BSC vision on Big Data and extreme scale computing

Horizontal IoT Application Development using Semantic Web Technologies

Apache Traffic Server Extensible Host Resolution

Unit 1 Learning Objectives

Lambda Architecture. Near Real-Time Big Data Analytics Using Hadoop. January Website:

Talend Metadata Manager. Reduce Risk and Friction in your Information Supply Chain

WHITEPAPER. Managing Design Changes in Enterprise SBM Installations

The Way to SOA Concept, Architectural Components and Organization

ParFUM: A Parallel Framework for Unstructured Meshes. Aaron Becker, Isaac Dooley, Terry Wilmarth, Sayantan Chakravorty Charm++ Workshop 2008

Parallel Scalable Algorithms- Performance Parameters

A refined architecture for DRM

Architectural patterns for building real time applications with Apache HBase. Andrew Purtell Committer and PMC, Apache HBase

F1: A Distributed SQL Database That Scales. Presentation by: Alex Degtiar (adegtiar@cmu.edu) /21/2013

Applications to Computational Financial and GPU Computing. May 16th. Dr. Daniel Egloff

Zend and IBM: Bringing the power of PHP applications to the enterprise

AquaLogic ESB Design and Integration (3 Days)

Transcription:

: A distributed event-driven shared memory model without destructive modications Vassil Iordanov 1,2,3, Stephane Vialle 2,3, Virginie Galtier 3, Wayne Zachary 4 (1) NATO C3 Agency, (2) AlGorille INRIA Project Team, (3) SUPELEC, (4) CHI Systems Inc. May 7, 2009

Outline 1 Motivation 2

Basic Problem Title: A distributed event-driven shared memory model without destructive modications. extends a shared memory model - supports divergences in local states - tools to manage data synchronization - performance through adaptivity - safe and intuitive Driven by industrial needs Inspired by cross-domain research Generic model and open-source (BSD) implementation

Outline Basic Problem 1 Motivation 2

Industrial use cases inspirations Basic Problem Let's examine three reasons for caching data: consistency distribution interactivity

Let's take an example... Basic Problem

...it highlights these problems: Basic Problem Performance: Make use of parallel resources Development: Variability in worker granularity Usage: Interactivity Deployment: Adaptivity Algorithmic: Uniform API and data bindings Architectural: Design Patterns (MVC)

A closer look at synchronization Basic Problem Typical workers Algorithm 1: Classic synchronization Algorithm 2: Actors and message passing global x, y, z Actor Calculate_Z(immutable x) Thread Calculate_Z newy = calculate(x) acquirelock[x:read, y, z:write] newz = calculate(x, newy) y = calculate(x) send(newz) z = calculate(x,y) releaselock

Chronology issues Basic Problem creation of messages... X1 X2...... Z2... Z1... Q1... Calculate_Z Calculate Z Calculate Q available Z value (unfortunate retrieval) (a) Message sequence creation of variable versions X v1 v2... Calculate_Z Calculate Z Z v1 v2... v2.1 Calculate_Q possible merge Q v1... (b) Hyper Spaces sequence

Needs Basic Problem Non-destructive modications Keeping track of chronologies Notications Conict resolution

Outline Basic Problem 1 Motivation 2

Basic Problem Shared storage (RDBMS, Linda, Distributed Databases) limited events, one view Actor and Event-driven Systems lack of shared memory representation Distributed version control systems mostly les storage, human-operated, complete copies

Outline 1 Motivation 2

Key concepts Tuples sets of named values and references mappings for JavaBeans,.NET objects, tuples, custom objects futures Streams data access memory management synchronization subscription

Stream evolution

Stream manipulation Clone Rollback

Stream manipulation (2) rebase

Stream manipulation (3) conict-check merge

Events Modularity: inversion of control Tuples: modication events Streams: update events, conict notications Live searches

Features 1 Data coherency. A fundamental feature of a memory system is to preserve the coherence contracts with the computational entities. 2 Synchronous and asynchronous. 3 Distribution: physical and logical. 4 Event-driven. 5 Abstraction.

Outline 1 Motivation 2

Software overview

Parallel clustering application number of cores 1 2 4 8 execution time 7.821s 3.923s 2.041s 1.035s speedup 1.00 1.97 3.80 7.50

Stream Allocation

Conclusion Reasonable performance Good code reuse Outlook Develop Actor patterns Distributed implementations Domain application

Discussion Need for a domain app

Appendix - Sequences