Scheduling and launching distributed data analysis and processing jobs. More...
#include <idata_distribution.h>
Inherits mi::base::Interface_declare< 0x91224ed0, ... >.
Public Member Functions | |
virtual mi::Sint32 | execute (IDistributed_data_job *job, mi::neuraylib::IDice_transaction *dice_transaction) const =0 |
Launching the user-implemented distributed data job. More... | |
Scheduling and launching distributed data analysis and processing jobs.
The scheduler takes an user-implemented IDistributed_data_job
and executes it. The scheduler first examines the job's scheduling mode and determines the data locality of the targeted distributed dataset. That is, the scheduler determines on which cluster node which data subset is hosted. The scheduler then sends the execution threads to these cluster nodes for processing these datasets. One execution thread per subset. The data locality will be passed back to the job for information and potential use.
An instance of a IDistributed_data_job_scheduler
interface implementation is created and exposed by the interace IData_distribution
, which is available through the ISession
interface.
|
pure virtual |
Launching the user-implemented distributed data job.
[in] | job | The user-implemented distributed data job for scheduling and cluster-wide execution. |
[in] | dice_transaction | The DiCE transaction that this job runs in. |