SaaS Implementation Best Practices - v2
SaaS Implementation Best Practices - v2
Practices
10th Aug 2023
Prashant Gupta `
Adhish Mahajan
Agenda
Overview
Set up Applications
Data Modelling
SDLC Asset Migration
Secure Agent Best Practices
Ingress (FEP Mapping, DQ rules)
Egress Job
Relationship & Hierarchies
Business UI Configurations (Application & Pages)
Reports
Reference 360 SDLC
Reference 360 Data Import and Export
Known Limitations
Org should be upgraded to latest release from Business 360 before performing Set up Applications.
All Business 360 processes in the Application Integration chicklet, should be in Published State.
Create other projects for all additional required assets such as mappings, mapping tasks, task flows or even
other MDM SaaS assets and avoid using OOTB (Business 360, Customer 360, MultiDomain MDM, Reference
360, Supplier 360, Product 360) projects for these assets
There should not be any permissions set on the OOTB folders in Explorer Tab in B360. (Business 360,
Customer 360, MultiDomain MDM, Reference 360, Supplier 360, Product 360)
The idea behind smart field is how can we make the Smart fields Available in GA
modelling experience super easy for a user by freeing
them from worry of choosing data types and need to
Smart
configure validation rules for fields
Fields Postal eMail Phone
Address
Data
Types
Once we have the Data Model finalized and we create respective Assets in the ORG, for any new Business use
cases, we recommend to create a new Assets as part of Data Model.
Recommend NOT to delete/remove any existing Assets (Business Entity, FieldGroup, Attributes) from Data
Model. That may lead to meta data corruption. Please use disable for now.
Follow the proper naming conventions while creating the assets, to differentiate between OOTB assets and
custom assets.
FAQ KB FAQ-SAAS-Data-Model-for-OOTB-BE-s?
DTM - If you hit java out of memory or java heap error messages at run
time of a mapping task execution(observed in session log), then
memory attributes need to be defined as JVMOptions under DTM.
• Need to defined under JVMOption like under JVMOption1,
JVMOption2 and so on.
• Each JVMOption parameter accepts one JVM parameter only.
• JVMOption5 is the last default one, custom property under Type
DTM and subtype INFO can be added to add further JVM
parameter.
• -Xmx****m can be added with required value.
11 © Informatica. Proprietary and Confidential.
Contd..
maxDTMProcesses Custom Property
By default, a Secure Agent can schedule only two mapping tasks for execution.
Additional tasks are queued and becomes eligible for execution when slot is free.
Better CPU utilization and higher degree of concurrency.
DTM Buffer size holds the actual data in blocks for processing.
DTM Buffer size is automatically calculated based on Buffer block size.
DTM Buffer Size = (DTM Buffer Block Size) * 10* N, where N is the number of partitions.
Can be increased to increase number of blocks.
Business 360 Hierarchal connector is not recommended for higher data loads
More computing requirements at SA machine.
Requires joining parent and child data at SA side using mapping logic.
Not scalable for higher data loads.
Refer KB
https://knowledge.informatica.com/s/article/FAQ-Difference-between-Business-360-connector-Business-360-FEP-con
nector?language=en_US&type=external
Set the INFA_CODEPAGENAME = UTF-8 in the Custom Configuration Details of the Secure Agent
Source and Target connection code page is set to UTF-8.
LC_LOCALE, LC_ALL to en_US.UTF-8 for Unix machine.
INFA_CODEPAGENAME=UTF-8 environment variable Windows machine.
Refer KB:
https://knowledge.informatica.com/s/article/Multibyte-characters-not-loading-properly-with-Ingress-when-using-B360
-connector?language=en_US
SourcePkey field name contains only alphanumeric characters and the following special characters:
.~!/'={}|:@#$^&*()-_+,<>?`
• Ingress from July release, B360 connector by default connects to Mongo via datastore service. Whitelisting of MDM
Static IP to be done if domain specific whitelisting not allowed.
Characters like tab \t should not be part of Pkey as that’s not valid and cause parsing issue.
It should be escaped in the mapping logic(if CDI used) or cleanse such character from pkey at
the source side.
Happens due to Data Task ->Error Handling -> Suspend Taskflow radio button checked.
Two options available to fail the taskflow when underlying mapping task fails :
1. Under Data Task -> Advanced -> “Suspend on Fault” checkbox is unchecked.
Under Error Handling -> On Error “Ignore” option -> Fail task on completion “if
this task fails”
Cons: All other Data task in taskflow will also be executed before marking
taskflow as failed.
2. Under Data Task -> Error Handling -> Custom Error Handling.
This will create a new pipeline in that step. Add Throw step to that pipeline.
Or if Throw step is not added, connect pipeline to End however Fail task on
completion “if this task fails” checkbox to be checked.
As soon as throw step executes, no other Data task will be executed and
taskflow fails when this data task fails.
During mapping design, check precision of input ports. Default 255 for all columns, decrease and
set it based on data.
Joiner and Aggregator if used in mapping logic, please consider using sorted input. Sorter
transformation based on keys used in before Joiner and Aggregator.
FEP connector is not supported yet for Egress. B360 Hierarchal connector to be used.
Egress filtering based on data at source is not available. Logic to filter based on data to be
implemented in CDI mapping logic.
Not recommended to use Hierarchal connector for Hierarchy assets import as creating root in
existing instance has issues.
Relationship pkey used should be unique for creating relationship between 2 entities.
Relationship import is possible only through Entity 1 and Entity 2 sourcePkey while using CDI
Ingress and IFI support. Using Entity 1 and Entity 2 BusinessID is not supported.
IFI doesn’t support creating relationship between 2 Entities across different source system.
Extending the reference data asset/codelist (along with any other subsequent metadata changes) such as creating
additional attributes within RDA/Codelist, adding description etc. should be done via Reference360 UI.
Reference Data Asset/Codelist used in SaaS MDM, must be exported via B360 console a.k.a. SDLC. Note that there is
no specific step is needed to export Codelist metadata, and exporting BE and its dependencies will be sufficient .
Exported assets must be imported via SaaS MDM (B360 console). If there are additional attributes use V3 APIs
Note that with SDLC we are just importing metadata, so code values will not be exported/imported.