Fast/Unload overview: Difference between revisions

From m204wiki
Jump to navigation Jump to search
(Automatically generated page update)
m (more conversion cleanup)
Line 3: Line 3:
<var class="product">Fast/Unload</var> is a utility whose primary function is to quickly unload
<var class="product">Fast/Unload</var> is a utility whose primary function is to quickly unload
data from a <var class="product">Model 204</var> data file to one or more sequential data sets.
data from a <var class="product">Model 204</var> data file to one or more sequential data sets.
The <var class="product">Fast/Unload</var> utility consists of several functional units.
The <var class="product">Fast/Unload</var> utility consists of several functional units:
One unit is a data extraction facility which reads data from a <var class="product">Model 204</var>
<ul>
data file.
<li>One unit is a data extraction facility which reads data from a <var class="product">Model 204</var>
Another unit is
data file. </li>
 
<li>Another unit is
a compiler which converts a special data language describing
a compiler which converts a special data language describing
the output format to machine language.
the output format to machine language.
The generated machine language
The generated machine language
actually performs the output function.
actually performs the output function.</li>
A third unit is a reporting facility which provides a job log and reports
 
<li>A third unit is a reporting facility which provides a job log and reports
any special conditions or errors that might have occurred during
any special conditions or errors that might have occurred during
a run.
a run.</li>
<p></p>
</ul>
 
<var class="product">Fast/Unload</var> can either be invoked directly as a standalone load module
<var class="product">Fast/Unload</var> can either be invoked directly as a standalone load module
or from a User Language program.
or from a [[SOUL]] program.
When invoked as a standalone load module, <var class="product">Fast/Unload</var>
When invoked as a standalone load module, <var class="product">Fast/Unload</var>
enqueues the data file in share mode unless explicitly requested otherwise.
enqueues the data file in share mode unless explicitly requested otherwise.
Line 24: Line 28:
job to ensure that when <var class="product">Fast/Unload</var> is run as a standalone load module,
job to ensure that when <var class="product">Fast/Unload</var> is run as a standalone load module,
<var class="product">Model 204</var> does not have the file to be unloaded locked in exclusive mode.
<var class="product">Model 204</var> does not have the file to be unloaded locked in exclusive mode.
<p></p>
 
==Fast/Unload User Language Interface==
==Fast/Unload SOUL Interface==
The <var class="product">Fast/Unload SOUL Interface</var>, purchased as a separate <var class="product">Fast/Unload</var> option,
The <var class="product">[[Fast/Unload SOUL Interface]]</var>, purchased as a separate <var class="product">Fast/Unload</var> option,
allows one to invoke <var class="product">Fast/Unload</var> using the FastUnload or FastUnloadTask method
allows one to invoke <var class="product">Fast/Unload</var> using the <var>[[FastUnload (Recordset function)|FastUnload]]</var> or <var>[[FastUnloadTask (Recordset function)|FastUnloadTask]]</var> method
of the Recordset class or the $Funload function in a User Language program.
of the <var>Recordset</var> class, or using the <var>[[$Funload]]</var> function in a SOUL program.
 
With this approach, an application builds a set of records to be unloaded,
With this approach, an application builds a set of records to be unloaded,
using standard User Language statements; for example, you can reduce unload
using standard User Language statements; for example, you can reduce unload
Line 37: Line 42:
the <var class="product">Fast/Unload SOUL Interface</var> automatically
the <var class="product">Fast/Unload SOUL Interface</var> automatically
provides the ability to unload data from a <var class="product">Model 204</var> group; standalone <var class="product">Fast/Unload</var> provides that functionality by allowing
provides the ability to unload data from a <var class="product">Model 204</var> group; standalone <var class="product">Fast/Unload</var> provides that functionality by allowing
multiple <var class="product">Model 204</var> file names on the OPEN statement.
multiple <var class="product">Model 204</var> file names on the <var>OPEN</var> statement.
<p></p>
 
With the <var class="product">Fast/Unload SOUL Interface</var> the processing can
The <var class="product">Fast/Unload SOUL Interface</var> <i>processing can
be performed either <b>synchronously</b> or <b>asynchronously</b>.
be synchronous or asynchronous</i>.
<p></p>
 
A system manager can
A system manager can
cancel or examine <var class="product">Fast/Unload</var> requests, and each user
cancel or examine <var class="product">Fast/Unload</var> requests, and each user
can perform the same functions on asynchronous requests that he or she
can perform the same functions on asynchronous requests that he or she
initiated.
initiated.
<p></p>
 
See [[Fast/Unload SOUL Interface]] for more information about the <var class="product">Fast/Unload SOUL Interface</var>.
<div id="WIKFUN$$topics"></div>
<div id="WIKFUN$$topics"></div>
==Fast/Unload topics==
==Fast/Unload topics==

Revision as of 23:17, 15 January 2015

Fast/Unload is a utility whose primary function is to quickly unload data from a Model 204 data file to one or more sequential data sets. The Fast/Unload utility consists of several functional units:

  • One unit is a data extraction facility which reads data from a Model 204 data file.
  • Another unit is a compiler which converts a special data language describing the output format to machine language. The generated machine language actually performs the output function.
  • A third unit is a reporting facility which provides a job log and reports any special conditions or errors that might have occurred during a run.

Fast/Unload can either be invoked directly as a standalone load module or from a SOUL program. When invoked as a standalone load module, Fast/Unload enqueues the data file in share mode unless explicitly requested otherwise. If the enqueue fails, the Fast/Unload terminates with an error condition code. It is thus the file manager's job to ensure that when Fast/Unload is run as a standalone load module, Model 204 does not have the file to be unloaded locked in exclusive mode.

Fast/Unload SOUL Interface

The Fast/Unload SOUL Interface, purchased as a separate Fast/Unload option, allows one to invoke Fast/Unload using the FastUnload or FastUnloadTask method of the Recordset class, or using the $Funload function in a SOUL program.

With this approach, an application builds a set of records to be unloaded, using standard User Language statements; for example, you can reduce unload time by restricting the set of records using indexed Model 204 fields. The Fast/Unload load module runs in a subtask (or PST under CMS) of Model 204. Since the unload is from a Model 204 record set, the Fast/Unload SOUL Interface automatically provides the ability to unload data from a Model 204 group; standalone Fast/Unload provides that functionality by allowing multiple Model 204 file names on the OPEN statement.

The Fast/Unload SOUL Interface processing can be synchronous or asynchronous.

A system manager can cancel or examine Fast/Unload requests, and each user can perform the same functions on asynchronous requests that he or she initiated.

Fast/Unload topics