08.02.2013 Views

New Statistical Algorithms for the Analysis of Mass - FU Berlin, FB MI ...

New Statistical Algorithms for the Analysis of Mass - FU Berlin, FB MI ...

New Statistical Algorithms for the Analysis of Mass - FU Berlin, FB MI ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5.4. QAD GRID WORKER 129<br />

field. A worker that computes a task with a draft flag will not directly insert<br />

<strong>the</strong> result into <strong>the</strong> database or copy into a target repository but will send it<br />

into a to be verified zone on <strong>the</strong> QAD plat<strong>for</strong>m server. If <strong>the</strong> results from <strong>the</strong><br />

different workers have arrived <strong>the</strong> plat<strong>for</strong>m server compares and ei<strong>the</strong>r stores<br />

or rejects <strong>the</strong>m. In <strong>the</strong> latter case two new tasks are created until <strong>the</strong> two<br />

results are identical.<br />

5.4 QAD Grid Worker<br />

The QAD Grid worker is a program that runs on a client machine and can<br />

per<strong>for</strong>m exactly one particular kind <strong>of</strong> analysis / computation (such as peak<br />

picking) or service (e.g. convert a file). As described in section 5.3.1 communication<br />

within <strong>the</strong> Grid (that is between servers and workers) is entirely done<br />

via database entries. The most striking feature <strong>of</strong> a QAD Grid worker is that<br />

� it can be written in any programming language<br />

� runs on (almost) any hardware / operating system plat<strong>for</strong>m<br />

� can contain arbitrarily complex algorithms<br />

� can per<strong>for</strong>m system calls (e.g. OS dependent copy functions)<br />

� can enable non-Grid enabled executable programs (binaries or scripts)<br />

A worker can be tailored to specific needs and written in any programming<br />

language that supports (T-)SQL database access. The following sections describe<br />

<strong>the</strong> basic functions a worker needs to support and an extended standard<br />

reference implementation. Fur<strong>the</strong>r, details <strong>of</strong> worker integration into <strong>the</strong> QAD<br />

Grid are given.<br />

5.4.1 Functionality<br />

Base<br />

As described above a worker essentially runs on some client machine and<br />

computes available jobs. There<strong>for</strong>e, a worker needs to have <strong>the</strong>se base features:<br />

� Connect to and register at <strong>the</strong> Grid’s Plat<strong>for</strong>m Server. Registration<br />

includes <strong>the</strong> announcement <strong>of</strong> what kind <strong>of</strong> job it can compute (see<br />

section 5.3.1).<br />

� Request a job and respective parameters to compute<br />

� Load needed data (see section 5.3.2).<br />

� Compute job<br />

� Transfer results back into <strong>the</strong> Grid (see section 5.3.1).<br />

� Send alive and status messages (e.g. local workload) to <strong>the</strong> Grid

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!