Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

Streams are a key model component. They represent a structured store of data within PhixFlow receiving data from one or more components, processing it then storing it.

Insert excerpt
_standard_settings
_standard_settings
nopaneltrue

The tab toolbar has the following additional buttons: 

Insert excerpt
_stream_sets_show
_stream_sets_show
nopaneltrue
Insert excerpt
_stream_views
_stream_views
nopaneltrue
Insert excerpt
_run_analysis
_run_analysis
nopaneltrue
.

When you make changes to streams and stream attributes, PhixFlow automatically publishes them to the stream data tables in the database; see Publishing Streams.

Stream Properties

...

FieldDescription
NameThe name of the stream.
Enabled
Insert excerpt
_check_box_ticked
_check_box_ticked
nopaneltrue
 to include the steam during analysis runs.
Static Data

Insert excerpt
_check_box_ticked
_check_box_ticked
nopaneltrue
 to set the stream to hold static data. Static data is reference or "look up" data that is used as part of a stream calculation.

Updating a static stream

In general, static streams are not updated during an analysis run that is initiated on another stream in the model. The exception is when an incoming push pipe is triggered, as this will force the stream to update itself.

Instead, to update the data in a static stream you must run analysis directly on the stream via:

  • the model
  • a task plan.
PeriodSelect the time period for the stream. This can be either a regular period, or variable.
  • Transactional: allows multiple users to run independent analysis tasks at the same time.
  • Daily: generate or collect data every day.
  • Monthly: generate or collect data every month.
  • Variable: generate or collect data since the more recent run of the stream to the current date.

As transactional streams need a UID attribute, PhixFlow automatically creates this stream attribute if it does not already exist.

Default Data Range

This option affects the following items for which this is the backing stream:

  • stream views
  • dashboards
  • card layout components.

Insert excerpt
_data_range
_data_range
nopaneltrue

If no option is is selected, PhixFlow assumes the default data range is All.

You can override this setting using the options Use Custom Data Range and Data Range available:

You cannot override this setting for a stream view.

Stream Type

Select the stream type. The type indicates the function that operates on the data.

  • Aggregate Stream
  • Calculate Stream
  • CalculateBySet Stream
  • Cartesian Stream
  • Merge Stream 
Supersede Items on Pipe

Select a loop pipe from the list of those available. 

A loop pipe links the stream back to itself. It compares new data records to the existing data records. If there is a repeated record PhixFlow uses the new one in the stream and marks  the old one as superseded.

Audit Manual Changes

This check box is available when the Period is Transactional.

Insert excerpt
_check_box_ticked
_check_box_ticked
nopaneltrue
 to update and delete initiated by stream actions (not those carried out by analysis runs) will automatically mark the existing record as superseded and create a new stream set. The new versions of the updated records will be placed in the new stream set. Inserts will simply create a new stream set, and add the inserted record into that stream set.

When Audit Manual Changes is first set, the attributes UpdateActionUpdatedByNameUpdatedByID and UpdatedTime will be created if they do not already exist. If you do not require these attributes, delete them. For the UpdatedByName attribute, PhixFlow creates a field of 250 characters. (In versions up to 8.0.4, the field was 50 characters long.)

UpdateAction must be set to the type of action, such as INSERT, UPDATE or DELETE. The other attributes will be populated if they exist on the stream:

  • UpdatedByName - the name of the user that performed the update, 
  • UpdatedByID - the internal id of the user that performed the update 
  • UpdatedTime - the date and time the update was made

...

The grid contains a list of the stream attributes in the stream. This section has a toolbar with standard buttons and 

Insert excerpt
_stream_show
_stream_show
nopaneltrue
 and 
Insert excerpt
_file_collector_show
_file_collector_show
nopaneltrue
.

The grid lists the attributes (data columns) in the stream data. To edit the properties of an attribute, double-click the attribute name to open the Stream Attributes properties.

...

To add an existing attribute to the list:

  1. Click 
    Insert excerpt
    _stream_show
    _stream_show
    nopaneltrue
     to list the streams available in the repository.
  2. Expand a stream to show its attributes.
  3. Drag an attribute into this list to add it. 

...

The grid contains a list of actions that use the stream. This section has a toolbar with standard buttons.

To edit the properties of an action, double-click the attribute name. To add an action to the list, click  

Insert excerpt
_add
_add
nopaneltrue
. PhixFlow opens a new Action properties tab.

...

The grid contains a list of stream item actions that can update the stream. This section has a toolbar with standard buttons.

To edit the properties of an action, double-click the attribute name. To add an action to the list, click  

Insert excerpt
_add
_add
nopaneltrue
. PhixFlow opens a new to open the Stream Item Actions properties tab.

...

The grid contains a list of the data views for this stream. This section has a toolbar with standard buttons.

o edit the properties of an stream view, double-click the attribute name to open its Stream View properties tab.

...

FieldDescription
Stream Download LimitThe maximum number of records that a user can download from a stream view or card view on this stream. If no value is set, PhixFlow uses the default limit set in System Configuration→ System Tuning → Default Download File Limit.
Allow Unlimited Downloads

Insert excerpt
_check_box_untick
_check_box_untick
nopaneltrue
 to restrict all users to the Stream Download Limit.

Insert excerpt
_check_box_ticked
_check_box_ticked
nopaneltrue
to display a User Groups section. Specify user groups whose members can download unlimited data from a stream view or card view on this stream. For example, members of the Administrators user group may need to download all data.

User Groups

Available when Allow Unlimited Downloads is ticked.

Use this section to select the user groups whose members can download an unlimited number of records.

This section has a toolbar with standard buttons and 

Insert excerpt
_user_group
_user_group
nopaneltrue
.

The grid contains a list of user groups that are exempt from the Stream Download Limit. To add a user group to the list:

  1. Click
    Insert excerpt
    _user_group
    _user_group
    nopaneltrue
     to list all the user groups in the repository.
  2. Drag user groups into this list to add them to the role. 

To remove user groups, use the

Insert excerpt
_delete
_delete
nopaneltrue
 in the toolbar.

...


...

Data Retention Settings

...

Anchor

...

The number of days data to keep in the stream.

When an stream data delete task runs for a stream, all stream data is deleted if it is at least Keep for X Days old or if it is older than the Keep for Y Stream Sets most recent valid stream sets.

...

data-retain
data-retain

Warning

It is important to always specify the data retention values for every stream you create.

Streams that have no data retention settings will never have their data deleted. This can cause large amounts of data to build up in PhixFlow which causes performance issues.

See also:

FieldDescriptionWhat is Deleted

Keep for N Days

Anchor
keepForXDays
keepForXDays

Enter the number of days to keep data in the stream.

The age of data in a stream set is its 'to' date, relative to the 'to' date of the newest valid stream set in the stream.

See Archiving Stream Data Examples to see how this value can be used within data management strategies.

When a stream-data-delete task runs for a stream and:

  • Keep for X Days only is set, PhixFlow deletes stream data that is older than N days.
  • Keep for Y Stream Sets only is set, PhixFlow keeps the most recent X stream sets and deletes stream sets that exceed X.
  • both Keep for X Days and Keep for
Y Stream Sets are set, stream data will be deleted only if it meets both conditions. If neither
  • Y Stream Sets are set, PhixFlow deletes the stream data
is kept indefinitely.

The age of data in a stream set is its 'to' date, relative to the 'to' date of the newest valid stream set in the stream.

See also:

Keep for Y
  • that meets both conditions.
  • neither Keep for N Days nor Keep for X StreamSets are set, PhixFlow keeps stream data indefinitely. This can lead to performance issues.
Keep for X StreamSets

The number of stream sets

data

to keep in the stream.

See Keep for X Days for the main description of archiving.

AnchorkeepSupersededForXDayskeepSupersededForXDaysKeep Superseded for X Days

The number of days for which to keep superseded data in the stream.

If Track Superseded Data is ticked, then this field will become visible/enabled


Anchor
keepSupersededForXDays
keepSupersededForXDays
Keep Superseded for N Days

Available when Track Superseded Data is selected.

Enter the number of days to keep superseded records in the stream data. 

Tip

Remember to keep superseded records for as long as you want the option to roll back the data.

For example, when Keep Superseded for N Days is set to 4, you can run roll back on data that was superseded up to 4 days ago.

A stream-data-delete task removes supeseded records older than 4 days, so PhixFlow no longer has the data to be able to roll it back.


In a stream where the superseded date is tracked, the stream data

will contain

contains a mixture of

superseded

active records and

"active"

records

- that is, records

that have

not

been superseded.

When

an archive

a stream-data-delete task runs for a stream and:

  • Keep Superseded for N Days only is set, PhixFlow deletes data records that were
marked as
  • superseded more
than
  • than N days ago.
  • Keep Superseded for X
Days days or more than Keep Superseded for Y Stream Sets stream sets ago are deleted.If
  • StreamSets only is set, PhixFlow  deletes superseded records from the stream sets that exceed X.
  • both Keep Superseded for
X
  • N Days
and
  •  and Keep Superseded for
Y
  • X Stream Sets
are
  •  are set, PhixFlow deletes the superseded records
will be deleted only if they
  • that meet both conditions.
If neither are set, superseded records are not deleted.This means, for example, that if you have set
  • neither Keep Superseded for N Days nor Keep Superseded for X
Days to 4, you will be able to roll back 3 days, making the 4th day the latest valid day.Please see the section below on Archiving Superceded Examples to see how this value can be used within Archiving strategies
  • Stream Sets are set, PhixFlow keeps superseded records indefinitely. This can lead to performance issues.
Keep Superseded for
Y If
X StreamSets

The number of stream sets for which to keep superseded data in the stream.

Available when Track Superseded Data is

ticked, then this field will become visible/enabled.See Keep Superseded for X Days for the main description of archiving superseded

selected.

Enter the number of recent stream sets that will retain their superseded data records.


Apply Delete Filter
If this flag is ticked then a dialog box appears within which a filter can be created. This filter will be applied during archiving and only

Image Added

Insert excerpt
_check_box_ticked
_check_box_ticked
nopaneltrue

to open a filter tab where you can set filter conditions; see Filter. PhixFlow applies this filter when it runs a stream-data-delete task. Only the records which match the filter

will be

are deleted.

Store Stream Views

To do

Access Permissions

By default, the permissions to access stream data is set in System Configuration →  Allow access to data by default. You can add specific user groups to restrict access to the stream; see Common Properties → Access Permissions.

...

FieldDescription
Advanced PropertiesOnly use this field with advice from PhixFlow support. 
Database View

Use this option if your database administrator wants to query stream data in the PhixFlow database.

Enter a string in the format v_xxxxWhen the stream is published to the database, PhixFlow creates a  stream view. If the stream is deleted, the next system task that runs will clear the associated stream view from the database.

By default, this field is blank and no stream view is created in the database.

See also Configuring Access to Database Views.

Storage Options
Index Scheme 
Anchor
index_scheme
index_scheme
This determines how indexes on the stream are organised. 
  • All: indexes on the stream are optimised for selecting from all stream sets (non-historied reads).
  • Latest: indexes on the stream are optimised for selecting from the latest stream set (i.e. for historied reads).
  • Superseded: indexes on the stream are optimised for self-updating streams which have a mostly superseded records.
  • None: no indexes are created on the stream.
  • Partitioned: this index scheme is specific to partitioned streams; see Storage Type below. Partitioned streams must use this index scheme, and only partitioned streams can use it.
Storage TypeSpecifies how data for the Stream should be stored:
  • Database: Store the data in a regular table within the PhixFlow database. This is the most common option
  • Database (Partitioned): Store the data in a partitioned table within the PhixFlow database. This option provides improved performance for rollback and archiving of very large Streamsets. The option is only available if "partitioning" is available within your database installation.
  • In Memory: Data for the Stream will not be written to the database. This option can be used (for example) when you want to aggregate large amounts of unsorted data which can then be written to a stored Stream.
Data Generation Options
Start DateThe date that this stream starts. Data will be populated into the stream from this date onwards.
In Memory Cache SizeThe size of the cache that will be maintained when you are using an in-memory stream. See How To: Summarise unsorted data with In Memory Streams.
Allow Partial Set ProcessingIf ticked, when analysis reaches the end of a buffer block it submits the candidate set for processing, even if the next buffer block has a different key.
Prevent Parallel Processing

This field only appears if the Period is set to Transactional. If ticked, it ensures that only a single stream set can be generated at a time even if the stream receives several concurrent requests to generate data.

This can be useful where you want to make sure that two analysis runs don't attempt to update the same records at the same time e.g. as a result of two people selecting the same records in a view and then hitting the same action button at the same time to process those records.

Run Alone

If this flag is ticked then whenever the analysis engine needs to generate data for this stream it will first wait for all running tasks to complete before it starts.

Any additional analysis tasks submitted while this stream is waiting to start, or while it is generating data, will wait until this stream has completed its analysis before they start.

Key TolerancesWhen building a candidate set, data can be grouped together using a specific key value, e.g. Account Number. If the key value is a number, setting a key tolerance will identify numbers within the given tolerance as the the same key value.
Default ViewThe default view selected for the stream. See help on Views for details of creating views on streams.
Last Run Date (Read only)The date and time that analysis was last run for this stream. This date is taken from the "to date" of the most recent stream set for this stream.
Last Run ByThe user that last ran this stream.

...