Matillion Best Practices
Have different Matillion instance for DEV, QA/UAT, and PROD
Create one or more Projects depending on Team/Application
Create one or more Environments within a Project in Matillion
Create Versions for each team member
Integrate your project with Git or supported code repository
Create a branch from master branch to develop any new job or to modify any
existing job
Always do Git Fetch before creating any branch from Matillion
Once development & testing is completed, merge it to master branch on Git
A version & a git branch makes independent workspace for each developer
Do not create any versions in Prod as Prod Matillion instance will always checked out
to master branch
Create Environmental variables for common variables to be used in most of jobs
Create Job variables when variable is getting used only within the job
Always try parameterizing database name, schema name, s3 bucket name, jdbc url
etc
Use Group password manager to store any third-party passwords and create same
name for a password in different Matillion instances
Create Shared Job to implement any common functionality/job
Matillion Frequently Used Components
Query result to scalar
Query result to grid
If, Or, And
SNS
S3 Load / S3 Unload
Python
Bash
SQL Script
Success, Failed
Grid Iterator, Fixed Iterator
Database Query
RDS Query
RDS Bulk Output
Couchbase
API Query
Run Orchestration
Run Transformation
Table Input
Table Output
Table Update
Rewrite Table
Create View
Filter
Calculator
Join
Detect Changes
SQL
Flatten Variant
Extract Variant
Sort
Distinct
Lead, Lag
Rank