Nirvana Channel Keys

Channels can be created with a set of Channel Publish Key objects, as well as the default attributes that define behaviour of a channel and the events on a channel.

Channel Keys allow automatic purging of duplicate metadata values based on a channel key name and a depth.

Using Channel Keys to Automatically Purge Redundant Data

For example, if you have a channel called BondDefinitions where a channel should contain only the last event published for each Bond you can enforce this automatically by using a channel key. This functionality vastly simplifies data publication as the publisher will not have to check the value of data currently on the channel.

In the above example you would create a BondDefinition channel as shown in the following Enterprise Manager screen shot:

Note that in addition to creating a channel with a the Name "BondDefinitions" and a type of "Reliable", the channel also has a Channel Key called BONDNAME with a depth of 1. In order to add a ChannelKey, type the name of the key into the Channel Key box on the dialog and click add. If you want the key to have a depth of greater than 1 then click the up arrow adjacent to the Key Depth field.

This means that as soon as an event is published to the BondDefinitions channel with a Dictionary entry called BONDNAME, the server checks to see if there is another event with the same value for that key. For example if an event is published with BONDNAME=bondnameA and there is already an event with BONDNAME=bondnameA, then the old event will be removed and the new one will take its place as the latest definition for bondnameA.

Another example would be if you wanted to keep the latest definition and the 1 before it you would create the channel key with depth 2 as in the following screen shot (implying that maximum 2 events with the same value for key name BONDNAME can exist on the channel).

If you wanted to keep an archive of all bondname values that were published you could add a join from the BondDefinitions channel to say a BondDefinitionsArchive channel. On this channel the absence of a Channel Key called BONDNAME will mean that it will store a history of all data that has been published to the BondDefinitions channel.

Share this page with others:
Tell Your Tweets Facebook It! Add to Delicious Reddit! Digg It! Stumble Upon Add to Your Faves Mixx it
Follow Us:
Keep up with my-Channels on Twitter Become a fan on Facebook LinkedIn Profile Recent Highlights RSS Feed