I. Purposes

—Centralize parameters used in Talend projects
—Rationalize / standardize contexts through naming convention and values used
—Distinct three environments : Developement (DEV), Testing/Quality/UAT (UAT) and Production (PROD)
—Initiate Talend development standard which should be completed along with the projects done


II. Reminder : what is a « Context »

    1. Within Talend project (« hard coded »)
    2. External files or database through the option « implicit context load »
    3. In TAC, at deployed job level (job conductor)


According to the latest point and in order to standardize the usage, it is recommended to use the implicit context load from an external data source. It will be easier for Production team to change context value without using any Talend tools. The external data base solution will be kept (only a restricted population should be able to change value in the database).


III. Centralization

A. Target centralization storage




Environment

DEV

UAT

PROD

Server

WDCSLVBD31\SLV1_DBDEV

WDCSLVBD31\SLV1_DBDEV

WDCSLVBP31\SLV1_DBPRD

Database

TALEND_EXPLOIT

TALEND_EXPLOIT

TALEND_EXPLOIT

Table

TALEND_PARAM

TALEND_PARAM

TALEND_PARAM


B. Centralization TALEND_PARAM


env

key

value

LastModifiedOn

CreatedOn

Comment

Possible values : DEV / UAT or PROD

Context variable name

Value affected

Latest update date

Creation date

Comment



IV. Context

A. Context - Naming convention


B. Global contextNaming convention

Context type

Description

« CNX_* »

Related to system / application connexions

« DIR_* »

Related to path folders



a. Global contextNaming convention « CNX »

SYNOPSIS : « g_CNX_<CONNECTIONTYPE>_<Application>_Key »

<CONNEXIONTYPE>

Description

« BDD »

For Database

« SMTP »

For email communication

« LDAP »

For  Active Directory

« SF »

For SalesForce

« FTP »

For File Transfer Protocole

« API »

For Applicative API



b. Global contextNaming convention « DIR »

SYNOPSIS : «g_DIR_<PROJECT>»


All Talend project directory will be stored as following :


« DiskLetter:/DATA/ » Which located on Talend servers, Depending the talend server we might find the folders DEV, UAT or PROD


env

key

Value*

LastModifiedOn

DEV

g_DIR_SPP_SAP

D:/DATA/DEV/SPP_SAP/

2017-01-20 14:00:00:000

UAT

g_DIR_SPP_SAP

F:/DATA/UAT/SPP_SAP/

2017-01-20 14:00:00:000


PROD

g_DIR_SPP_SAP

F:/DATA/PROD/SPP_SAP/

2017-01-20 14:00:00:000


* : the slash at the end of the value is important since it simplified the concatenation with a filename in Talend



Suggestion : If possible set a network shared folder instead of storing the data directly on Talend servers


C. Local contextNaming-convention


Context type

Description

« VAR_* »

Related to variable / parameter storage

« DIR_* »

Related to file system directory

« FILE_* »

Only filename, no path

« PATHFILE_* »

Related to absolute path filename. It is recommended to concatenate DIR_* and FILE_*

« MAILLIST_* »

Related to e-mail distribution list



a. Local ContextNaming-convention « VAR »

SYNOPSIS : « l_VAR_<PROJECT>_<Key> »



b. Local contextNaming-convention « DIR »

SYNOPSIS : « l_DIR_<PROJECT>_<DirectoryType> »



c. Local contextNaming-Convention « FILE »

SYNOPSIS : « l_FILE_<PROJECT>_<Key> »



d. Local contextNaming-convention « PATHFILE »

SYNOPSIS : « l_PATHFILE_<PROJECT>_<Key> »



e. Local contextNaming-convention « MAILLIST »


SYNOPSIS : « l_MAILLIST_<PROJECT>_<Key> »




V. Naming-convention synthesis – Global context

VI. Naming-convention synthesis – Local context

VII. Project folders suggestion


DiskLetter:/ or //serverName/ or alias //server_talend/

o SPP_SAP
o SPP_SALESFORCE

•Input
•Output
•Tmp
•Rejects
•Log
•Done
•Archive

o SPP_SAP
o SPP_SALESFORCE

•Input
•Output
•Tmp
•Rejects
•Log
•Done
•Archive

VIII. Misc context vs globalMap Naming-convention