Using join for every flow having multiple database sources is exhausting

I’m using using Astera DW Builder version 8 for a few cases where data is coming from more than one source table. Currently, I have to use multiple Join transformations to join these databases which is making my flows unnecessarily complicated. Is there another way to go about it?

Attached below is a screenshot of one of my tamer flows.

Yes, there’s a way to avoid multiple joins in Astera DW Builder. You can do this using the ‘DataModelQuery’ object from the Toolbox.

Before doing that, you need to have a data model serving as your source with all the required tables that you want with the corresponding relationships. (As shown below).
Once the model is ready and deployed, drag and drop the “DataModelQuery” object from the Toolbar onto your dataflow. Double click on it to access its properties, choose ‘Astera Data Model’ as the data provider and specify your server credentials. Now select your source model and click Next. Select the entity at the lowest level (or lowest child) as a root entity to map the Fact entity as shown below. Here, we have selected ‘Order_Details’ as the root entity.

By choosing the root entity (or lowest child), we can ensure that its parent, grandparent (and more) can be navigated through the layout. As you can see in the screenshot above, a tree/hierarchical layout starting from the root (lowest child) entity going down to its parent entity has appeared in the DataModelQuery object. You can then expand the inner nodes to reveal the fields present in the other entities of the source model. The fields from the parent tables can now be mapped further to other objects (such as Factloader) in the dataflow without having to use the Join transformation.