RDM Architecture
The following diagram represents a typical Ataccama Reference Data Manager high-level architecture.
Core elements are depicted in purple; elements external to RDM appear in gray. This page describes every core element of the RDM architecture.
RDM Metadata
The RDM metadata is the core configuration of the RDM project. Through the metadata model it defines all entities, structures, workflows, synchronization jobs, and more. This metadata is also the part that represents the RDM implementation.
The implementation is done through a Model Project, which can be generated into a package with all RDM Metadata for the project. The RDM Metadata composing the Reference Data Manager project includes configuration in different domains, as seen below.
Functional Configuration
-
The RDM Logical Model - this is the central part of the RDM configuration and includes all the configuration related to the canonical model: Tables (also called Reference Data Entities), Hierarchies, Views, Domains as types of data, all types of validation checks and constraint rules over the reference data, and Categories as abstract groups of common elements.
-
Workflow Configuration - role-based governance workflows support notifications, email templates, multiple workflows based on action type, and workflows-per-entity.
Non-functional Configuration
-
Security - RDM security can be configured via direct file configuration or LDAP integration. Extensive support for LDAP is available in the application.
-
Application Variables - all specifics of the environment, technology used for the database, and relevant system metadata.
-
Documentation - generated documentation based on the defined canonical model.
-
Logging - logging configuration as seen in the RDM web application for audit and monitoring purposes.
Integration with Other Systems in the Complete Architecture of the Solution
-
Connected Systems - definition of connected system models and relationships between data and attributes in the canonical model entities and those in the connected systems. This information is used for synchronization of RDM with the systems.
-
Synchronization - synchronization jobs between the central RDM repository and connected systems.
-
Task Scheduler - schedules created to automate execution of synchronization over time.
-
Batch Load/Export Interfaces - interfaces are created automatically based on the configuration and metadata presented above. These interfaces are then available for extension, where more functionality such as transformations, further enrichment, or data preparation can be added.
-
Online Interfaces - similar to the batch load interfaces, online interfaces offer the possibility of data preparation and further transformations when serving raw data in the default services from the RDM repository.
Once the RDM Metadata is defined, it can be uploaded using the Web Console of the RDM application. The Metadata is then hosted at the web application side, making it independent of the implementation source.
RDM Application Server
Ataccama Reference Data Manager is a web application created on top of the Java technology (using the Google Web Toolkit framework for its development). As seen in the high-level architecture, users work directly with the RDM Web Application, which is connected to the RDM Database.
The Web Application is independent of the RDM Model Project, which is developed and packaged apart, and its configuration is loaded directly into the client. The RDM web application supports model configuration versioning when uploading new configuration and does not require to be connected to the RDM Model Project directly.
The RDM web application requires to be hosted by a web server and have direct access to the database used as the RDM repository. Additional resources might need to be configured from the web server side, such as SMTP server or LDAP-based authentication.
RDM Repository
The RDM database repository contains model configuration, physical structures created automatically based on this model and also reference data stored in these specific structures. Only the RDM web application and its processes can interact with the RDM repository, with no direct external access on data allowed as best practice. As Ataccama is agnostic of the storage technology, this database can be of any RDBMS available on the market, provided a JDBC-compliant driver exists. The database needs to be accessible by the web application, which will connect to it when displaying and executing actions on data.
ONE Desktop Integration
There are two cases in which ONE Desktop Development Guide Integration is used by the RDM application. Both of them are optional and not required for the basic functions of the Reference Data Manager.
Validation and Enrichment Services
Ataccama RDM can use services for validation and enrichment, as seen in RDM Features. These services are usually created using ONE Desktop (as custom DQ services) since they follow some requirements in terms of configuration. If those services are used, integration with ONE Runtime Server is required. This server hosts services that are provided to RDM and can be located in the same machine or a remote machine. The choice of server location is part of the metadata configuration of the project.
Workflows, Interfaces, and Synchronization Jobs
Ataccama RDM can synchronize its master reference data with other systems that have been defined as Connected Systems in the RDM Metadata. The generated workflows as part of the configuration, the schedules from the Task Scheduler, and plans created for the Export and Import interfaces are all hosted and executed by the ONE Runtime Server. In order to take advantage of the exporting and importing features, both batch and online, integration with the ONE Runtime server is needed.
Was this page useful?