dna reassembly

15
DNA REASSEMBLY Using Javaspace Sung-Ho Maeung Laura Neureuter

Upload: tamesis-tanith

Post on 01-Jan-2016

16 views

Category:

Documents


1 download

DESCRIPTION

DNA REASSEMBLY. Using Javaspace Sung-Ho Maeung Laura Neureuter. Overview. Project Description Features of Javaspace Framework - Master/Worker Model - Design Diagram - Remote Method Invocation ( RMI ) Description of Algorithm Performance Lessons Learned Improvements Questions. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: DNA REASSEMBLY

DNA REASSEMBLY

Using Javaspace

Sung-Ho Maeung

Laura Neureuter

Page 2: DNA REASSEMBLY

Overview•Project Description

•Features of Javaspace

•Framework

- Master/Worker Model

- Design Diagram

- Remote Method Invocation ( RMI )

•Description of Algorithm

•Performance

•Lessons Learned

•Improvements

•Questions

Page 3: DNA REASSEMBLY

Project Description

After DNA strand has been split apart by the “shotgun” approach in order to perform sequencing , it needs to be put back together into original sequence.

We used Javaspace to do this “putting back together” of the individual segments.

Page 4: DNA REASSEMBLY

Features of Javaspace

Javaspaces technology is a simple mechanism for dynamic communication, coordination, and sharing of objects between Java clients and servers.

In a distributed application, Javaspace acts as a virtual space between providers and requesters of objects.

One Advantage: Provides synchronization

Javaspace is similar to C-Linda approach, except uses Java. Workers store and access “objects” rather than “tuples”.

Page 5: DNA REASSEMBLY

Visual Representation of Javaspace

Page 6: DNA REASSEMBLY

Framework – Application Patterns

Many different types of patterns can be represented using Javaspace:

- The Replicated-Worker Pattern

- The Command Pattern

- The Marketplace Pattern

- others.

We chose to use the Master/Worker approach to solving the reassembly problem.

Page 7: DNA REASSEMBLY

Framework –Design Diagram

Page 8: DNA REASSEMBLY

Framework – Remote Method Invocation

(RMI) 1/3• Distributed System using Javaspace

• Worker as Server

• Master as Client

• RMIEntry • Host name

• Port

Page 9: DNA REASSEMBLY

Framework – RMI 2/3

• Worker – Put RMIEntry into javaspace

• Host name , port

• Master– Get the RMIEntry from javasapce– Make RMI connection– Execute a function of the worker

Page 10: DNA REASSEMBLY

Framework – RMI 3/3

Page 11: DNA REASSEMBLY

Algorithm Description• We parse a file into random length segments with

overlaps.

• Each worker is assigned a random segment by the master. The rest are thrown out into javaspace.

• Each worker then reads a segment from javaspace and checks to see if its ends match the one it is holding.

• If yes, it combines the segments, and uses this new one to match against.

• If not, it reads another.

• This continues until each worker has checked all segments. (exhaustive).

• When all work is done, master gathers results and prints

Page 12: DNA REASSEMBLY

051015202530

1 3 5 7 9

Number of Workers

Tim

e in

Sec

onds

Single Computer

Paradise

Distributed

Performance Evaluation

Page 13: DNA REASSEMBLY

What We Learned

• JavaSpace Technology• RMI Technology• Javaspace is fun (but slow)• Javaspace might not be the right technology

to do reassembly• Not a huge efficiency difference between

“parallel” and “distributed” with this type of problem.

Page 14: DNA REASSEMBLY

Improvements

• Algorithm needs work.

• Methods of synchronization need to be worked on.

• Load balancing

• Fuzzy matching implementation

Page 15: DNA REASSEMBLY

Questions?