In SAS Intelligent Decisioning (as of stable 2023.12 or LTS 2024.03), you can add a Parallel Process node to a decision. This node processes multiple decisions in parallel within a decision.
Select any image to see a larger version.
Mobile users: To view the images, select the "Full" version at the bottom of the page.
There are several rules that must be followed when using a Parallel Process node in a decision.
You can publish decisions that contain parallel process nodes to SAS Micro Analytic Service (MAS), Container destinations, and SAS Cloud Analytic Services (CAS). By default, decisions in a parallel process node are processed in parallel only for MAS and Container destinations. In CAS, the decisions in the parallel process node are processed sequentially.
To successfully execute the decisions in parallel process nodes, you must configure the time-out limit and the maximum number of threads for the destination to which you publish decisions that contain the parallel process nodes. For more information, refer to the Configuring Support for Parallel Process Nodes topic in SAS Intelligent Decisioning: Administrator’s Guide.
Here is an example decision using the Parallel Process node.
The parallel process node executes two sub-decisions at the same time. These two sub-decisions use two slightly different methods to determine if a customer’s mortgage is underwater (i.e., the customer owes more than the property is worth). Note: I could add other nodes before or after the parallel process node in the decision flow, but for the purposes of this post solely focusing on the parallel process node.
Let’s look at both of the sub-decisions from the Parallel Process node.
Both of the sub-decisions only have one Output variable, and it is of type data grid. Also, they both have an Input variable called CLIENTID and in both sub-decisions it has the same data type of Character.
For both sub-decisions where their Output data grids have the same variable names they are also of the same type.
The main decision has the needed Input and Output variables.
The PPN_OUT_1 data grid is the merged data grid of all the sub-decisions in the Parallel Process node. It also includes columns related to the Parallel Process node (PPN_ columns). For example, the PPN_DECISION_NAME column lists which sub-decision produced the row in the data grid.
Now, let’s test the Parallel Process decision. Here you can view in the output data grid which sub-decision produced the row in the output.
Using a Parallel Process node in a decision is especially useful when you have many sub-decisions that require a significant amount of input and output operations or that have a lot of complex logic, and all these decisions need to be run before a final decision is reached. For more information, refer to the SAS Intelligent Decisioning documentation on Adding Parallel Processing Nodes.
You can also build the example decision using the Parallel Process node from this post by taking the SAS Intelligent Decisioning: Beyond the Essentials course.
Find more articles from SAS Global Enablement and Learning here.
The rapid growth of AI technologies is driving an AI skills gap and demand for AI talent. Ready to grow your AI literacy? SAS offers free ways to get started for beginners, business leaders, and analytics professionals of all skill levels. Your future self will thank you.