Overview
When working with data, applications and IT systems, there are routine processes that you need to run. PhixFlow makes it easy for you to set up and manage these processes using tasks and task plans. For example:
- application designers or system administrators can automatically update data in applications
- data modellers can run analysis on models or specific streams tables
- administrators can clear old information from the PhixFlow system, by archiving data from:
- stream record sets
- processing logs
- performance statistics.
Use the task plan properties tab to configure Task Plans. Set the options and add individual Tasks.
If you need to temporarily prevent scheduled task plans from running during system maintenance, see Preventing Task Plans From Running.
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Structuring Tasks
When setting up task plans with tasks that affect streamstables, you must consider whether the streams tables have any dependencies. This affects your options when structuring tasks in task plans.
Either each task affects one streamtable
If there are dependencies between streamstables, configure PhixFlow to have one task per stream table and configure each task to be mandatory.
- Create a set of tasks.
- Each task works on a single streamtable.
- Set the tasks to be mandatory.
- Add the set of tasks to the task plan.
PhixFlow processes the tasks, and therefore the streamstables, in order. PhixFlow must finish a task successfully before it starts to update the next streamtable. This is the safest way to set up tasks that affect streamstables. Always use this method when there are dependencies between streamstables.
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
A model contains connected streams tables that should be run twice daily to update a model with the latest data from an external database. A scheduled task plan contains:
PhixFlow will process TaskA until changes to streamtable-a are finished. As this now has the latest data, when TaskB runs, it pulls the new data into streamtable-b. Finally TaskC pulls new data from streamtable-b into streamtable-c. |
Or one task affects multiple streamstables
If there are no dependencies between streamstables, you can add multiple streams tables to the task. In this case you have no control over the order in which streams tables will be processed. Only use this method if there is you are sure there are no dependencies between the streamstables.
- Create a task
- Add multiple streams tables to a task
- Add the task to the task plan.
This has the advantage that you only need to configure one task to change multiple streamstables.
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Three streamstables, a, b and c are in different models and have not data dependencies. A task plan to update the stream the table data contains a single task which runs analysis on streamtable-a, streamtable-b and streamtable-c. PhixFlow processes all the streams tables concurrently. |
Mandatory Tasks
The tasks are run in the order they are listed in the the task plan.
You can specify that a task in a task plan is mandatory This means the task must complete before the next task in the sequence can run. If a mandatory task fails, PhixFlow will not run the following tasks. You must resolve the issue preventing the task from running and then restart the task.
Note |
---|
Rerunning a task plan that previously failed means it continues that run from where it failed. If data related to an previous task has changed this is not reflected in the results of the rerun. This means that after you have rerun a previously failed task, consider then running the task again, to ensure all data or processes are up-to-date. |
Anchor task-type task-type
Types of Task
task-type | |
task-type |
Analysis TasksAnchor analysisTask analysisTask
Use an analysis task to run analysis on the streamtable(s) in the task.
Rollback TasksAnchor rollbackTask rollbackTask
Use a rollback task to effectively undo run analysis on a streamtable. When you run a rollback task it rolls back all data in each of the listed streamstables, deleting the streamrecord-sets. The list of stream record-sets is empty and there are no data records in the streamtable. For information about how to rollback streams tables manually, see Rollback Recordsets.
Configuration Export TasksAnchor configExportTask configExportTask
Use a configuration export task to export selected applications and packages or a full configuration. The exported file is saved to the download area; see Using the Download Area.
System TasksAnchor systemTask systemTask
Use a system task to perform system-wide housekeeping activities. These include deleting:- managed file entries
- email entries
- temporary files created by file exporters to send by email
- data from incomplete stream record-sets
- log messages and optionally archiving them
- from the PhixFlow database:
- stream table views for which there is no streamno table
- stream tables for which there is no streamtable object, when they are older than the period set in System Configuration → Delete Orphaned Stream Table after Days.
Stream tables Tables become orphaned when their stream table object is deleted or removed by an import process. - temporary tables created during publishing, when they are older than the period set in System Configuration → Delete Temp Tables after Days.
Temporary tables are created by PhixFlow during the publishing process.
Note The system task should be run regularly, for example daily or weekly. When the system task is not run regularly, incomplete stream record-sets can accumulate. If these are large, or many have accummulatedaccumulated, this can slow down PhixFlow's performance. Depending on your PhixFlow database, queries that have to exempt many incomplete stream record-sets can reach system limits. This can prevent PhixFlow and its applications from running.
How long PhixFlow keeps system information, and whether to archive log messages before they are deleted, are controlled by the following parameters in System Configuration:
StreamTable-Data-Delete TasksAnchor archiveTask archiveTask
Use a streamtable-data-delete task to delete data records and stream record-sets that you no longer need in PhixFlow. How long PhixFlow keeps stream table data is configured in stream table properties → Data Retention Settings.
Running a streamtable-data-delete task on a large number of streamstables, or on a stream a table with a large data set, can take some time. We recommend scheduling these tasks for times when the system is quiet, for example overnight.
When streams tables are deleted from the repository, their names are automatically be removed from tasks that refer to them. This means a saved task can become empty.Note Phixflow only runs a streamtable-data-delete task on streams tables that have Data Retention Settings specified. If no data retention values are set, PhixFlow never deletes the data. Stream table data will accumulate, leading to space and performance issues.
See also Deleting Old Data.
Anchor disable disable