MDM for master data management is a Talend specific tool to create a data model easily through an eclipse based client and manage master data from an user friendly web user interface you can access with your favourite browser.
In this post and as usual, I’ll show you only the free community edition, how to install and take control of the MDM demo provided with it.
MDM is a very specific project where data are not trusted anymore, imagine you own 5 different tools to manage your customers ? which tools have the right informations ? the most complete ? MDM allow you to create a stewardship on your data and consolidate every relevant informations in a single data referential usually called a master data. Every changes coming from manual action are registered in a log system with a status you can trace and arbitrate.
At a glance, the community edition covers the following functionalities
- Graphical data container and data model creation
- Create web UI view automatically from the data model
- Create/alter database schema accordingly
- Upload all created objects through soap webservices
- Data validation from ETL loading or web UI creation
- Manual data change with a status log into a journal
- Launching a remote and manual process or base on a trigger
Stewardship is only provided with professional edition, don’t hesitate to create your own tool as data are available through a soap/rest API 😉
Technically speaking, the studio is a XML schema (XSD) editor, so you can use other well known tools like Spyxml to see graphically the model you just create, Spyxml is not free but lot of customers use it. (NB : Graphical tab is only available with professional talend edition)
Here is the Talend product model demo open with XmlSpy
Other interesting point, data loading, extract, deletion is also made from soap webservices, so you manage auto increment for your primary/foreign keys, data are injected with hibernate technology and no matter the database you use, data are always consistent, in the worse case a rollback can be perform. Unfortunately, only one database type is available in community edition such H2 other five others are available with professional edition (Oracle, Mysql, DB2, Postgres, MS SQL Server)
Let see the the global community edition schema
The zip file contains another zip for the eclipse based client and an executable jar made with Izpack for the web user interface.
Web user interface installation
Right click on the file and choose « open with » then select Java™ Platform SE binary, you can also launch java command manually with
# java -jar TOS_MDM-Server-20181026_1147-V7.1.1.jar
Choose your preferred language and click on next twice, the next box show what you’ll install on your machine
The web UI is hosted by a Apache Tomcat server
Choose default port 8180
As previously said, only H2 is available
Create a database for each container seems to be a good idea 😉
Once the installation is over…
… launch the startup.bat
Open a browser an go to http://localhost:8180/talendmdm
Two existing users are already setup
For information you can access H2 console with the web browser with this address http://localhost:8180/talendmdm/h2console/console, be sure you’re connected with an user on the webUI before trying access it.
The JDBC url should be like jdbc:h2://C:\MDM_SERVER_INSTALL_DIR\data\H2-Default\DATABASE_NAME. For information, the database TMDM_DB_SYSTEM store every Talend web UI object.
Talend MDM client
I assume that your are familiar with Talend tools, so I won’t explain how to install Talend client, the ZIP package TOS_MDM-Studio-20181026_1147-V7.1.1.zip should be extract and you just have to launch TOS_MDM-win-x86_64.exe file.
So in this section, I only show how to publish master data into H2 database and deploy all objects into WebUI.
Once the web UI side is done and ready to receive your new data model/container, just launch Talend open studio MDM then import the demo project.
Choose MDM demos and define a project name
When Talend is up and running you should see the following repository from the MDM perspective.
Click on the update button to push/synchronize all objects into web UI side, select all and then click “ok” to deploy
After the server synchronization, you’re ready to receive master data sample from Product data model.
Be sure the MDM server parameters are correctly customized, if you previously choose the default 8180 port, there is nothing to do.
In case of change, just edit the Talend MDM context group
Last step is to load all sample data into the MDM hub
Launch the MDM_LoadAll job and DONE !!!, you can now play with products data on web UI side.
Back to the web user interface, open the master data browser then start to create / edit / delete / update products data, the products can only have a Family (1 to 1 relation) and one or more Store(s) (1 to # relation), I won’t explain how to use it as the menu is very user friendly 😉
Even if the community version is lighter in term of functionalities, the available options are totally enough to start a modest MDM project. Maybe you could extend some missing functionalities by using available web-services endpoints with a custom web portal, just take a look to the CXF service list you can find here: http://localhost:8180/talendmdm/services/