The chunking rules allow you to configure which sets of data should be sent to what integration nodes during a FULLSYNC. It is common in large corporations or institutions to have a central database (e.g. Finance) that is the source of truth for setup data. However, there could be many different subscribing systems that only care about a subset of the data.
Here is a high level schematic that represents two systems that only care about subsets of business units in the project table:
Using the FULLSYNC service operations and infrastructure, there is a delivered way with only configuration to limit what data is sent to each node using “chunking rules.”
Assumptions:
First you need to map what node should receive what business unit:
Enterprise Components > Integration Definitions > Map Chunking Rules > Business Units
In this screenshot, we are sending the “SA” node two different business units. Any other business units that may exist in the source database will not be sent to the “SA” node.
After you set up your node to BUSINESS_UNIT mapping, you then have to configure that chunking rule on the FULLSYNC:
Enterprise Components > Integration Definitions > Full Data Publish Rules
When the FULLSYNC runs, there has to be an active service operation routing to the node in the chunking rule or it will not publish outbound.
You can also set up SETID chunking rules as well.
The FULLSYNC chunking rules work great with the delivered FULLSYNC push processes and configuration. However, what happens when you have a near real-time “SYNC” operation configured which creates publications every time someone hits save on the data entry page?
In a vanilla configuration, if you had a “SYNC” operation turned on for a setup table (like project, department, location, etc.) the publication would go to all subscriber nodes. Delivered near-real-time SYNC operations do NOT honor any chunking rules. The SavePostChange PeopleCode triggers a SYNC operation and the integration broker will find all the nodes that have an active Service Operation Routing and create a publication contract to all nodes.
To apply chunking rules to SYNC operations, you need to implement an OnRouteSend handler. See the OnRouteSend section for a complete code example that reads the chunking rules at runtime and selectively publishes to nodes based on the BUSINESS_UNIT or SETID in the message.
Chris Malek s a PeopleTools® Technical Consultant with over two decades of experience working on PeopleSoft enterprise software projects. He is available for consulting engagements.
Work with Chris