Drag and Drop Transformations
On This Page
Drag-and-drop Transformations feature is currently in BETA phase. |
Drag and Drop Transformation blocks provide a no-code option for building Transformations for preparing the ingested data before it is loaded to the Destination.
From left to right, the interface consists of:
-
The TRANSFORMATIONS pane, which displays the list of available blocks
-
The Canvas, where you can:
-
Drag the blocks to create the Transformation flow,
-
Switch between the Build and Test modes,
- Reset the existing work and start again, and
- Deploy a Transformation.
-
-
The Filters & Settings pane on the right, using which, you can:
-
Specify filters to select the Event Types and Fields to which the Transformation must be applied.
-
Define the settings that must be applied through the Transformation.
-
The filters and settings are displayed once you select any Transformation block.
You can use only the blocks provided by Hevo to build a Drag and Drop Transformation. To design a more advanced or custom Transformation beyond this list, switch to the Python code option. Alternatively, contact Hevo Support.
Building a Transformation
The following are the key steps for building a Transformation:
Note: You must be assigned the Team Administrator, Team Collaborator, Pipeline Administrator, or Pipeline Collaborator role in Hevo, to biuld a transformation.
1. Selecting the Transformation Block(s)
Drag the Transformations that you need to apply, to the canvas. If you want to create a workflow with multiple blocks, you can drag all the blocks you need at once or set up one block at a time.
2. Selecting the Data Filters
By default, a Transformation is applied to all the Events and their fields that are ingested from the Source. You can use the Event and Field filters to identify the specific Events and Fields to be transformed, and select the appropriate operator to define the values for each of these filters. Read Transformation Reference for more information. The filters and settings are displayed based on the Transformation block that is selected. Both these filters are discussed below.
Event Filters
Event filters help you specify the Event Types and their Events on which the Transformation must be applied.
Click ADD FILTER + to display the following filter types:
-
Event Type: The Transformation is applied to the Event Type (ingested Source object or table) you select.
-
Event Field: The Transformation is applied to Events that contain this Field/Field Value. For example, if you select the filters, all Events AND Event Field equals
price
, then, the Transformation is applied to all Events that have the field,price
. This Does Not apply the Transformation to the field,price
.Note: Events not matching the filters in a Transformation block remain unchanged.
Example: The following ADD A FIELD Transformation adds a field to all Events where Event Type = deals
and the value of the field, price
= 200. You can specify the details of the field to be added using the Settings.
Field Filters
Field filters are displayed to identify the fields to be transformed. These filters may not be required for some of the Drag and Drop Transformation blocks.
Under Apply on all fields, click ADD FILTER + to display the following field filters:
-
Field Name: The Transformation is applied to the selected fields. For example, if a field with the name
archived
is present, the Transformation must be applied to it. -
Field Value: The Transformation is applied to the specified field, if it has the specified value. For example, if the value of the
archived
field istrue
, the Transformation must be applied to it.
Example: The following DROP FIELDS Transformation drops the field, discount
, from all Events of the Event Type, deals
that have a field called price
with value as 200.
Note: In case the field to which the Transformation is applied is of the type Array or List, the Transformation is applied to each element of the list instead of the list itself. Exceptions to this are: Create separate fields while splitting and Flatten JSON, where the Transformation cannot be applied to the list.
3. Defining Transformation settings
Settings are used to define the action to be taken for some of the Transformations. For example, in the RENAME FIELDS Transformation, the Field Name and New Field Name settings define the field name to be changed and along with its new value. Similarly, in the DROP FIELDS Transformation, the settings define the field to be dropped.
The settings are listed below the filters.
In the sample image, for all Events where the field, district
has the value Delhi, the field name district
is changed to main_district
4. Creating Transformation workflows (Optional)
You can apply multiple Transformations to the data by creating a workflow using the required Transformation blocks. If each Transformation is independent of the others, the sequence in which you connect the blocks is immaterial, and each Transformation can call a different Event Type. However, if each block builds upon the previous one, then the sequence in which the blocks are connected is important. A sequential Transformation workflow can be created for one Event Type only. The following image depicts a sample Transformation workflow created using the conditional IF ELSE block.
In a workflow, all the Events are passed on to the next Transformation block. The Events not matching the filters remain unchanged.
Note: You can insert a block in an existing workflow sequence.
5. Correcting any Transformation errors
In case the settings are missing or incorrect, an indicator is displayed next to the block. Hover the mouse over it to view the error text.
Transformation Considerations
The following are some important points to keep in mind while building your Transformations:
-
Currently, you cannot combine both Python-based and drag-and-drop blocks in the same Transformation.
-
You must be in the BUILD tab to add or delete Transformation blocks or specify the filters and settings.
-
While building a Transformation, add filters in the order in which these will be applied to the data.
-
The IF-ELSE block branches your code to apply the conditional Transformation. Currently, you cannot merge the branches post-transformation.
List of Drag and Drop Transformations
Hevo provides the following drag-and-drop Transformation blocks by default. You can configure them for your use and test them before deploying:
Control Functions
Date Functions
Event Manipulation
JSON Manipulation
Mathematical Functions
Security Functions
String Functions
- Articles in this section
- Special Keywords
- Transformation Blocks and Properties
- Add a Field
- Change Datetime Field Values
- Change Field Values
- Drop Events
- Drop Fields
- Find & Replace
- Flatten JSON
- Format Date to String
- Format Number to String
- Hash Fields
- If-Else
- Mask Fields
- Modify Text Casing
- Parse Date from String
- Parse JSON from String
- Parse Number from String
- Rename Events
- Rename Fields
- Round-off Decimal Fields
- Split Fields
- Examples of Drag and Drop Transformations
Revision History
Refer to the following table for the list of key updates made to this page:
Date | Release | Description of Change |
---|---|---|
Nov-10-2022 | NA | Reorganized and improved the content on the page for enhanced clarity and ease of understanding. |
Jul-12-2022 | NA | - Added sections, Points to remember and Getting started. - Removed section, Features and Limitations, and merged it in Building a Transformation. |