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 ...
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