Empower Your ETL Workflow with DecisionRules

Familiar with business intelligence processes? We have a great tool for you with a simple data transformation layer in DecisionRules.

What is Data Transformation and Enrichment?

Data transformation is a crucial step in the Extract, Transform, Load (“ETL“)  process for Business Intelligence (“BI”). During this phase, raw data extracted from various sources is cleaned, formatted, and structured to be suitable for analysis and reporting. This involves several operations, including data cleansing, which removes inaccuracies and inconsistencies, and data normalization, which standardizes data formats. 

Data transformation may also involve data enrichment, where additional information is added to the dataset to provide more context;and data aggregation, which summarizes detailed data into more digestible forms, such as totals or averages. These steps ensure that the data is accurate, consistent, and ready for analysis, which is critical for generating reliable business insights.

By transforming data into a consistent format, businesses can perform more meaningful analyses, create accurate reports, and gain actionable insights that drive strategic decisions. Effective data transformation enables organizations to leverage their data assets fully, providing a solid foundation for BI initiatives.

DecisionRules as data transformation/enrichment layer

DecisionRules can serve as an effective tool for data transformation and enrichment within ETL layers. The data transformation layer can function as a composition of DecisionRules rules, which processes and outputs enriched data for subsequent analysis and use.

This implementation can be realized through a standard DecisionRules API call to the primary transformation rule, which generates the enriched data. The following example illustrates how data input is enriched using outputs from Decision Tables. Such enrichments are valuable for business intelligence processing and marketing purposes.

The entire transformation layer is structured with a main Scripting Rule and a Decision Table. The provided code is simplified for demonstration purposes and can be adapted for more complex implementations. The figures below depict an input-output model for the main scripting rule responsible for data enrichment.

The input for the Scripting Rule represents data provided to the ETL layer that is pending transformation. The output model represents the transformed data, which is then returned for further processing. In this example, DecisionRules calculates potential discounts based on customer data, total spending, and the likelihood of the customer qualifying for a premium account. The implementation of the Scripting Rule is illustrated in the figure below.

The script interacts with a Decision Table that determines discount amounts based on loyalty points and the customer's subscription to the store newsletter. The implementation of the Decision Table is illustrated in the figure below.

Input-output model of the table:

The advantage of this approach is that Decision Tables or scripts are easily manageable by DecisionRules users without the need to modify the ETL layer itself. This means that if a business requires changes, minimal effort is needed to update the rules. Moreover, these changes are applied immediately.


In conclusion, leveraging DecisionRules for data transformation and enrichment within ETL layers offers significant advantages. By utilizing Decision Tables and Scripting Rules or other types of rules, businesses can efficiently manage and adapt their data processing logic without the need for extensive modifications to the ETL infrastructure. This flexibility enables quick adjustments to accommodate evolving business requirements, ensuring that changes are promptly applied and allowing organizations to maintain agility in their data processing workflows.

More reading