Top Banner
External Research e Science Yogesh Simmhan eScience Group | Microsoft Research Catharine van Ingen, Roger Barga, Microsoft Research Alex Szalay, Johns Hopkins University Jim Heasley, University of Hawaii
18

eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

Jun 08, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

External Research

eScience

Yogesh SimmhaneScience Group | Microsoft Research

Catharine van Ingen, Roger Barga, Microsoft ResearchAlex Szalay, Johns Hopkins UniversityJim Heasley, University of Hawaii

Page 2: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Science is producing vast quantities of data

Data needs to be ingested & published for community use

Different user roles, different domain/IT expertise

Provenance, reliability, semantics are key!

Commodity hardware

Producer

Raw Data

ValetIngested

Data

Curator

Verified Data

Publisher

Published Data

Consumer

Page 3: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Scientific workflows are popular with scientists

Composable & reusable pipelines supporting data flows

Diverse execution environments, tracking & monitoring

Workflows are suitable for data ingestBut reliability is important for “valet” workflows

Workflow design models for reliability in distributed environment

Workflow framework features for fault tolerance

Page 4: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Panoramic Survey Telescope And Rapid Response System

Discover dangerous asteroids & comets.Use data for Solar System, cosmology study

One of the largest visible light telescopes2/3rds of sky scanned thrice a month

Large, growing data collection

Annual 1PB of raw images | 30TB of community data | 5.5B objects | 350B detections

Daily 2.5TB image data | 100GB of shared data | 1000 images | 150M detections

Image Processing

Pipeline (IPP)

Unix Cluster

Raw Digital

Images

[~1PB/yr]

Detections, Objects, Meta-

data (Comma Separated

Value files) [~100TB/yr]

Object Data

Manager (ODM)

MS-SQL DB on

Win2008 Servers

CASJobs Batch

Submission Portal

Query Results ↔ SQL Query ~300 Astronomers

The PS1

Telescope at

Haleakala,

Maui, Hawaii

Page 5: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Data partitioned as dist-ributed DB with viewsWinHPC Cluster,MSSQL

3 copies: hot/cold/warm

CSV files arrive from Image Pipeline: 1k daily

Each file loaded into one ‘Load’ database

Load DBs from each week merged with prior data in ‘Cold’ database

Copies of new Cold DB surfaced to users

Workflows for data ops:

RAID Storage

“Hot” DB “Warm” DB

Database is

Logical Store

S1 S2 S16 S14 S7 S8 S9 S11 S15 S16 S3 S1

S1 S2 S3 S15 S16L192 L581

“Cold” DB

Cold DB spatial

partitionsLoad DB

partition

csv

csv

csv

CSV Batch data

product on file

system logical

store

Offline Servers

Online Servers

Hot/Warm DB

spatial partitions

Hot/Warm DB

spatial partitions

Warm

DB

CSV

BatchLoad

Merge

Load

DB

Load

DB

CSV

Batch

Cold

DB

Cold

Merged

DB

Copy

Warm

DB

Flip Warm

DPV

Hot

DB

Copy Hot

DBFlip Hot

DPV

Load Workflow

(900/night)

Loads a CSV Batch

into a new Load DB

(~100MB)

Merge Workflow

(16/week)

Merge Load DBs

into a Cold DB

(~4TB)

Copy Workflow

(32/week)

N/W copy merged

Cold DB to replace

Hot/Warm DB

(~4TB)

Flip Workflow

(2/week)

Pause CASJobs &

recreate Distributed

Partion View over the

16 Hot/Warm DBs

Load, Merge, Copy, Flip running on Trident

Page 6: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Well defined, Well tested workflowsValet workflows run repeatedly, their impact is cumulativeWorkflows and activities do not change oftenChanges need to be synchronized with repository scheduleTesting is crucialE.g. Load workflow run 900 times/day. Faults can compound.

Granular, Reusable workflowsAvoid custom activities for ad hoc tasksEasier to test and maintain library of core activitiesSeparate policy from mechanism E.g. static n/w filesE.g. Copy & Flip are separate workflows. Preamble for Copy is separate from actual copy action.

Page 7: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Workflows as Data State Machines

State of repository depends on state of its constituent resourcesWorkflows operate on state machines

Data containers have statesWorkflows and activities cause state transitions

Instantly determine state of systemEasier to interpret workflow progress, complex interactionsImpact of workflows on states are different. E.g. Load vs. Merge workflow failures

Easily define fault paths based on data stateGoal: Recovery from fault state to clean state

Page 8: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Does

Not

Exist

Load

Complete

Create DB

Create DB

Failed

Create DB

SuccessInsert CSV Success

Validate

Success

Insert CSV

Failed

Insert CSV

Batch

Validate

DataCSV

Batch

Load Workflow

Activities

State Machine for

Load DB

State transitions take

place when activities

execute.

Success States

Green/Solid : Clean

Yellow/Dashed:

In Flight

Failed States

Orange/Dotted:

Recoverable

Red/Dotted:

Unrecoverable

Loading

Drop DB

(if exists) Load

DB

Drop DB

SuccessDrop DB

Failed

Activity Type

Blue/Solid : Mainline

Code

Purple/Dashed:

Recovery PreambleContinues in the

Merge workflow

Validate

Failed

Created

Workflows as Data State Machines…

Simple state definitions depending on stage of loading data, recovery model usedActivities should cause at most one state changeStates used for recovery workflow, policy workflow & display

Page 9: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Workflow Recovery Baked into Design

Faults are a fact of life in distributed systems: hardware loss, transient failure, data errors

Recovery as part of normal workflow makes handling faults a routine action

Coarser (simpler) approach to recovery

Different recovery designs

Re-Execute Idempotent

Resume Idempotent

Recover-Resume Idempotent

Independent Recovery

Page 10: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Workflow Recovery Baked into Design…

Re-Execute Idempotent RecoveryIdempotent workflows that can be rerun without side-effects

Input data states valid, no in-place update

Retry limits

E.g. Flip workflow for DPV reconstruction

Resume Idempotent RecoveryIdempotent activities allow “goto” at start

Cost, complexity of resume vs. re-execute

E.g. Copy workflow for parallel file copies

Page 11: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Workflow Recovery Baked into Design…Recover & Resume

Separate activity(s) to rollback to initial stateReduce the problem to resume/re-execute

Passive Recovery: Rollback activity(s) at start of

workflow. E.g. Load workflow drop database

Active Recovery: Rollback workflow captures operations to undo dirty state. E.g. Merge workflow on machine failureFail fast vs. Fault tolerant activities

Independent RecoveryComplex faults requiring global synchronizationSanity check, cleanup, consistent statesManually coordinated. E.g. Loss of merged Cold DB

Page 12: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Specific requirements to support data valet tasks. E.g. tracking more imortant than ad hoc composition

Provenance Collection

Track operations across data, activities, workflows, distributed temporally & spatially

Record inputs and outputs to activities

Valet workflows need fine grained, system level provenance (logging)

Reliable, scalable provenance collection

Page 13: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Provenance Collection for Data State Tracking

Provenance provides record of state transitions

Provenance can be mined for current state of data resources. Recovery based on it.

Direct State Recording: Activities expose the state transition they effect as in/outputs

Pro: Easily queried; Con: Reusability, local view

Indirect State Recording: External mapping from activity execution to state transition

Pro: Reusable, WF level; Con: Complexity

PS uses indirect model

Page 14: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Provenance Collection for Forensics

Investigate cause of distributed, repetitive faults

Low level, system provenance ~monitoring, logging, tracing: disk, machine, services, I/O

Scalable & Resilient Provenance Collection

Long running, continuous workflow execution

Fine-grained collection

Stored till data release, even instrument lifetime. E.g. Status of 30,000 Load workflows

Efficient querying for recovery, current state

Provenance loss → Doubtful repository state

PS has realtime SQL replication of provenance

Page 15: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Support for Workflow Recovery ModelsRe-run previous workflow with same inputsWell defined exceptions & recovery execution paths

E.g Recover & Resume workflows

Identify exception source. Transmit it, reliably, to initiate recovery.Low level, system provenance ~monitoring, logging, tracing: disk, machine, services, I/O

Fail-fast guaranteesWorkflows, activities must fail fastFramework must halt on errors: timeout, liveliness, network connectivity

Early, accurate detection → Early recovery

Trident Workflow configured to fail fast for PS Synchronous provenance logging to RegistryHPC fault event monitoring

Page 16: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Reliability of repository data management less studied compared to other aspects

Data reliabilityReplication in Grids, Clouds – replicated file system, databaseTransparency vs. Update, recovery overheadSpecialized for repositories operate only by workflows, not general purpose applications

Application reliabilityOver-provisioning workflows. Infeasible.Checkpoint – restart. Insufficient.Transactional workflows. Do not support data states.

Page 17: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

eScience

Data management in eScience is complex

Large shared data respositories on commodity clusters more common

Data valets have special needs from workflows

Goal driven approach to workflow design using data state machines

Simple models for reliability & recovery go a long way

Trident workflow provides tools to support both scientist & valet users

Page 18: eScience Group | Microsoft Research › en-us › research › wp-content › uploads … · External Research eScience Yogesh Simmhan eScience Group | Microsoft Research Catharine

External Research

eScience

Acknowledgements

Maria Nieto-Santisteban, Richard Wilton, Sue Werner,

Johns Hopkins University

Conrad Holmberg, University of Hawaii

Dean Guo, Nelson Araujo, Jared Jackson, Microsoft

Research Trident Workflow Team

www.ps1sc.org

http://research.microsoft.com/en-us/collaboration/tools/trident.aspx