Discuss, learn, ask, suggest, share all things MDM and RDM 🔍
Recently active
We are on RDM v14.5.1, on PaaS, so underlying db is postgres.I need to query a table using the RDM Extended Reader step with a filter. The volume of this table will grow, so I much prefer to filter at the reader step, rather than bring the whole table into the plan and then filter, to manage performance.I have a column, from_date, that is datetime type. I have from_date in my data flow, and I want to query RDM for a day prior.Expecting that this is an SQL where clause, I tried to put in syntax compatible with Postgres So I created a column called “row_filter”, with type string. Using postgres to_timestamp functionday_prior:=dateAdd(from_date,-1,'DAY');day_prior_string:=tostring(day_prior,'yyyy-MM-dd HH:mm:ss');"from_date=to_timestamp('"+day_prior+"','YYYY-MM-DD HH:MI:SS')" This one gave an error of:13.05.2024 13:10:00 [INFO] Ataccama DQC engine initialized.13.05.2024 13:10:00 [INFO] Creating runtime...13.05.2024 13:10:00 [INFO] Starting runtime...13.05.2024 13:10:00 [INFO]
Step-by-step setup guide for a local Windows environmentAtaccama MDM 17.1 introduces an experimental Model Context Protocol (MCP) Server that enables AI assistants to access MDM metadata, records, relationships, and tasks.This guide explains how to configure the MDM MCP Server, enable OAuth 2.0 authentication through Keycloak, and connect Claude Desktop using mcp-remote.The integration allows users to retrieve MDM records and explore available metadata using natural-language queries. 1. Prerequisites Ensure the following components are available:Component Requirement Ataccama MDM Version 17.1 with MCP Server support Keycloak Administrator access to the MDM realm MDM Server configuration Access to application.properties Claude Desktop Installed and authenticated Node.js Installed with npm and npx npm registry Accessible for downloading mcp-remote The local environment used in this guide has the following configuration:Component Address MDM Server http://localh
In large RDM implementations containing dozens of datasets and hundreds of business rules, choosing the appropriate Ataccama RDM capability improves consistency, reduces implementation effort, and makes solutions easier to maintain. Selecting the Right Validation Mechanism The first design decision is not how to write a validation, but which Ataccama RDM capability is best suited to implement the business requirement. Using Dataset Configuration RequiredUse the Required property for mandatory attributes instead of validation expressions such as: column is not null GeneratedUse the Generated property for business key attributes that should remain unchanged after record creation. Using Custom Data Types (Domains) Reusable attribute constraints should be implemented as Project Data Types (Domains) rather than duplicating the same validation logic across multiple datasets. Typical examples include:Requirement Domain Example Configuration Data type Integer, Long, Float, B
An Ataccama RDM implementation starts with business requirements and results in an RDM configuration. Throughout the implementation, consultants produce numerous artefacts, including validation rules, migration plans, test cases and technical documentation. Although these artefacts serve different purposes, they all describe the same solution. Traditionally, creating and maintaining these artefacts requires navigating business requirements, XML configuration files and project documentation. Large Language Models (LLMs) can accelerate this process by generating implementation artefacts and analysing the completed configuration.The following sections demonstrate practical examples of how AI can support different stages of an Ataccama RDM implementation. AI Support Across the RDM Implementation Lifecycle№ Project stage Project task Input Coverage AI support 1⃣ Design Validation Rule and Lookup Design Business requirements, data model, sample data, DQ rule templates Ful
CSV and TXT imports through the Ataccama RDM Web UI can complete with non-intuitive status messages, making it difficult to understand what happened or how to fix the input file.This article explains the most common import messages, what they mean, and where to find additional information to diagnose and resolve import issues. Import Completed Successfully Two common scenarios produce the same completion message. Scenario Message Meaning Records were created or updated ‘Import’ operation finished successfully. The import completed and changes were applied. Imported data is identical to existing records ‘Import’ operation finished successfully. The import completed successfully, but no changes were required because the imported data already matches the current data. Import Completed with Warnings A warning indicates that the import completed, but some records could not be processed. Scenario Message
During data migration or bulk imports, validation issues are often spread across multiple RDM datasets. Although each dataset provides its own validation results, reviewing them individually requires switching between datasets and records, making it difficult to assess the overall quality of the imported data.A consolidated validation report provides a single view of validation issues across the implementation, allowing data stewards and developers to quickly identify affected datasets, records, attributes, and validation messages. Retrieving Validation Results The report follows the same retrieval pattern for every dataset. The only dataset-specific elements are the dataset name and the business key displayed in the report.The query performs the following steps:Reads validation results from the validation table (<dataset>v). Shows validation results for both the published (<dataset>) and draft (<dataset>e) versions of the dataset. Returns only validation entries
Expression validations allow business-specific data quality rules to be implemented directly in Ataccama RDM without custom development.Each validation consists of two parts:Validation Expression – defines the business rule. Validation Message – explains why the value is invalid and how it can be corrected.Both components are equally important. A well-designed validation not only prevents invalid data from being entered but also helps business users understand and resolve data quality issues efficiently. Before Implementing a ValidationBefore implementing a validation, define the following:Item Description Business requirement The business rule to be enforced Target attribute The attribute being validated Validation expression The logical expression used to evaluate the rule Validation message The message displayed when the validation fails Step 1. Define the Validation RuleThe validation expression defines the condition that an attribute value must satisfy to be consi
Hello, I'm working on a MDM project and need help with workflow-governed record creation via the REST API.I have an integration where record creation requests come in from a third party application with the required record details.I pick up those details and use them to create a new master record in MDM via POST /api/rest/master/{viewName}/{typeName}Currently the record gets created and published immediately, completely bypassing the workflow.What I actually need is for this record creation to go through the workflow, meaning it should create a task in draft state with the actual record details, and then go through the configured approval workflow steps before being published.Is there a way to achieve this via the REST API? Any workarounds or approaches others have used for this would be really helpful.
Hello,I wanted some help in MDM around publishing of master data records while creation in mdm if they have data quality issues. So if I create a record in the master layer of mdm and if any of the records have data quality issue that record should not be allowed to be published.So in this record there are 2 data quality issues. But I am still able to publish the record. So how can I prevent that. If there are data quality issues that record should not be allowed to publish. How can I achieve that please help me.Thank you.
We upgraded to 16.3.1 and are now looking at the new Admin Centre.It is great that it is now accessible via the MDM webapp and has a great look. It also has great new features like the Server Dashboard and the Runtime Parameters.However, the Orchestration holds all the functionalities the business users regularly use. Basically everything under ‘Workflows’.This section is now further removed and looks very awkward. Especially in comparison to the slick new look of the rest. It is therefore harder to use which is not a great comfort. Given there are quite important commands that shouldn’t be done wrongly.Will you be looking to improve the look and usability and move it back to a more prominent location?
Hello,I have a question regarding MDM services. So there are different services that are already predefined in the services tab of the MDM project and we can use them easily Some of the services are predefined and some are configurable. Now what I wanted to know is that is there a service which I can use to detect duplicates from the MDM system. So basically if I send some record information in the soap call it should tell me based on the matching logic defined in the matching step that the sent record is matched with any record or not in the MDM. Is that possible? I did try the “Process Match” part but that works differently and does not address the above use case.Thank you.
Hi Team,Good day! I’m trying to bulk purge some instance records, the high level approach is deactivate the records (i.e. set eng_active to false) and run purge process to delete the deactivated record. To implement this approach i Have following queries:Can I directly set eng_active status for those identified instance records using “Execute SQL” tool? To call purgeProcess from the plan, I use “Soap Call”? how do i get the wsdl of all the native services. As Ataccama documents suggested I could locate them in Admin Center (Interfaces > Services) , but when i click on show service info/show wsdl, it asks for credentials, but I login using Azure AD. Please let me know if there is any other simple approach I should consider.Thank you!
Hi Team,Could someone provide guidance on how to customize API responses in Ataccama MDM (version 15.4.1)?Our requirement is to conditionally exclude certain child records from the API response based on a relationship-type attribute. For example, a single party may have multiple identifiers such as SSN, TIN, ABC, etc. When a consumer application makes a GET API call, we need logic that checks whether an ABC-type identifier exists. If it does, the API should stop further processing and return the response accordingly (e.g., prioritizing or limiting the payload based on this condition).How can this kind of conditional filtering or response control be implemented—preferably within Ataccama (configuration, query layer, or business rules), rather than handling it downstream? Regards,
Use Case: When clicking "Create" in MDM master record creation, I want certain fields to be pre-filled with default/placeholder values the moment the record detail view opens — before the user manually enters anything.Scenario (CDI Example): In our setup, some fields are common across both Customer Types. The goal is to have these shared fields auto-populated with sensible defaults as soon as the creation screen loads — improving data consistency and reducing manual effort. What I've tried / What I'm looking for:✅ Is there a Workflow Step triggered at record creation (not save) where default values can be injected? ✅ Can a Plan File be used to define these default values at screen load? ✅ Any supported configuration or workaround to achieve pre-population on the Create event? Screenshots attached for reference:Field layout on the record detail view Highlighted common fields across Customer Types
I am working on an Ataccama MDM project and I am facing an issue with the Identify button not appearing in the UI, even though the matching step is configured. However, in the standard CDI example project, the Identify button is visible and working correctly. What configuration controls the visibility of the Identify button in the UI and are there additional steps required to enable Identify?
Our current implementation of MDM (15.4) consumes XML-based messages over JMS. Our organization is migrating from JMS in favor of Kafka and is standardizing on the protobuf format for messages.While we’re able to get a Kafka stream consumer to connect to a Kafka Confluent topic and consume basic test messages, and it’s clear we can set a property to use the appropriate Kafka deserializer, there doesn’t seem to be a way to configure the Kafka stream source input to expect protobuf (only String or Avro). Also it’s not clear how we would refer to an object in our stream consumer component (which currently parses basic XML string input).Is there a resource out there that might shed some light on how a Kafka with protobuf implementation might look? It seems like we might need to integrate a custom module or something along those lines into the stream consumer flow to help facilitate this, but we’re not sure where to start or if there’s already a precedent for this.
Hi everyone,we are in the middle of our project where ataccama consumes business partner (customer and vendor) records from various source systems. We apply currently the consolidation style, but intend to switch to a coexistnece style later. So, when collecting many records from various source systems, we end up with a bunch of matching proposals who need to be reviewed by our Data Stewards in ataccama. That’s our setup.I’m struggeling a lot with the quite limited functional approach ataccama is following when it comes to dealing with the matching proposals. In our case we only have a handful of columns which are displayed in that user interface. A lot of IDs, a summary column (which we cannot filter), and some other columns which are honestly of no use. I always try to put myself into the position of a Data Steward who is now faced with the task to resolve the matching proposals. And what the Data Steward finds is a user interface that is as far away from the term user-friendliness a
Tested on v13.8.1Steps overview:Download all components Install ONE Desktop Launch ONE Desktop and create the RDM Banking example project Place the files in the right structure Modify a bunch of files so they work on MacOS Configure the Mac permissions to run things Launch ONE Desktop and create the RDM Banking example project Launch them all (keycloak, postrgres), one by oneDownload: Builds (Latest versions here): RDM: Rdm-assembly-13.8.1-linux.zip (Linux) ONE Desktop: Ataccama-one-desktop-13.8.1-macos.dmg (MacOS) Plugins (Latest versions here, the official Postgres version for Linux missing for now): Postgres: https://drive.google.com/file/d/1Lho_9BQh78xRWR2QHAAGoQuERof-Rn-e/view?usp=sharing Keycloak: https://ataccama.s3.amazonaws.com/Frances/Ataccama-one-desktop-13.0.0-GA_keycloak_12_0_4_plugin.zip Your license (.plf file) Install ONE Desktop: Install One Desktop (Ataccama-one-desktop-13.8.1-macos.dmg (MacOS) Rename the application so that there are no spaces
Hello, I am working on a use case in RDM so the use case is that is it possible that can I split a record into two records such that the old record gets replaced by those new records for eg- How can I be able to achieve this?Thank you,
Looking step by step info. how to create create virtual catalog item in local atacamma on desktop environment Version 14.5I am trying to create using local host urls.
Happy to share a quick update with the community on the progress we’ve made with our on-premise AI agent integration into Ataccama ONE. We’ve now developed and tested four distinct use cases that support users across various data governance tasks. All of these are accessible through a lightweight chat-based interface that runs alongside the Ataccama UI, without modifying the core product.Here’s a brief overview of what’s working today:Data Quality InsightsThe agent detects data quality issues and provides root cause analysis with natural-language explanations. When needed, it also offers recommendations for resolving common problems, making DQ monitoring faster and more intuitive.AI-Assisted Data Catalog NavigationUsers can search and explore the Ataccama catalog using natural language. The agent retrieves relevant metadata and provides contextual recommendations, helping non-technical users find and understand data without needing to know the structure.Compliance & Sensitive Data
Hello Ataccamer,I have a question regarding the "onPublishHandler.plan" file. This file contains components and steps for on-publish synchronization for all the RDM tables, which results in numerous components corresponding to each RDM table. As the project progresses, the number of RDM tables keeps increasing, causing this file to continuously grow in complexity.I'd like to inquire whether it's possible to segregate these components based on projects example diff file for domain or any other way. Is there a way to create separate "onPublishHandler.plan" files for different project domains? This could help reduce confusion, especially when multiple developers are working simultaneously. Just a thought. Thanks and regards,Ojaswini
I have to write DQ rules on a table that should execute through monitoring projects.Only data with max date should be evaluated or evaluation should happen for date that use adds dynamically. How to achieve this?
Hi All - Looking for design advice on tables that have related data that is not required (as in the case in the “relationship” where it’s parent-child and required).Take the following example: cost codes that can be related to different hierarchies of “groups”: “departments”, “project groups”, “governance groups”. Each of the organizational groupings have their own relationship to cost code - but not all of them are required to use cost code, which rules out using a parent-child relationship. Also, it’s not necessarily an Mn Relationship, because each “group” (at whatever level) can only have 1 cost code, if it’s related at all.Additionally, we are not implementing any synchronization from our source systems due to security constraints - so things will be either manual or import by UI or plan if that makes a difference in terms of usage.I’m thinking about creating a junction table to hold the related values - but that doesn’t seem ideal from a user/UI perspective, because then users w
Hi everyone,I’m working on an MDM project where I need to configure reference data in such a way that it updates dynamically based on another attribute’s value.For example: I have an attribute Country and another attribute City.When a specific Country is selected, the city dropdown should automatically display only the cities associated with that country.Is there a way to achieve this kind of dependent reference data setup in Ataccama MDM?If yes, could someone guide me on how to configure it?Thanks in advance!For reference:
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.