Enterprise Job Scheduling for Clustered Environments Stratos Paulakis, Vassileios Tsetsos, and Stathes Hadjiefthymiades P ervasive C omputing R esearch.

Slides:



Advertisements
Similar presentations
Achieving Elasticity for Cloud MapReduce Jobs Khaled Salah IEEE CloudNet 2013 – San Francisco November 13, 2013.
Advertisements

Omid Efficient Transaction Management and Incremental Processing for HBase Copyright © 2013 Yahoo! All rights reserved. No reproduction or distribution.
SLA-Oriented Resource Provisioning for Cloud Computing
ZHT 1 Tonglin Li. Acknowledgements I’d like to thank Dr. Ioan Raicu for his support and advising, and the help from Raman Verma, Xi Duan, and Hui Jin.
Lecture 36: Chapter 6 Today’s topic –RAID 1. RAID Redundant Array of Inexpensive (Independent) Disks –Use multiple smaller disks (c.f. one large disk)
Ontology-Based User Modeling for Pedestrian Navigation Systems Panayotis Kikiras, Vassileios Tsetsos, and Stathes Hadjiefthymiades P ervasive C omputing.
Meeting Service Level Objectives of Pig Programs Zhuoyao Zhang, Ludmila Cherkasova, Abhishek Verma, Boon Thau Loo University of Pennsylvania Hewlett-Packard.
Oracle Data Guard Ensuring Disaster Recovery for Enterprise Data
Towards High-Availability for IP Telephony using Virtual Machines Devdutt Patnaik, Ashish Bijlani and Vishal K Singh.
G Robert Grimm New York University Scalable Network Services.
Team 2: The House Party Blackjack Mohammad Ahmad Jun Han Joohoon Lee Paul Cheong Suk Chan Kang.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Semantic Location Based Services for Smart Spaces Kostas Kolomvatsos, Vassilis Papataxiarhis, Vassileios Tsetsos P ervasive C omputing R esearch G roup.
G Robert Grimm New York University Scalable Network Services.
1 Internet Management and Security We will look at management and security of networks and systems. Systems: The end nodes of the Internet Network: The.
Towards Autonomic Hosting of Multi-tier Internet Services Swaminathan Sivasubramanian, Guillaume Pierre and Maarten van Steen Vrije Universiteit, Amsterdam,
PNUTS: YAHOO!’S HOSTED DATA SERVING PLATFORM FENGLI ZHANG.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
Highly Available ACID Memory Vijayshankar Raman. Introduction §Why ACID memory? l non-database apps: want updates to critical data to be atomic and persistent.
ATIF MEHMOOD MALIK KASHIF SIDDIQUE Improving dependability of Cloud Computing with Fault Tolerance and High Availability.
Word Wide Cache Distributed Caching for the Distributed Enterprise.
PMIT-6102 Advanced Database Systems
MobSched: An Optimizable Scheduler for Mobile Cloud Computing S. SindiaS. GaoB. Black A.LimV. D. AgrawalP. Agrawal Auburn University, Auburn, AL 45 th.
Orbe: Scalable Causal Consistency Using Dependency Matrices & Physical Clocks Jiaqing Du, EPFL Sameh Elnikety, Microsoft Research Amitabha Roy, EPFL Willy.
+ CS 325: CS Hardware and Software Organization and Architecture Cloud Architectures.
Monitoring Latency Sensitive Enterprise Applications on the Cloud Shankar Narayanan Ashiwan Sivakumar.
Oracle Coherence Product Overview Raanan Dagan / Coherence Team.
Task Scheduling for Highly Concurrent Analytical and Transactional Main-Memory Workloads Iraklis Psaroudakis (EPFL), Tobias Scheuer (SAP AG), Norman May.
Service Architecture of Grid Faults Diagnosis Expert System Based on Web Service Wang Mingzan, Zhang ziye Northeastern University, Shenyang, China.
High Throughput Computing on P2P Networks Carlos Pérez Miguel
1 Moshe Shadmon ScaleDB Scaling MySQL in the Cloud.
Mesos A Platform for Fine-Grained Resource Sharing in the Data Center Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony Joseph, Randy.
MARISSA: MApReduce Implementation for Streaming Science Applications 作者 : Fadika, Z. ; Hartog, J. ; Govindaraju, M. ; Ramakrishnan, L. ; Gunter, D. ; Canon,
1 Multiprocessor and Real-Time Scheduling Chapter 10 Real-Time scheduling will be covered in SYSC3303.
Module 10: Maintaining High-Availability. Overview Introduction to Availability Increasing Availability Using Failover Clustering Standby Servers and.
Usenix Annual Conference, Freenix track – June 2004 – 1 : Flexible Database Clustering Middleware Emmanuel Cecchet – INRIA Julie Marguerite.
Achieving Scalability, Performance and Availability on Linux with Oracle 9iR2-RAC Grant McAlister Senior Database Engineer Amazon.com Paper
Log-structured Memory for DRAM-based Storage Stephen Rumble, John Ousterhout Center for Future Architectures Research Storage3.2: Architectures.
Server to Server Communication Redis as an enabler Orion Free
Fast Crash Recovery in RAMCloud. Motivation The role of DRAM has been increasing – Facebook used 150TB of DRAM For 200TB of disk storage However, there.
GFS : Google File System Ömer Faruk İnce Fatih University - Computer Engineering Cloud Computing
OSIsoft High Availability PI Replication
1 Admission Control and Request Scheduling in E-Commerce Web Sites Sameh Elnikety, EPFL Erich Nahum, IBM Watson John Tracey, IBM Watson Willy Zwaenepoel,
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
Grid Computing Framework A Java framework for managed modular distributed parallel computing.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Implementation and performance analysis of.
MSE Portfolio Presentation 1 Doug Smith November 13, 2008
HADOOP DISTRIBUTED FILE SYSTEM HDFS Reliability Based on “The Hadoop Distributed File System” K. Shvachko et al., MSST 2010 Michael Tsitrin 26/05/13.
Distributed Computing Systems CSCI 4780/6780. Scalability ConceptExample Centralized servicesA single server for all users Centralized dataA single on-line.
Shouqing Hao Institute of Computing Technology, Chinese Academy of Sciences Processes Scheduling on Heterogeneous Multi-core Architecture.
Cluster computing. 1.What is cluster computing? 2.Need of cluster computing. 3.Architecture 4.Applications of cluster computing 5.Advantages of cluster.
1 Hierarchical Parallelization of an H.264/AVC Video Encoder A. Rodriguez, A. Gonzalez, and M.P. Malumbres IEEE PARELEC 2006.
Replicazione e QoS nella gestione di database grid-oriented Barbara Martelli INFN - CNAF.
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
LIOProf: Exposing Lustre File System Behavior for I/O Middleware
The Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Presenter: Chao-Han Tsai (Some slides adapted from the Google’s series lectures)
PACMan: Coordinated Memory Caching for Parallel Jobs Ganesh Ananthanarayanan, Ali Ghodsi, Andrew Wang, Dhruba Borthakur, Srikanth Kandula, Scott Shenker,
OSIsoft High Availability PI Replication Colin Breck, PI Server Team Dave Oda, PI SDK Team.
Optimizing Distributed Actor Systems for Dynamic Interactive Services
Univa Grid Engine Makes Work Management Automatic and Efficient, Accelerates Deployment of Cloud Services with Power of Microsoft Azure MICROSOFT AZURE.
Open Source distributed document DB for an enterprise
Maximum Availability Architecture Enterprise Technology Centre.
A Technical Overview of Microsoft® SQL Server™ 2005 High Availability Beta 2 Matthew Stephen IT Pro Evangelist (SQL Server)
Choosing a MySQL Replication & High Availability Solution
PA an Coordinated Memory Caching for Parallel Jobs
Business Requirements
Building a Database on S3
Discretized Streams: A Fault-Tolerant Model for Scalable Stream Processing Zaharia, et al (2012)
Business Requirements
Data Grid Patterns Brian Oliver | Global Solutions Architect | Oracle Corporation | JBFOne 2008.
Presentation transcript:

Enterprise Job Scheduling for Clustered Environments Stratos Paulakis, Vassileios Tsetsos, and Stathes Hadjiefthymiades P ervasive C omputing R esearch G roup C ommunication N etworks L aboratory Department of Informatics and Telecommunications University of Athens – Greece Santorini Greece

Outline Introduction System Design System Implementation Performance Evaluation & Comparison with Quartz Scheduler Conclusions

Introduction System-level scheduling vs. Application-level scheduling PoLoS platform for LBS –IST FP5 Project –Scheduler was a core architectural component (time- triggered SMS/WAP services) Clustering: modern solution for scalability and fault-tolerance in enterprise systems Objective –Design and implementation of a cluster-aware version of the original Scheduler

Functional Requirements Time-accuracy and low delay –Jobs should commence execution as close as possible to their registered time –Delay tolerance depends on the application Efficiency and scalability –High throughput is mandatory in large-scale applications Robustness through job persistence –System crashes should not result in data loss –It imposes a performance overhead High availability and fault tolerance –Near-zero downtime –No missed job execution Logging –Billing, administration, SLAs

Technical Requirements Asynchronous decoupling –The scheduling process should run independently from the job executions Parallel job execution –Multi-threaded job execution Load balancing –Maximizing utilization of available resources –Client- or server-side Clustering –Deals with most requirements –Challenge: global timer is a singleton object

Related Systems KronovaQuartzFlux Custom Java Jobs√√√ Simple Time-Scheduling (start/stop time, period) √√√ Event-Driven Scheduling√√√ API√√√ JMX-compatibleX√X Logging√√√ JTA-enabledX√X Tracking DataX√X Clustering√√√ Load-Balancing√√√ Fault-Tolerance (Fail- Over) PoorModerate (the only point of failure is the DB) Poor

Architecture Scheduling Management Caching Execution Scheduling Management Caching Execution Management Caching Execution Scheduling Queue Node ANode B Node C - Master

Caching Subsystem Distributed in-memory cache Synchronous and asynchronous replication Optimistic and pessimistic locking A DB is asynchronously updated Implementation: JBossCache –Aspect-oriented programming techniques for cache updates

Scheduling Subsystem JMX Timer –JBoss implementation Java 5.0 JMX Timer class has limitations in multi-threading (high timer delays) Singleton design pattern –one instance may be instantiated across the cluster Recovers job trigger times after master node crash Cache job data Put job into queue Job trigger

Performance Evaluation Setup Setup –Cluster with 2 nodes (AMD 64bit GHz, 1GB RAM) –JBoss 4.0.4, MySQL 5.0 –JMeter for workload generation, JProfiler for performance profiling Metrics –Maximum throughput: scalability measure –Delays Average total delay T1: timer delay, T2: persistence delay, T3: queuing delay

Performance Evaluation Setup II PoLoS - Synchronous replication PoLoS - Asynchronous replication Clustered Quartz JMeter parameters: –Discrete user requests: 1000, 2000, …, 4000 –Ramp up period: 120 seconds –Repetitions: 10 –Period: variable (60, 120, 180, …, 300 seconds) –Job logic: a logging command

Maximum Throughput Original non-clustered scheduler: ~3000 jobs/min PoLoS sync: 2998 jobs/min user requests PoLoS async: 2810 jobs/min – 6000 user requests Quartz: 240 jobs/min – 4000 user requests –Transaction isolation errors during persistence  high latency –Server crashed for more than 4000 user requests Job period = 120 sec

Delays Job period = 60 sec 1000 jobsT2 Polos sync3.2 ms Polos async0.75 msec Quartz91905 msec

Delay Distribution T1T2 Polos sync41549 ms7.1 ms Polos async490 ms1 ms Quartz120 ms ms 2000 jobs with period 60 sec

Conclusions JBoss JMX timer resulted in lower timer delays (T1) but the MDBs could not operate at that high rate Asynchronous replication is much more efficient than synchronous When the maximum throughput is reached, delays increase dramatically

Thank You! Questions???