<!doctype html> <html> <head> <title>Meta Integration&reg; Metadata Management (MIMM) - README</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href='http://fonts.googleapis.com/css?family=Questrial' rel='stylesheet' type='text/css'> <!--#include virtual="/Home/HeadHeader.html" --> <style> * { margin: 0px; padding: 0px; border: 0px; } .wrapperCont { width: 970px; margin: 20px auto; font-family: arial,helvetica,sans-serif; font-size: 10pt; padding-left: 15px; padding-right: 15px; } .wrapperCont ul li { margin-left: 20px; list-style: disc; } .wrapperCont ul li ul li { list-style: circle; } .wrapperCont ul li ul li ul li { list-style: square; } .wrapperCont h1 { font-family: "Questrial",sans-serif; font-size: 28px; text-align: center; font-weight: normal; color: #920092; margin-bottom: 20px; margin-top: 20px; } .wrapperCont h1 span { color: #434343; } .wrapperCont h2 { font-family: "Questrial",sans-serif; font-size: 24px; text-align: center; font-weight: normal; color: #920092; margin-bottom: 10px; margin-top: 20px; } .wrapperCont h2 span { color: #434343; } .wrapperCont h3 { font-family: "Questrial",sans-serif; font-size: 21px; text-align: left; font-weight: normal; color: #920092; margin-bottom: 10px; } .wrapperCont h4, h5, h6 { font-family: "Questrial",sans-serif; font-size: 18px; text-align: left; font-weight: normal; color: #920092; margin-bottom: 10px; margin-top: 10px; } .wrapperCont h6 { margin-left: 25px; } .wrapperCont .charactTable { border: none; font-family: "Questrial",sans-serif; margin-bottom: 20px; margin-top: 20px; border: 1px solid #f2f2f2; } .wrapperCont .charactTable tr td { padding: 0px; } .wrapperCont .charactTable tr td:nth-child(1) { width: 16px; padding: 0 4px; } .wrapperCont .charactTable tr td:nth-child(2) { font-family: Arial, sans-serif; color: #555; width: 90px; } .wrapperCont .charactTable tr:nth-child(2n) { background: #fafafa; } .wrapperCont .standsTable { border: 1px solid #f2f2f2; margin-bottom: 60px; margin-top: 40px; line-height: 17px; color: #555; font-family: arial; width: 100%; } .wrapperCont .standsTable a { color: #1a7bc0; text-decoration: underline; } .wrapperCont .standsTable a:hover { text-decoration: none; } .wrapperCont .standsTable td { vertical-align: middle; padding: 10px; } .content ol { margin-left: 35px; } .content ul { margin-left: 15px; } .content ol, .content ul { } ol { list-style-type: decimal; } .line { background: #e2e2e2; height: 1px; width: 40%; margin: 0 auto; } .contentsBlock ol { counter-reset: item; } .contentsBlock ol li { display: block; } .contentsBlock ol li:before { content: counters(item, ".") " "; counter-increment: item; } .contentsBlock ol li li { margin-left: 17px; } table { border: 1px solid; border-color: #666666; width: 100%; padding: 2px; } table thead th { padding: 10px 5px; border-right: 1px solid #fff; text-decoration: none; background-color: #efdef7; text-align: center; vertical-align: middle; font-family: Arial, helvetica, sans-serif; font-size: 11pt; font-weight: bold; color: #920092; } table thead th:last-child { border-right: none; } table td { padding: 10px; line-height: 16px; } table tr td:nth-child(2) { font-weight: bold; text-align: center; } table tr td:last-child a { text-decoration: none; border-bottom: 1px solid #2ca4f9; } table tr td:last-child a:hover { border-bottom: none; } table td li { margin-left: 10px; color: #2b2b2b; } table td li:first-child { margin-top: 5px; } table td li:last-child { margin-bottom: 5px; } table td a { color: #1a7bc0; } ol li a { padding: 3px 0px; display: inline-block; color: #1a7bc0; margin-left: 5px; } table td a:hover, ol li a:hover { text-decoration: none; } .line { background: #e2e2e2; height: 1px; width: 40%; margin: 0 auto; } .warnings { color: #e80303; } .contentsBlock { padding: 20px; background: #f2f2f2; } .wrapperCont li { margin: 10px 0; } .contentsBlock li { margin: 0; } /**/ .content { line-height: 17px; } .content li a { color: #1a7bc0; } .content li a:hover { text-decoration: none; } .content h3 { margin-top: 30px; margin-bottom: 20px; } .content u { color: #666666; margin-top: 10px; margin-bottom: 10px; display: inline-block; } .content b { display: inline-block; } .content table { margin-top: 10px; margin-bottom: 10px; } .copyright { border-top: 1px solid #f2f2f2; border-bottom: 1px solid #f2f2f2; background: #f8f8f8; padding: 20px 0; color: #6b6b6b; font-family: "Questrial",sans-serif; font-size: 12px !important; } .copyright span { color: #800080; font-weight: normal; } .descript { text-align: center; font-family: "Questrial",sans-serif; font-size: 15px; margin-bottom: 20px; color: #6b6b6b; line-height: 17px; } .descript span { color: #800080; } p { font-family: arial, helvetica, sans-serif; line-height: 17px; margin-top: 10px; } code { font-family: "courier new", courier, monospace; font-weight: bold; } dl { margin-left: 2em; font-family: arial, helvetica, sans-serif; font-size: 10pt; } pre { margin-left: 2em; margin-right: 2em; font-family: "courier new", courier, monospace; } td { font-family: arial, helvetica, sans-serif; font-size: 10pt; } ul { font-family: arial, helvetica, sans-serif; font-size: 10pt; } ol { font-family: arial, helvetica, sans-serif; font-size: 10pt; } kbd { font-family: "courier new", courier, monospace; font-weight: bold; } tt { font-family: "courier new", courier, monospace; font-size: 11pt; } var { font-family: "courier new", courier, monospace; font-size: 11pt; } samp { font-style: normal; } strong { color: #920092; font-weight: bold; } em { font-weight: bold; font-style: normal; } .note { font-size: 9pt; font-style: normal; } p.copyright { text-align: center; font-style: normal; font-size: 9pt; } .FAQQ { color: #920092; font-family: arial, helvetica, sans-serif; } .leftBlock { width: 912px; margin: 0 auto; border: 1px solid #e5bfe5; background: #fafafa; padding: 0 15px; min-height: 115px; margin-bottom: 20px; } .leftBlock:hover { border: 1px solid #e5bfe5; } .leftBlock h3 { font-size: 20px; } .leftBlock h3 a { color: #1188dd; } .leftBlock h3 a:hover { text-decoration: none; } .leftBlock h3 a span { color: #800080; } .leftBlock h2 { margin-bottom: 0px; } .rightBlock { width: 912px; margin: 0 auto; border: 1px solid #e5bfe5; background: #fafafa; padding: 0 15px; min-height: 115px; } .rightBlock:hover { border: 1px solid #e5bfe5; } .rightBlock h3 { font-size: 20px; } .rightBlock h3 a { color: #1188dd; } .rightBlock h3 a:hover { text-decoration: none; } .rightBlock h3 a span { color: #800080; } .rightBlock h2 { margin-bottom: 0px; } </style> </head> <body> <!--#include virtual="/Home/BodyHeader.html" --> <div class="wrapperCont"> <h1> Meta Integration&reg; <span> Metadata Management (MIMM) <br />"Metadata Management" Solution </span> </h1> <!-- include virtual="/Products/MIMM/LocalNavBar.html" --> <div class="line"></div> <h2>README for Release Notes, Installation &amp; Setup</h2> <div class="content"> <h3>Table of Contents</h3> <div class="contentsBlock"> <ol> <li> <a href="#Overview">Overview</a> </li> <li> <a href="#Copyright">Copyright Notice</a> </li> <li> <a href="#Changes">Release Changes</a> </li> <li> <a href="#SystemRequirements">System requirements</a> </li> <li> <a href="#DatabaseServerSetup">Metadata Management (MIMM) Database Server Setup</a> <ol> <li><a href="#DatabaseOnOracle">Database on Oracle</a></li> <li><a href="#DatabaseOnMicrosoftSQLServer">Database on Microsoft SQL Server</a></li> <li><a href="#DatabaseOnPostgreSQL">Database on PostgreSQL</a></li> </ol> </li> <li> <a href="#ApplicationServerSetup">Metadata Management (MIMM) Application Server Setup</a> <ol> <li><a href="#ServerInstallation">Application Server Installation and Configuration</a></li> <li><a href="#ServerUpgrade">Application Server Upgrade</a></li> <li><a href="#ServerExecution">Application Server Execution and Initialization</a></li> <li><a href="#Authentication">Custom integration with Authentication Environments</a></li> <li><a href="#SSL">Custom integration for Secure Socket Layer (SSL) communication</a></li> <li><a href="#Security">Security and Vulnerability Considerations</a></li> </ol> </li> <li> <a href="#MetadataHarvestingSetup">Model Bridge (MIMB) Metadata Harvesting Setup</a> </li> <li> <a href="#UserInterfaceCustomization">User Interface Look &amp; Feel Customization</a> <ol> <li><a href="#LoginAndHeaders">Login and Headers</a></li> <li><a href="#MetadataExplorer">Metadata Explorer for Business Users</a></li> </ol> </li> <li> <a href="#SDK">REST API SDK</a> </li> <li> <a href="#DatabaseServerBackup">Metadata Management (MIMM) Database Server Backup/Restore</a> <ol> <li><a href="#BackupDatabaseOnOracle">Database on Oracle</a></li> <li><a href="#BackupDatabaseOnMicrosoftSQLServer">Database on Microsoft SQL Server</a></li> <li><a href="#BackupDatabaseOnPostgreSQL">Database on PostgreSQL</a></li> </ol> </li> </ol> </div> <h3>1. <a name="Overview">Overview</a></h3> <div class="contentsBlock"> <center> The <span>Meta Integration&reg;</span> Metadata Management <span>(MIMM)</span> Application Server is <br />based on the Meta Integration&reg; Repository <span>(MIR)</span> for metadata storage (in a database server), <br />and the Meta Integration&reg; Model Bridge <span>(MIMB)</span> middleware for metadata harvesting. </center> </div> <h3>2. <a name="Copyright">Copyright Notice</a></h3> <p class="copyright"> <b> Copyright &copy; Meta Integration Technology, Inc. 1997-2018. <br />All Rights Reserved. </b> <br />Meta Integration&reg; is a registered trademark of Meta Integration Technology, Inc. <br />Other product and company names (or logos) mentioned herein may be the trademarks of their respective owners. <br /><a href="http://www.metaintegration.com/">http://www.metaintegration.com</a> </p> <h3>3. <a name="Changes">Release Changes</a></h3> <h4> v10.0 (08/31/2018 - WARNING: Actual release date and features are subject to changes) </h4> <ul> <li> BRAND NEW USER INTERFACE EXPERIENCE <ul> <li> METADATA MANAGER VS METADATA EXPLORER UI: <ul> <li> In previous MIMM versions, the MIMM Web Application Server has offered two different User Interfaces (UI) targeting different user communities. The original Metadata Manager UI was designed for the advanced technical users with a traditional development tool layout including multiple panels: tree structure on the left, multi-tab windows in the middle, attributes on the right, and log activities at the bottom. The Metadata Manager UI also presents the highest level of details and complexity of all harvested metadata. The Metadata Explorer UI was initially introduced as a read only UI with simpler metadata for business users offering an easy to use layout for multiple devices, including tablets. The Metadata Explorer became the new UI platform for all new editing capabilities such as the business glossary or data modeling. </li> <li> With MIMM v10.0, all other editing capabilities are now available in the Metadata Explorer UI, including data mapping, enterprise data architectures (Configuration editor and model stitching), and even the Administration features like Custom Attributes which are now under are now available in the Metadata Explorer UI > Manage > Custom Attributes. Consequently, the Metadata Manager UI is now only necessary (and therefore available) in the MIMM Advanced Editions for repository management (with multi version and configuration management). The MIMM Standard Edition v10.0 is now fully implemented in the Metadata Explorer UI where Manage > Content allows users to directly create models to the default single configuration, import metadata, stitch models (connections), and trace lineage right away. </li> </ul> </li> <li> METADATA HOME PAGES: <p> &nbsp;&nbsp;&nbsp;New metadata home pages with multiple top tabs offer quick access to all key information: <ul> <li> The first tab is always the Overview tab which provides a dashboard to all critical information and properties. <!--V10TODO Such overview dashboard is also user customizable by graphically editing/reorganizing the layout. --> </li> <li> The next set of tabs are specific (metamodel / profile driven) to the type of object, for example: <ul> <li>Database Table objects have tabs for Columns and Constraints.</li> <li>BI Reports (like Tableau Workbook) objects have tabs for Dashboards, Worksheets, and Data sources.</li> </ul> </li> <li> The next set of tabs are for the common critical metadata analysis: <ul> <li>DATA FLOW for data lineage and impact analysis.</li> <li>RELATIONSHIPS for detection, management, and curation of relationships (see new features below)</li> <li>SEMANTIC FLOW for definition and usage perspectives (see new features below)</li> </ul> </li> <li> The last set of tabs are for common documentation and administration like: Comments, Attachments and Audit Log. </li> </ul> </li> <li> METADATA QUICK ACCESS: <p> &nbsp;&nbsp;&nbsp;Much improved ways to quickly access the right metadata: <ul> <li> SEARCH has been massively improved in both real time performance (now based on Lucene) and in functionality as a metadata driven search with natural language semantic search (see new features below) </li> <li> BROWSE has also been massively improved in both performance (now also Lucene based) and in functionalities as a metadata asset type driven browser with support for hierarchical display at all levels of any data sources including database, DI, BI, Data Lakes, and even No SQL (like JSON hierarchal structures) </li> <li> Enterprise ARCHITECTURE driven graphical navigation allows users to drill down from a top down big picture of the enterprise architecture. </li> </ul> </li> <li> METADATA USER LISTS: <p> Brand new user list management feature allows users to define and mange lists of metadata objects. Just like labels, lists are available anywhere in the UI to add/remove objects, bulk editing, and management. Lists can contain any type of metadata such my favorite list of terms, tables, or reports. Lists can also can contain multiple type of content such as my to do list with terms, tables, and reports in that list. Lists can be shared with other users when marked as public, such as our quarterly review list. Note that lists are flat, therefore not hierarchical and with no sub-list or include concepts. </li> <li> METADATA TAGGING WITH LABELS: <p> The metadata tagging with labels has been much improved to be harmonized with the brand-new list management experience in order to facilitate adding/removing objects anywhere, grid editing, and more. </li> <li> METADATA DOCUMENTTAION: <p> &nbsp;&nbsp;&nbsp;Much improved ways to document metadata: <ul> <li> MULTI-LINE TEXT has been introduced (in addition to the previous single line Text for better formatting and layout. In addition, Multi-Line text has been enhanced with support for URL links and embedded image attachments using a JIRA like syntax. Multi-Line Text is not only the default format for all Descriptions and Comments, but is now also available as a new type of Custom Attribute that can be applied to any metadata for documentation. </li> <li> RICH TEXT Documentation with (WYSIWYG) Visual Edition is not only the default medium for Glossary Term documentation, but is now also available as a new type of Custom Attribute that can be applied to any metadata for documentation. </li> <li> SQL TEXT of SQL View, Stored Procedures and more are now better presented with colored syntax and optional reformatting. Note that this is not a new type of custom attribute but any predefined attribute with SQL is better formatted. </li> <li> ATTACHMENTS (such as pictures, documents, etc.) have been enhanced as part of its integration with the new Metadata Explorer, including Management (Drag and Drop), Preview, and Thumbnails that can be embedded in the Text (and Multi-Line text) descriptions, comments and custom attributes. </li> </ul> </li> </ul> </li> <li> DATA MODELING AND DOCUMENTING ANY HARVESTED METADATA <ul> <li> In MIMM v9.1, existing data stores such as RDBMS could be harvested as a Physical Data Model (PDM) instead of a simple Model, in order to offer full documentation including business glossary term reuse based upon automatic semantic links, reverse engineering based upon naming standards, data modeling with diagramming, and of course automatic change management (re-harvest/compare/merge). </li> <li> In MIMM v10.0, all the above capabilities are now available on any harvestable model content without having to create a PDM. In other words, any data integration, business intelligence, reports, data stores (relational, hierarchical, NoSQL, files, etc.) can be documented at as needed, including support for relational data models. Consequently, all existing PDM in MIMM v9.1 may be converted to Models in MIMM v10.0 without loss of any existing documentation (including diagrams). </li> <li> The documentation (business names and definitions) process has been improved allowing any object (e.g. table, column, report field) to be quickly and easily: <ul> <li>"Classified" with a local semantic link to a glossary term, without having to use an intermediate Semantic Mapping content, or associating the Model to a Glossary as with the PDM.</li> <li>"Documented" with a local business name and definition overwriting any Semantic link (Classified, Mapped or Inferred) </li> </ul> Furthermore, this documentation process is also dramatically enhanced through the integration with a new "Semantic Flow" tab acting as an interactive dashboard on finding the right definitions (see below). </li> <li> When harvested databases that are already documented in data modeling tools (e.g. Erwin), such data models can be imported as a separate model and automatically stitched directly to its matching harvested database (without using any semantic mapping model). The semantic stitching is automatically maintained as both the database and its associated data model are independently re-imported/refreshed on regular basis (the stitching will report inconsistencies). From the user perspective, the documentation (business name, descriptions, relationships, diagrams) of any harvested database table / column is automatically inherited from its associated data model. </li> <li> Note that MIMM Advanced Edition with Authoring also allows one to use a PDM to create data models from scratch (e.g. design new HIVE table requirements) without pointing to a live database rather than simply documenting existing data stores. The PDM concept is retained for this purpose. Note that a Conceptual/Logical Data Modeling capability may also be added in future versions. </li> </ul> </li> <li> DATA CATALOGING <ul> <li>Brand new Data Cataloging applications well integrated with the existing Data Governance (DG) capabilities, and based upon the solid Metadata Management (MM) foundations with full data linage and powerful metadata version and configuration management.</li> <li>Managing both modern cloud based data lakes and classic Data Warehouse (DW) Enterprise Architectures.</li> <li>Harvesting metadata from both modern (JSON / Parquet files, Hive tables, and Kafaka messages), and classic (relational tables / CSV files) data technologies.</li> <li>Advanced data driven metadata discovery through integrated powerful Data Profiling and Reference Data capabilities.</li> <li>Presenting a brand-new business driven Data Cataloging User Interface (UI) experience.</li> <li>Integrating forward engineering with self-service Data Preparation, Data Quality, Data Integration, and Business Intelligence design tools.</li> </ul> </li> <li> DATA SAMPLING, PROFILING, &amp; SECURITY <ul> <li> New "Data Viewer" security role allows authorized users (or groups) to sample data (read only access). </li> <li> New "Data Manager" security role allows authorized users (or groups) to enable full data profiling of selected objects (tables, files, etc) on demand. </li> <li> New data security protection allows Data Managers to set a "Hide Data" property at the column level (e.g. SSN column). In addition, data can also be automatically hidden when detected at the Semantic Type level (see new feature below) where a newly harvested set of files in a data lake may contain sensitive data (e.g. of Semantic Type SSN). </li> <li> New Sample Data tab on the home page of any data store object (e.g. file, table) allows users to view sample data to better define its metadata. </li> <li> New Data Profiling Statistics are displayed (including graphical reports) on the Overview tab (dashboard) in the home page of any data store object (e.g. file, table) as well as in the properties grid right panel and within the grid view. </li> </ul> </li> <li> SEMANTIC TYPES Discovery &amp; Management <ul> <li>Semantic Discovery (semantic types, patterns/lists machine learning)</li> </ul> </li> <li> RELATIONSHIPS Discovery &amp; Management <ul> <li>Relationship Discovery using the following methods: <ul> <li> Automatically "Inferred" based on: <ul> <li>Metadata Usage Driven: using the surrounding data flow usage such as joins in DI (ETL Tools, SQL Scripts or Data Prep) and BI (traditional or self-service) activities.</li> </ul> </li> <li> On Demand "Detected" based on: <ul> <li>Metadata Name Matching: for example PurchaseOrder.SKU = Product.SKU or Customer.AccountId = Account.Id) </li> <li>Semantic Definition Matching: classified by users to the same glossary term.</li> <li>Semantic Type Matching: discovered through data profiling (e.g. SSN syntax or VIN number)</li> </ul> </li> </ul> </li> <li>Relationship Management with user defined relationships and social curation (e.g. endorsed or certified joins for active data governance generation into a DI or BI design tools)</li> <li>Dynamic Data Model diagram generation from Relationships surrounding any object (e.g. table or file).</li> </ul> </li> <li> SOCIAL CURATION <ul> <li>Endorsement, warnings, certifications with impact on search ranking.</li> </ul> </li> <li> SEMANTIC SEARCH <ul> <li>Metadata driven search language such as "Customer tables" for any tables with Customer in the name, "tables with SSN" for any table with a SSN column (e.g. for GDPR), or "ROI in Reports" for any reports containing ROI.</li> </ul> </li> <li> SEMANTIC MAPPING <ul> <li> Major improvements in semantic mapping including in place semantic mapping via two approaches: <ul> <li>Top-down from Business Glossary Term or Data Model Entity/Attribute,</li> <li>Bottom-up from Data Store Tables/Columns or Report Fields.</li> </ul> </li> </ul> </li> <li> SEMANTIC FLOW <ul> <li> Major improvements on the semantic flow analysis now also supporting the documentation process acting as an interactive dashboard for finding definitions that are: <ul> <li>"Local" (within the Model) that has been either "Imported" (metadata harvesting) or locally "Documented" (edited description overwrite),</li> <li>locally "Classified" (within the Model) to an external glossary term,</li> <li>directly "Mapped" via a Semantic Mapping Model or direct stitching (e.g. between a database and its data model),</li> <li>indirectly "Inferred" through complex data flow pass through and semantic flow (which can be graphically analyzed in the data flow diagram), or</li> <li>"Searched" for by name in all glossaries.</li> </ul> Any of the Searched, Inferred or Mapped definitions may quickly (in place) be reused/promoted as a Classified or Mapped definition. </li> </ul> </li> <li> RELATED REPORTS <ul> <li> Related Reports are now available on any metadata objects such as files, tables, columns, etc. (instead of just business terms). This allows business users looking at the result of a search to have direct access to a simple list of any related reports in any BI tools (crossing all semantic and data flows without exposing any of the complexity to business users) Such reports can then automatically be opened in their respective BI tool technologies, therefore acting as a multi-vendor BI tool web portal for business users. </li> </ul> </li> <li> DATA CONNECTIONS / METADATA STITCHING <ul> <li>Complete support for file format harvesting and stitching.</li> <li>Connection pool factorization (e.g. from DI and BI servers) to minimize the number and complexity of stitching connections.</li> </ul> </li> <li> DATA MAPPING Specifications &amp; Design <ul> <li> The Data Mapping Specifications and the Data Mapping Designs have been fully resigned and merged into brand new Data Mappings that can be used for multiple purposes, including capturing data flow mapping requirements, and even all the way to developing a full data mapping design that may be forward engineered (see Active Data Governance) into SQL Scripts or DI/ETL tool jobs (e.g. Informatica PowerCenter, Talend DI) </li> <li> The Data Mapping tool allows for the mapping of multiple source data stores into a target data store in multiple steps with (schema or table level) Bulk Mappings and (column/field level) Query Mappings. The data mapping tool offers new graphical mapping visualization as you map, and new expression syntactical editors when designing joins, lookups, filters, etc. </li> </ul> </li> <li> ACTIVE DATA GOVERNANCE <ul> <li>From Data Store Models to Data Modeling tools (e.g.Erwin) and BI Design Tools (e.g. Tableau, SAP BusinessObjects, IBM Cognos)</li> <li>From Data Mappings Models to SQL Scripts Data Integration (DI/ETL) tools (e.g. Informatica PowerCenter, Talend DI)</li> </ul> </li> <li> ARCHITECTURE, DEPLOYMENT &amp; INTEGRATION <ul> <li>Search engine re-designed and optimized with Apache Lucene offering near real time metadata search and navigation (and removing any dependencies of underlying database text search requirements)</li> <li>Third party software upgraded to the latest of Java 8, Apache Tomcat 9, PostgreSQL 10 and more for security and performance improvements.</li> <li> Single Sign On (SSO) integration architecture has been redesigned for easy external authentication with redirect using custom scripts in any language such as Python (Note that MIMM v9.1 external authentication required custom complex integrated java scripts). Post GA cumulative patches will include support for the Security Assertion Markup Language (SAML) standard, and native cloud authentications such as Amazon AWS and Microsoft Azure. </li> </ul> </li> <li> UPGRADE REQUIREMENTS: <ul> <li> CPU &amp; MEMORY:<br /> The MIMM v10.0 now uses Lucene as the search engine instead of using the text search capabilities. Consequently, the overall hardware requirements now demand as much processing resources (CPU and memory) on the MIMM Application Server machine as on the underlying Database Server machine. (MIMM v9.1 use to demand more resources on the database server as all searches were preformed using the database server). </li> <li> DATABASE:<br /> The MIMM v10.0 server now requires PostgreSQL database software version 10 or newer. </li> </ul> </li> <li> UPGRADE PROCESS: <ul> <li> POSTGRESQL DATABASE VERSION UPGRADE:<br /> If you deployed your MIMM v9.1 server connected to your own PostgreSQL server, then you must first upgrade the PostgreSQL server to version 10 or newer, and make sure the MIMM v9.1 software works still properly after that step. </li> <li> MIMM v9.1 SOFTWARE UPGRADE &amp; DATABASE MAINTENANCE:<br /> You must download and apply the latest MIMM v9.1 Cumulative patch (July 2018 or newer), and make sure the MIMM v9.1 software still works properly after that step.<br /> You must then make sure that the regularly scheduled database scheduled has ran successfully and long enough to have no further actives to do (such as purging deleted content from the database) </li> <li> MIMM v9.1 DATABASE BACKUP:<br /> You must then perform a full database backup (MIMM, data, indexes and scripts), restore it on a brand new (different) database server, and make sure the MIMM v9.1 server software still works properly after that step.<br /> (Do not rely on the MIMM backup script for that process, you must use real full database backup). </li> <li> MIMM v10.0 SOFTWARE INSTALL &amp; DATABASE UPGRADE:<br /> Install the MIMM v10.0 software on a new directory (independently of the MIMM v9.1 install directory). Use the Setup utility to point to the database to upgrade. Starting the new MIMM v10.0 server will automatically perform an upgrade of the database's MIMM data and scripts. Note that MIMM v10.0 uses Lucene on the MIMM server for search, therefore the database will no longer need to use text search indexes and will therefore need less space in the database </li> </ul> </li> <li> POST UPGRADE: <ul> <li> FLAT FILES:<br /> MIMM v9.1 had no proper support for flat files which are now fully supported as part of the new data cataloging capabilities of MIMM v10.0. Therefore, the early Flat File (CSV or XLSX) prototypes beta bridges have been discontinued and replaced by the import bridge from File System (CSV, Excel, XML, JSON, Avro, Parquet), or the other new file system / object store import bridges such Amazon S3, Azure Blob Storage, Hadoop HDFS, etc. which can all contain flat files. All these file system import bridges now create multi-model content which can be stitched to data mappings and other DI/ETL models. Any content imported from Flat File (CSV or XLSX) prototypes beta bridges can still be visible in MIMM v10.0, but no further imports can be performed, and migration to the new bridges cannot be automatized (different parameters and different content type from single to multi model). Therefore, new models should be created with the new file system bridges, and the old content (from the prototype beta bridges) should be deleted. </li> <li> PHYSICAL DATA MODELS (PDM):<br /> In MIMM v9.1, PDM were used to document (including data model diagrams) existing databases, as well as designing new databases (new tables, columns, etc.). In MIMM v10.0, PDM is no longer needed to document existing databases (including data model diagrams, glossary integration, etc.). Therefore, PDM is now only needed for data store requirements / database design which requires MIMM with "metadata authoring" license. Consequently, MIMM servers without "metadata authoring" license" can no longer create new PDM models, although any existing PDM created with MIMM v9.1 are still operational on MIMM v10.0. The bottom line is that the MIMM v10.0 new way to document data stores / databases is not only as powerful as PDM but it is much more efficient with version management (changes after new harvesting). Consequently, we recommend all PDM models used to document databases to be converted to models which can be performed without any loss of documentation, by means of a conversion script available on PDM models. </li> </ul> </li> </ul> <h4> v9.1.0 (06/30/2017) </h4> <ul> <li> HARVESTED MODEL CHANGE DETECTION avoids systematically creating a new version of the content upon scheduled harvesting of large database, data modeling, data integration, or business intelligence servers. This is automatically performed as side effect of any new harvesting by a systematic and efficient (fast) model comparison with the previously harvested metadata This dramatically reduces the needed database space by creating fewer versions, and enable the possibility of reliable notification only if a change really occurred. Note that in previous versions, the incremental harvesting already offered systematic and automatic reuse of unchanged models (e.g. BI Reports) from a large a multi-model server (e.g. BI server) </li> <li> SUBSCRIPTION / NOTIFICATION mechanism on select changes at both the repository model level (e.g. a new version of a data store is harvested) and at the model object level (e.g. a terms changed or ready to approve/review in a Business Glossary under Workflow). Anyone may be assigned stewardship roles and thus will be notified as new imported content is harvested, with links back to the new object and the ability to compare using the newly re-written powerful comparator, and the ability to identify impacts of change for any architecture or configuration of assets. </li> <li> CUSTOM ATTRIBUTES on any harvested metadata (models) from data stores, data modeling, data integration, and business intelligence tools. Therefore allowing to tag any metadata (from Hive tables to BI reports down at the column/field level) for custom properties such as a company confidential level that can be read for external products on security enforcement and compliance. Note that in previous versions, these same custom attributes could already be applied to authored metadata (models) such as terms of Business Glossaries or tables/columns of Data Models. </li> <li> BUSINESS GLOSSARY WORKFLOW for the business users behind the Metadata Explorer UI. Note that in previous versions, a (customizable) Workflow was already available in the Metadata Manager. </li> <li> DATA INTEGRATION BROWSING AND LINEAGE for the business users behind the Metadata Explorer UI, allowing them to browse the data integration jobs (from DI/ETL/ELT tools as well as SQL Scripts) and analyze the summary data flow lineage of their execution. Note that in previous versions, the browsing (open) and full detailed data flow lineage of any data integration models (DI/ETL/ELT and SQL scripts jobs) were already available in the Metadata Manager (and still are). </li> <li> DATA CONNECTION STITCHING MAJOR IMPROVEMENTS now offering to stitch by column position (needed in SQL insert statements of ETL scripts ), and smart case aware stitching (as some database's name spaces like schema/table/column are case sensitive while others are not) </li> <li> BULK DATA MAPPING at the table level. </li> <li> MODEL COMPARE/MERGE: The comparison facility has been completely re-written to include comparison for every level of detail for those models with the same profile (e.g., data model from one technology and data model from another). Even entirely different contents (e.g., an ETL and a data model, or a BI Design and Glossary) may be compared, only at a lessor level of granularity (basically at the granularity of stitching, e.g., schema, table, column). Finally, for physical data models (including documentable models based upon harvested database structures) one may use a powerful merge feature again with full control down to any level of granularity. </li> <li> DATA MODELING Major improvements and new features involving the physical data modeling capabilities centered around two major use cases: <ul> <li>A data documentation tool enabled through physical data modeling based upon the structure harvested from existing data stores of the of data warehouse and data lake (including traditional RDBMS and Hadoop Hive big data)</li> <li>A data requirements tool for new data stores to be defined such as self-service DI to new Hadoop Hive tables in the data lake.</li> </ul> Also includes new advanced support for physical data model diagram editing, relationships definition, all the way to export to data modeling tools, business intelligence design, etc., and comparison/compliance with live database / big data hive implementations.. </li> <li> REST API SDK major enhancements with many new features </li> <li> LIGHTWEIGHT MODELS: Model content (such as a harvested databases or data models) can be stored in the repository as a lightweight model (just the XML file), or fully expanded (as both XML file and fine grained repository objects). When retaining many historical versions of a model, using lightweight models saves repository space, and also avoids slowing down the search by not indexing historical repository objects. Lightweight models cannot be directly used in a Configuration or in a Mapping. However, the lightweight model of a data store (such as a RDBMS or Hadoop Hive) can be documented with a Physical Data Model (PDM) for data model diagramming and semantic linking to a Business Glossary (BG). Such a PDM can of course be used in any Mapping or Configuration to be exposed to business users in the Metadata Explorer. Note that lightweight models can immediately (without any loss of performance) be opened in the Metadata Manager (to browse metadata or trace lineage within that model), Compared (with the Model Comparator to analyze the difference between versions), Exported (for example to BI design tool). </li> <li> UPGRADE NOTES: The Business Glossary Workflow has been significantly improved in the metadata explorer. Therefore, before upgrading to this version, it is strongly recommended that all business glossaries under workflow have published terms only (this can be achieved by listing all draft terms and either publishing or reverting them to the previously published state). Otherwise, the upgrade process will systematically publish all draft terms in their current state (which can be undesirable if the current state is not what you would like to publish). Finally, after the upgrade, you will need to manually re-enable the Workflow on these Business Glossaries. </li> </ul> <h4> v9.0.2 (6/10/2016) </h4> <ul> <li> METADATA MANAGER: <ul> <li> Major improvements in MODEL VERSION / CHANGE MANAGEMENT preventing the creation of unnecessary new versions of models if the source metadata (e.g. a database, or data model) has not changed since the last automatically scheduled metadata harvesting. This is new feature is achieved by taking advantage of the MIMB's new capabilities to compare the metadata of a newly imported model with a previously imported one in order to detect any change. The major benefit of this new feature is to dramatically reduce the disk space in the repository by automatically deleting unnecessary versions. </li> <li> New CONFIGURATION / VERSION CHANGE MANAGEMENT capabilities offering a comparator of versions of configurations. </li> </ul> </li> <li> METADATA EXPLORER: <ul> <li> Major redesign of the Metadata Explorer UI on both the look & feel and actual capabilities. </li> <li> New METADATA SEARCH/BROWSE with FILTERING AND REPORTING capabilities offering: <ul> <li> New Search (or Browse) with Filtering capabilities on any attributes/properties </li> <li> New choice of result display as a classic Google like "LIST", or a new powerful "GRID" offering a spreadsheet like display of multiple attributes/properties at once. Such attributes/properties can be individually selected, reordered, and sorted, basically offering a full metadata reporting solution. The results can of course be downloaded as CSV/Excel files. </li> </ul> </li> <li> New METADATA EDITING Capabilities at many levels including: <ul> <li> Numerous new fast and easy "in place" editing to Rename objects, Edit Descriptions, and more. </li> <li> The new Search/Browse GRID display also offers efficient editing with: <ul> <li> TABULAR EDITING of multiple objects at once such as Business Glossary Terms, Data Models Tables, or Table Columns </li> <li> BULK CHANGE of multiple objects at once, where a search can return multiple objects (that can then be selectively subsetted) for which changes can be performed at once (e.g. Change the Security Threat Level to Orange to a set of tables at once) </li> </ul> </li> </ul> </li> </ul> </li> <li> METADATA AUTHORING TOOLS: <ul> <li> Common Features: <ul> <li> Major improvements in CUSTOM ATTRIBUTES (also known as User Defined Properties) to objects of the Business Glossaries and Data Models <ul> <li> Custom Attributes are now common to the MIMM repository (e.g. Security Threat Level = [ Red, Orange, Yellow, Blue, Green ] and are therefore shared between Business Glossaries, Physical Data Models, etc. Therefore, having a centralized place for maintenance (e.g. adding a new value: purple) </li> <li> Custom Attributes can now have a default value (e.g. default value is green) </li> <li> Custom Attributes now have a much wider scope to be applied at any level from a high level repository object (e.g. harvested Model, Data Mapping, Directory) to fine grain model objects (e.g. A Business Glossary / Term, and/or a Physical Data Model / Column) </li> <li> Custom Attributes now have a security group associated to them (e.g. the Security Threat Level custom attribute may only be set by a custom Security Approved group) </li> </ul> </li> <li> New AUDIT TRAIL for any changes in objects of Business Glossaries and Data Models, including who changed a given attribute and when </li> </ul> </li> <li> BUSINESS GLOSSARY: <ul> <li> New Business Glossary editing capabilities are now available to the business users under the Metadata Explorer UI. (includes tablet friendly in place editing, as well as HTML formatting of descriptions, etc.) </li> </ul> </li> <li> DATA MODELING: <ul> <li> Common Features: <ul> <li>Major improvements in data modeling DIAGRAM EDITING: entity formatting, relationships editing, automatic layout, etc.</li> </ul> </li> <li> PHYSICAL DATA MODEL (data documenter for existing data stores databases, data warehouse, data lake): <ul> <li>Major improvements (as part of the above common features)</li> </ul> </li> <li> LOGICAL DATA MODEL (brand new feature) (enterprise conceptual/logical information modeler): <ul> <li>This new feature is postponed to the next release</li> </ul> </li> </ul> </li> <li> DATA MAPPING: <ul> <li> DATA MAPPING SPECIFICATIONS (Data Flow Mapper) <ul> <li>Minor improvements and bug fixes</li> </ul> </li> <li> DATA MAPPING DESIGN (Data Integration Designer) <ul> <li>Minor improvements and bug fixes</li> </ul> </li> </ul> </li> </ul> </li> <li> ARCHITECTURE &amp; TECHNOLOGY: <ul> <li> Major database performance improvements </li> <li> Updated MIMM Web Services which are now based on RESTful API technology (i.e. therefore removing any security vulnerabilities of the older Axis technology) </li> </ul> </li> </ul> <h4> v9.0.1 GA (12/15/2015) </h4> <ul> <li> ARCHITECTURE &amp; TECHNOLOGY: <ul> <li> 100% Java delivery and installation allowing support for Windows as well as a variation Linux/Unix deployments <ul> <li>The Metadata Management Server (MIMM) can now be installed on Unix/Linux variations.</li> <li> The Metadata Harvesting Agent (MIMB bridges) can be installed: <ul> <li> Locally (co-located with a MIMM server on Linux) to run 100% java based bridges including JDBC database bridges (Oracle, Teradata, DB2, SQL Server, etc.), big data bridges (Hadoop Hive, HCatalog), and other popular bridges such as CA ERwin xml, Informatica PowerCenter xml, Tableau BI, etc. </li> <li> Remotely on a Windows machine for C++ based bridges and COM API based bridges requiring software SDK running on Windows such as CA ERwin native (.erwin) files, and many BI tools like SAP BO Universe, Microstrategy, QlikView, etc. </li> </ul> </li> </ul> </li> <li> 100% HTML 5 (no more Flash) and tablet friendly look & feel, allowing to run on Mac, Tablets, and more </li> <li> Metadata Explorer Customization to offer a better experience to targeted business users of the customer company: <ul> <li>Customize headers, company logos, menus, search categories, home page (with search widgets), automatic opening of reports (BI portal experience, BI report documentation (adding BG terms)</li> </ul> </li> <li> Improved Metadata Explorer Search Performance </li> <li> Improved Data Integration (DI/ETL/ELT Import Bridge) Harvesting Performance <ul> <li> Now offering detailed DI data flow lineage analysis on demand only (in real time), instead of pre-calculating even if unused </li> </ul> </li> </ul> </li> <li> METADATA AUTHORING: <ul> <li> Improved DATA STORE DOCUMENTER (PHYSICAL DATA MODEL): <ul> <li>Live harvesting and automatic update (with version management) from popular RDBMS or big data hadoop data store</li> </ul> </li> <li> Common Data Modeling Capabilities: <ul> <li>Data governance integration with Business Glossary including naming standards, reuse of terms, creating of terms on the fly with supervised learning</li> <li>Data modeling graphical diagram editor (relationships, annotations, auto layout, etc.)</li> <li>Full integration (import and export) with data modeling tools like CA ERwin</li> </ul> </li> </ul> </li> </ul> <h4> v8.0.3 GA (05/19/2015)<br /> v8.0.2 LA (03/31/2015) </h4> <ul> <li> DATA DOCUMENTER (NEW): <ul> <li>Live harvesting and automatic update (with version management) from popular RDBMS or big data</li> <li>Data governance integration with Business Glossary including naming standards, reuse of terms, creating of terms on the fly with supervised learning</li> <li>Data modeling graphical diagram editor (relationships, annotations, auto layout, etc.)</li> <li>Full integration (import and export) with data modeling tools like CA ERwin</li> </ul> </li> <li> DATA MODEL DIAGRAM VISUALIZER: <ul> <li>Major improvements with the HTML5 redesign including better scalability, performance and overall layout quality</li> <li>New interactive search</li> <li>New diagram auto layout</li> <li>New dynamic layout of a diagram subset starting from an entity with all related entities with one or two levels of relationships (very useful for large diagrams)</li> </ul> </li> <li> SEMANTIC MAPPER: <ul> <li> New support for BI Report metadata (such as a page of a workbook, a table or pie chart on page, or just the axis of a graph), allowing to document precise items within a given report by associating (semantic links) business glossary terms to them. </li> <li> New support for models within a multi-model server source, allowing to provide documentation (or glossary) at the high level of a given data model (or BI report) within a multi model server, such as: <ul> <li>a Data Modeling (DM) repository server with many data models inside (e.g. CA ERwin Mart)</li> <li>a Business Intelligence (BI) content server with many BI designs and BI reports inside (e.g. SAP BusinessObjects)</li> </ul> </li> </ul> </li> <li> BUSINESS GLOSSARY: <ul> <li>New customizable role driven workflow support (can be turned off) and security enforcement</li> </ul> </li> <li> METADATA EXPLORER UI: <ul> <li>New integrated presentation of Business Glossary terms related to any data store or BI report objects, including the ability to add/remove BG terms documenting a data store or BI report</li> <li>Improved search support for auto complete and objects</li> </ul> </li> <li> ADMINISTRATION: <ul> <li>New group based security model (as side effect of the new role based Business Glossary workflow)</li> </ul> </li> <li> ARCHITECTURE &amp; TECHNOLOGY: <ul> <li> New support for HTML5 only devices like iPad and other tablets (Flash will no longer be needed) <br />for graphically tracing any data flow or semantic lineage (Lineage Analyzer), <br />and for visualizing data models (Diagram Visualizer). </li> <li>Improved search performance for MIMM persistence on SQL Server</li> <li>Java 8 (compiled with backward compatibility with Java 7) compliance (Java 6 is no longer supported)</li> </ul> </li> </ul> <h4>v8.0.1 (12/02/2014)</h4> <ul> <li> FEATURES: <ul> <li>New "Show Related Reports" (e.g. from a Glossary Term)</li> </ul> <li> METADATA MANAGER UI: <ul> <li>New Metadata Manager look &amp; feel (to match the Metadata Explorer)</li> <li>New Business Glossary batch editing</li> </ul> </li> <li> METADATA EXPLORER UI: <ul> <li>New customizable action menus per repository object type (e.g. open BI report with BI tool by default)</li> <li>New dedicated web pages for tracing data lineage &amp; impact, and semantic definition &amp; usage</li> <li>New access to the Configuration's Enterprise Architecture Diagram</li> </ul> </li> </ul> <h4>v8.0.0 (LA 10/01/2014)</h4> <ul> <li> NEW: <b>Business User Interface</b>: <ul> <li>Brand New (redesigned from scratch) Business User Interface with simplified search, navigation and presentation paradigms for business users to easily access and understand the metadata assets</li> <li>Replaces the "Metadata Explorer" UI which was a read only version of the "Metadata Manager" UI with simplified metadata for business users.</li> <li> New Add-on Business Glossary driven <b>BI Web Portal</b>: <ul> <li>Optimized per BI technology (e.g. SAP BusinessObjects, Tableau)</li> <li>Allows for any business users to browse and search for BI reports and understand them (e.g. interactive direct access to business glossary definitions or Data Lineage lookups from any item visualized in the report)</li> <li> Allows for crowd sourcing to document BI reports using the integrated <b>BI Report Documenter</b>: <ul> <li>Full business Glossary driven BI report documentation with reuse of business terms for definitions, and naming standards for from physical name to logical business name automatic generation</li> <li>Automatically maintains full semantic lineage between fields of the BI report and terms of the business glossary</li> </ul> </li> </ul> </li> </ul> </li> <li> IMPROVED: Metadata Authoring (MA)'s <b>Data Documenter</b>: <ul> <li>Automatic live database update with full version management control</li> <li>Full graphical data modeling diagramming capabilities</li> <li>Full Business Glossary driven data store documentation with reuse of business terms for definitions, and naming standards for from physical name to logical business name automatic generation</li> <li>Automatically maintains full semantic lineage between objects (tables, columns, etc.) of the documented data store (data model) and terms of the business glossary</li> </ul> </li> <li> IMPROVED: Metadata Authoring (MA)'s <b>Data Mapper</b>: <ul> <li>"<b>Data Mapping Specifications</b>" for subject matter experts, data analysts, and business users to define the mapping requirements of new data integration projects, or to document existing data flow implemented in technologies that cannot be captured by metadata harvesting. </li> <li>"<b>Data Mapping Design</b>" for data analysts or data integration engineers to design the data mapping with actual transformations (joins, lookups, filters, etc) for forward engineering to ETL tools</li> </ul> </li> <li>REDESIGNED: Meta Integration Repository (MIR) Database implementation and MIMM Application Server on top</li> </ul> <h4>v7.2 (11/01/2013)</h4> <ul> <li>NEW: Metadata Authoring (MA)'s <b>Data Documenter</b>: a web enabled (graphical) Data Modeling (DM) tool for subject matter experts, data analysts, and business users to document existing data stores</li> <li>NEW: Metadata Versionning (MV)'s <b>Configuration Builder</b>: a web enabled (graphical) Enterprise Architecture (EA) tool for IT management and Developers to build and manage the life cycle of Enterprise Architectures</li> <li>IMPROVED: Metadata Authoring (MA)'s <b>Business Glossary</b> for Data Governance</li> <li>IMPROVED: Metadata Authoring (MA)'s <b>Data Mapper</b>: to document certain "Data Flows" of the Enterprise Architecture, or to define the "semantic flow" connecting the Enterprise Business Glossary to the Enterprise Architecture's physical systems</li> <li>IMPROVED: &#8220;High Fidelity&#8221; Data Model Diagram Visualizer <li>IMPROVED: Configuration Management of Multi-model Subsets </li> <li>IMPROVED: Enterprise Authentication (e.g., automatic Windows-based authentication)</li> </ul> <h4>v7.1 LA (04/05/2013)</h4> <ul> <li> NEW: "High Fidelity" Diagram Visualizer <ul> <li> For  Faithful rendering of the original model diagrams as developed in ERwin <ul> <li>Retains original object positions and sizes</li> <li>Properly supports auto size entities</li> <li>Retains display levels for individual objects and the diagram as a whole</li> <li>Retains original entity fonts</li> <li>Retains original attribute data type alignments</li> <li>Retains other shapes and additional documentation on the diagram</li> <li>Separates Logical and Physical Diagrams</li> </ul> </li> </ul> </li> <li> NEW: Diagram Relationship Analysis allows the user to highlight the PK/FK's involved in a relationship and even generate the relationship join expression which may be cut and pasted for immediate use in SQL queries. </li> <li> NEW: Powerful Search Language <ul> <li> Allowing for sophisticated / advanced search such as: Any Words, Exact Phrase, All Words, Exclude Words, Wild Card End, Parent and Child, Exact Name, Object Type, Property Type. </li> </ul> </li> <li> NEW: Model Browsing Experience <ul> <li>Offering a separate model browse panel simultaneously displayed adjacent to diagrams and lineage</li> </ul> </li> <li> IMPROVED: Semantic and Data Flow Lineage &amp; Impact Analysis <ul> <li> Direct access to essential analysis: <ul> <li>Trace Data Lineage (e.g. views to tables)</li> <li>Trace Data Impact (e.g. tables to views)</li> <li>Trace Semantic Definition (e.g. physical tables to logical entity)</li> <li>Trace Semantic Usage (e.g. logical entity to physical tables)</li> </ul> </li> <li> Choice of presentation: <ul> <li>Simple List (of ultimate sources and/or destinations)</li> <li>Advanced Graph (of semantic and/or data flow)</li> </ul> </li> <li> Choice of direction: <ul> <li>Reverse (for Data Lineage or Semantic Definition) </li> <li>Forward (for Data Impact or Semantic Usage)</li> </ul> </li> </ul> </li> <li> IMPROVED: Data Flow Advanced Analysis <ul> <li> Separation of data flow and control flow <ul> <li>Data flow (actual movement of data)</li> <li> Control flow (conditions and filters) <ul> <li>Column Control (which directly impacts values)</li> <li>Row Control (which does not directly impact values such as filters)</li> </ul> </li> </ul> </li> <li> Visualization of Data transformation Type of lineage by using color and/or thickness of lines <ul> <li>gray lines means data flow with no transformation (i.e. pass through)</li> <li>black lines means data flow with transformations (e.g. expression)</li> <li>thick lines means data flow with transformation processes (e.g. ETL workflows that can be analyzed when clicking on such lines)</li> <li>yellow lines means column control flow (e.g. lookups)</li> <li>yellow dashed lines means row control flow (e.g. filters)</li> <li>blue lines means semantic flow</li> </ul> </li> </ul> </li> <li> IMPROVED: Search <ul> <li>Search improvements for SQL Server wildcard/word break searches </li> </ul> </li> </ul> <h4>v7.0.4 LA (10/12/2012)</h4> <ul> <li> NEW FEATURES: <ul> <li>METADATA TAGGING/ANNOTATIONS/LABELS: Ability for business users to "tag" any metadata, at any granularity level from models down to a particular column</li> <li> USER COMMENT MANAGEMENT: Ability for business users to "comment" on any metadata, at any granularity level from models down to a particular column. Model Administrators (data stewards) can then review and manage these user comments (e.g. change status from Candidate to Approved). Finally, Model Administrators can push selected comments back into the original tool (e.g. ERwin model) </li> <li>LIMITED METADATA EDITOR: offering a model administrator (data steward) to edit the basic metadata documentation such as the Business Name and Descriptions of Tables or Columns.</li> <li> FLOATING LICENSE SUPPORT: offering new concurrent user licensing, with options for one or both of: <ul> <li>Named (exclusive) users</li> <li>floating (first come first served) users</li> </ul> </li> </ul> </li> <li> MAJOR IMPROVEMENTS: <ul> <li>METADATA PROFILING: major improvements in accurately representing the original tool metamodel</li> <li>LINEAGE TRACING INTERACTIONS: major usability improvements</li> <li>DATA FLOW LINAGE SUMMARY: greatly improved the summary lineage presentation</li> <li>METADATA EXPLORER SIMPLIFICATION: using context dependent tree navigation, therefore limiting the nesting of left navigation panels</li> <li>TOUCH SCREEN TABLET SUPPORT: with full menus available on Action button as a substitute to the right click menu</li> <li>CROSS WINDOW/TAB OBJECT NAVIGATION: with Show Object in Model Browser, in Diagram Visualizer, in Lineage Analyzer, etc.</li> <li>GENERALIZED WEB LINKS AND BOOKMARKES: to any objects in a Model Browser, in a Diagram Visualizer, in a Lineage Analyzer, as well to the precise context of any actions like search and reporting</li> </ul> </li> </ul> <h4>v7.0.2 GA (1/31/2012)</h4> General Availability for complete Metadata Management <ul> <li>UPDATED: Metadata Management (MM) for large scale multi model ETL/DI metadata</li> <li>UPDATED: Metadata Version &amp; Configuration Management (MV) for large scale multi model ETL/DI metadata</li> </ul> <h4>v7.0.1 LA (10/6/2011)</h4> Limited Availability and Limited Functionality for data modeling tool management <ul> <li>UPDATED: User Experience</li> <li>UPDATED: Performance, Scalability, and Concurrency Control</li> <li>UPDATED: Packaging, Installation, and Administration</li> </ul> <h4>v6.2 (10/15/2010)</h4> <ul> <li>NEW: Metadata Authoring (MA)'s Business Glossary Editor for Data Governance</li> </ul> <h4>v6.0.6 (12/04/2009)</h4> <ul> <li>UPDATE: Major improvements and bug fixes on MIMB for metadata harvesting especially from all BI tools, and in particular Microsoft SSAS/SSRS. See MIMB ReadMe for details</li> <li>UPDATE: Significant performance improvements in display of lineage of large configurations</li> <li>UPDATE: Change in display of diagrams for larger models to show smaller subject areas by default, improving performance</li> <li>UPDATE: Significant performance improvements in mapper UI when mapping very large models</li> <li>UPDATE: Added ability to view and sort by all columns defined for a given profile in the business UI</li> </ul> <h4>v6.0.5 (MIMB GA, MIMM GA) (09/28/2009)</h4> <ul> <li>UPDATE: Minor improvements and bug fixes</li> <li>UPDATE: Administration->Database tab for database performance management</li> <li>UPDATE: New script supporting performance testing and tuning</li> </ul> <h4>v6.0.4 (MIMB GA, MIMM beta5) (06/02/2009)</h4> <ul> <li>NEW: Automatic and Scheduled Metadata Harvester, Metadata Mapper, LDAP User Integration, Role based business and technical web user interface, Role based Metadata Security Manager </li> </ul> <h4>v6.0.3 (MIMB GA, MIMM beta4) (01/28/2009)</h4> <ul> <li>NEW: Version Manager, Configuration Version Manager, Version Migrator, Business User Interface, Model based Metadata Reporter, Metadata Profiling</li> </ul> <h4>v6.0.2 (MIMB GA, MIMM beta3) (10/31/2008)</h4> <ul> <li>NEW: Graphical Lineage Analyzer, Business Lineage and Impact Analyzer, Enterprise wide Metadata Search Engine and Reporter, Enterprise Configuration Management, Metadata Stitcher, Metadata Configuration Manager</li> </ul> <h4>v6.0.1 (MIMB GA, MIMM beta2) (07/22/2008)</h4> <ul> <li>NEW: Model based Diagram Visualizer, Graphical Lineage Analyzer</li> </ul> <h4>v6.0.0 (MIMB GA, MIMM Beta1) (05/31/2008)</h4> <ul> <li>NEW: Model Import, Model Browser, Model Subsetter, Model Export</li> </ul> <h3>4. <a name="SystemRequirements">System requirements</a></h3> <h4>4.1 Important preliminary disclaimer notice on all requirements</h4> <p> The following requirements only define the minimal requirements to run the application server with reasonable performance based on the provided tutorial, or small business use cases. The actual requirements for enterprise wide use cases based on larger models and configurations do require significantly greater resources to obtain acceptable performance. <p> The following requirements are based on: <ul> <li>actual physical hardware (no virtual environment),</li> <li>minimal to no network overhead (assuming both the database and Application servers to be locally installed),</li> <li>vendor's default install of the current version of their software (with all current service or fix packs),</li> <li>no other applications sharing such hardware (starting from a clean machine),</li> </ul> <p> Any other hardware/software configurations are acceptable as long as they provide the same (or better) results on the provided performance benchmark. In such case, if any problem is discovered (e.g. scalability or performance issues), then the customer must be able to reproduce the issue using an environment that conforms to the minimum performance requirements as defined herein. <p> Potential known issues include (but are not limited to) the following: <ul> <li>actual usable hardware performance on virtual environments (e.g VMWare configuration and licenses)</li> <li>network overhead on remote servers (e.g. bandwidth, proxy, VPN issues, VMWare inter OS network limitations without a proper license, etc.)</li> <li>shared resources with competing applications on the same OS, or between OS on a virtual environment,</li> <li>licensing limitations (e.g. most database server licenses limit the number of usable core/CPU)</li> <li>vendor software known limitations and requirements (e.g. Oracle on VMWare vs Oracle VM)</li> </ul> <h4>4.2 Web Client requirements</h4> <p> Users only need an internet browser: <ul> <li><a href="http://www.google.com/chrome/">Google Chrome</a> v67 or newer</li> <li> <a href="http://windows.microsoft.com/en-US/internet-explorer/downloads/ie">Microsoft Internet Explorer (IE)</a> v11 or newer, and make sure it is NOT working in IE 10 compatibility mode (Settings > Compatibility View Settings: no checked boxes). </li> <li><a href="http://www.mozilla.org/firefox/">Mozilla Firefox</a> v61 or newer</li> <li><a href="http://www.apple.com/safari/">Apple Safari</a> 11.1 or newer</li> </ul> <h4>4.3 Application Server Requirements</h4> <p> Hardware Minimum Requirements (based on physical hardware performance, not a virtual environment): <ul> <li>2 GHZ or higher quad core processor</li> <li>8 GB RAM</li> <li>10 GB of disk space (all storage is primarily in the database server)</li> </ul> <p> Operating System Requirements: <ul> <li> Microsoft supported Windows 64 bit versions (including Windows 2008 Server, Windows 2012 Server, Windows 7, Windows 8.x, and Windows 10). <ul> <li>Ensure that installer is executed with full Administrator privilege</li> <li>Ensure that Microsoft .NET Framework 3.5 or higher is installed</li> <li>Ensure that all current Microsoft Windows critical updates have been applied</li> </ul> </li> <li> Most popular Linux/Unix 64 bit Operation System Versions (such as Oracle Solaris, Redhat or Mac OS). </li> </ul> <p> Application Server Engine Requirements: <ul> <li>Apache Tomcat 9 - 64 bit (bundled)</li> <li>Other Application Servers (such as IBM WebSphere or Oracle WebLogic) require manual install/setup, and are therefore not supported by this version.</li> </ul> <p> Java Runtime Environment (JRE): <ul> <li>Oracle JRE 8 - 64 bit (bundled and recommended)</li> <li>Other Java Runtime Environment (JRE) (such as IBM Java) require manual install/setup, and are therefore not supported by this version.</li> </ul> <h4>4.4 Database Server Requirements</h4> <p> Hardware Minimum Requirements (based on physical hardware performance, not a virtual environment): <ul> <li>2 GHZ or higher quad core processor</li> <li>8 GB RAM</li> <li>20 GB of disk space (or more as needed for the data)</li> </ul> </p> <p> For small deployments (or quick proof of concepts), the MIMM software package bundles PostgreSQL (for Windows only) as the MIMM Database Server (which can run on the same machine as the MIMM Application Server) See <a href="#ServerInstallation">Application Server Installation and Configuration</a> setup for details. </p> <p> The MIMM Database Server can reuse your existing Oracle, SQL Server, or PostgreSQL server: <ul> <li> <b>Oracle 10g R2 to 12c - 64 bit</b> (recommended for large enterprise, default supported version) <ul> <li>The character set of the database must be AL32UTF8 (UTF8).</li> <li> In order to find out what exact Oracle edition/version is actually installed: <code> <br />sqlplus.exe SYS@&lt;DB-NAME&gt; as SYSDBA <br />&nbsp;&nbsp;&nbsp;select banner from v$version where BANNER like '%Edition%'; </code> </li> <li> In order to find out how much memory is actually available to the Oracle database, it is important to first understand <a href="https://docs.oracle.com/cd/B19306_01/server.102/b14211/memory.htm">how Oracle's memory is configuration and used</a>: <ul> <li> The actual available <a href="http://www.orafaq.com/wiki/SGA">System Global Area (SGA)</a> memory can be found using: <code> <br />sqlplus.exe SYS@&lt;DB-NAME&gt; as SYSDBA <br />&nbsp;&nbsp;&nbsp;show sga; <br />&nbsp;&nbsp;&nbsp;select * from v$sga; <br />&nbsp;&nbsp;&nbsp;select * from v$sgainfo; </code> </li> <li> The actual available <a href="http://www.orafaq.com/wiki/PGA">Program Global Area (PGA)</a> memory can be found using: <code> <br />sqlplus.exe SYS@&lt;DB-NAME&gt; as SYSDBA <br />&nbsp;&nbsp;&nbsp;select * from v$pgastat; </code> </li> </ul> </li> <li> In order to find out how much processing CPU/Cores is actually available to the Oracle database, query the table <a href="https://docs.oracle.com/cd/B28359_01/server.111/b28320/dynviews_2085.htm">v$parameter</a> for the value of <a href="https://docs.oracle.com/cd/B28359_01/server.111/b28320/initparams038.htm">cpu_count</a>, or query the table <a href="https://docs.oracle.com/cd/B19306_01/server.102/b14237/dynviews_1144.htm#REFRN30116">v$license</a> as follows: <code> <br />sqlplus.exe SYS@&lt;DB-NAME&gt; as SYSDBA <br />&nbsp;&nbsp;&nbsp;select * from v$license; </code> </li> </ul> </li> <li> <b>Microsoft SQL Server 2008 R2 to 2017 - 64 bit</b> <ul> <li>The database must be configured to interpret SQL in a case insensitive manner. The case insensitive collation must be Latin1_General_CI_AS.</li> <li> Make sure you apply the current Microsoft patches. </li> </ul> </li> <li> <b>PostgreSQL 10.0 (or newer) - 64 bit</b> <ul> <li>libxml is needed, you might need to rebuild PostgreSQL with it.</li> </ul> </li> </ul> </p> <p> Database Administrator privileges are required to install/setup/uninstall the database. </p> <p> In general, one must ALWAYS install the latest service packs for a given database version BEFORE creating the MIMM database. E.g., for Oracle 11.2 one is required to apply the patches to upgrade to 11.2.0.3, or whatever is the latest patch level at the time. In addition, Oracle 11.2.0.4 must have patch 17501296 applied. </p> <p> Virtual Memory: For a Windows based database server, be sure to either: <ul> <li>set the page file size to be managed automatically by OS</li> <li>or it should be at least 3 times the memory or RAM size for the machine.</li> </ul> Thus, you must have more than that much free disk space (at least 3 time the amount of memory or RAM) on the drive where the page file is defined to reside. <h3>5. <a name="DatabaseServerSetup">Metadata Management (MIMM) Database Server Setup</a></h3> <p>The MIMM Application Server requires the connection to an existing Database server for metadata storage (metadata repository) <p> However, a quick install for tests or QA purpose can be achieved by using the bundle PostgreSQL database. <br />See the section <a href="#ApplicationServerSetup">Metadata Management (MIMM) Application Server Setup</a> for more details. <p> The following database setup scripts and instructions assume the following by default: <code> <br />&nbsp;&nbsp;&nbsp;Database Name: MM <br />&nbsp;&nbsp;&nbsp;Database User: MM <br />&nbsp;&nbsp;&nbsp;Database Password: = MM123! </code> The database name and user name can be changed, and the password should of course be different. <p> After the product is fully installed and web connectivity has been made, one may connect to a different database by way of the web based user interface at Tools -> Administration -> Database. <h4>5.1 <a name="DatabaseOnOracle">Database on Oracle</a></h4> <p> Create a user MM and a database MM with the following privileges: <code> <br />sqlplus.exe SYS@&lt;DB-NAME&gt; as SYSDBA <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;-- Delete previous user and database if needed <br />&nbsp;&nbsp;&nbsp;-- DROP USER MM CASCADE; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;CREATE USER MM IDENTIFIED BY MM123!; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;GRANT CONNECT TO MM; <br />&nbsp;&nbsp;&nbsp;GRANT CTXAPP TO MM; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;GRANT CREATE TABLE TO MM; <br />&nbsp;&nbsp;&nbsp;GRANT CREATE VIEW TO MM; <br />&nbsp;&nbsp;&nbsp;GRANT CREATE SEQUENCE TO MM; <br />&nbsp;&nbsp;&nbsp;GRANT CREATE TRIGGER TO MM; <br />&nbsp;&nbsp;&nbsp;GRANT CREATE PROCEDURE TO MM; <br />&nbsp;&nbsp;&nbsp;GRANT CREATE TYPE TO MM; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;GRANT EXECUTE ON DBMS_LOB TO MM; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;-- If you get the error "Database exception occurred: ORA-01950: no privileges on tablespace 'USERS'" <br />&nbsp;&nbsp;&nbsp;-- ALTER USER MM QUOTA UNLIMITED ON USERS; </code> <h4>5.2 <a name="DatabaseOnMicrosoftSQLServer">Database on Microsoft SQL Server</a></h4> <h5>5.2.1 Database Requirement 1 - Mixed-Authentication Mode</h5> <p>The Mixed-Authentication Mode is usually set during the SQL Server installation process. <p> The Mixed-Authentication Mode can be verified or changed by using the SQL Server Management Studio: first sign in, then right click on the root of the tree (instance of SQL Server Express), go to Security, and finally select "SQL Server and Windows Authentication mode" <h5>5.2.2 Database Requirement 2 - TCP/IP Protocol Enabled</h5> <p> The TCP/IP Protocol must be enabled in the SQL Server Configuration Manager for both the named instance and the client protocols (Make sure you restart the service after changing). <h5>5.2.3 Database Preparation</h5> <p> Login to SQL server as a user with server admin role and execute the following commands to create a database "MM" and a user "MM" with password "MM123!" (or another one): <code> <br />&nbsp;&nbsp;&nbsp;EXEC sp_configure 'clr enabled', 1 <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;RECONFIGURE <br />&nbsp;&nbsp;&nbsp;Go <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;CREATE LOGIN MM WITH PASSWORD = 'MM123!'; <br />&nbsp;&nbsp;&nbsp;CREATE DATABASE MM; <br />&nbsp;&nbsp;&nbsp;ALTER DATABASE MM SET SINGLE_USER WITH ROLLBACK IMMEDIATE; <br />&nbsp;&nbsp;&nbsp;ALTER DATABASE MM SET READ_COMMITTED_SNAPSHOT ON; <br />&nbsp;&nbsp;&nbsp;ALTER DATABASE MM SET MULTI_USER WITH ROLLBACK IMMEDIATE; <br />&nbsp;&nbsp;&nbsp;ALTER AUTHORIZATION ON DATABASE::MM to MM; </code> <h5>5.2.4 Database Connection</h5> <p> Advanced SQL Server Administrators may define ("hard-code") a set of TCP/IP ports for SQL Server to run over the network. However, Microsoft now recommends to run the "SQL Server Browser" service which can be done either in the Services panel or the SQL Server Configuration Manager. For more information, read: <a href="http://blogs.msdn.com/b/sqlexpress/archive/2005/05/05/415084.aspx">How to: Configure Express to accept remote connections</a> <p> The connection string syntax is: <code> <br />&nbsp;&nbsp;&nbsp;jdbc:sqlserver://&lt;dbServer&gt;:&lt;dbPortNumber&gt;;databasename=&lt;dbName&gt; </code> <p> To connect to a named SQL server instance other than the default: <ul> <li> If the SQL Server browser service is running: <ul> <li> If the named instance is configured to listen on dynamic ports: <br />In the installer, specify only the instance name (in the format HOSTNAME\INSTANCENAME) and no port (the port field should be left empty), such as: <code> <br />&nbsp;&nbsp;&nbsp;jdbc:sqlserver://localhost\sqlexpress;databaseName=MM; </code> </li> <li> If the named instance is configured to listen on static IP ports: <br />The SQL Server instance must be configured to run on a static TCP/IP port and that port must be specified in the installer, such as: <code> <br />&nbsp;&nbsp;&nbsp;jdbc:sqlserver://localhost\sqlexpress:1433;databaseName=MM; </code> </li> </ul> </li> <li> If the SQL Server browser service is not running: <br />In the installer, specify only the instance port, such as: <code> <br />&nbsp;&nbsp;&nbsp;jdbc:sqlserver://localhost:1433;databaseName=MM; </code> </li> </ul> <p> Note 1: The default database instance name for SQL Server Express is "<b>sqlexpress</b>, and "<b>sqlserver</b>" for any other SQL Server edition. <br />Note 2: The default SQL Server TCP/IP port number is <b>1433</b>. <h4>5.3 <a name="DatabaseOnPostgreSQL">Database on PostgreSQL</a></h4> <p> Login to an existing database as a database superuser or a user who has CREATEROLE and CREATEDB privileges <code> <br />psql.exe -h &lt;HOST-NAME&gt; -W -U &lt;USER_NAME&gt; -p &lt;PORT&gt; -d &lt;DATABASE_NAME&gt; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;-- Delete previous user if needed <br />&nbsp;&nbsp;&nbsp;-- DROP USER "MM"; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;-- If the user cannot be dropped due to any ownership issues, you'll need to reassign those objects to another user <br />&nbsp;&nbsp;&nbsp;-- REASSIGN OWNED BY "MM" TO &lt;OTHER-USER-NAME&gt;; <br />&nbsp;&nbsp;&nbsp;-- Or drop those objects <br />&nbsp;&nbsp;&nbsp;-- DROP OWNED BY "MM" <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;-- Create a user MM with LOGIN privilege <br />&nbsp;&nbsp;&nbsp;CREATE USER "MM" LOGIN PASSWORD 'MM123!'; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;-- Create a database MM with UTF8 encoding. You may use a different tablespace <br />&nbsp;&nbsp;&nbsp;CREATE DATABASE "MM" WITH OWNER "MM" ENCODING 'UTF8' TABLESPACE pg_default; <br />&nbsp; <br />&nbsp;&nbsp;&nbsp;-- Connect to the database and add an extension <br />&nbsp;&nbsp;&nbsp;\c "MM"; <br />&nbsp;&nbsp;&nbsp;CREATE EXTENSION intarray; </code> <h3>6. <a name="ApplicationServerSetup">Metadata Management (MIMM) Application Server Setup</a></h3> <h4>6.1 <a name="ServerInstallation">Server Installation and Configuration</a></h4> <p> The MIMM Application Server is installed as follows: <ul> <li> On <b>Windows</b> operating systems, use <code>unzip</code> to extract the software package (.zip) in the directory of your choice. You should avoid using the "Program Files" directories of Windows 7, 8.x and 10 as they have are now controlled by Windows with special access rights. Depending, on your software installation directory, you may need "Administrator" privileges. </li> <li> On <b>Linux</b> operating systems, use <code>tar -xjvf</code> to extract the software package (.tbz2) in the directory of your choice. Depending, on your software installation directory, you may need "root" privileges. </li> </ul> </p> <p> If your are using an existing database and do not wish to customize the application server (e.g. memory allocation, Windows services), then you can skip this step and go directly to the section on <a href="#ServerExecution">Application Server Execution and Initialization</a> </p> <p> Otherwise, go to the software home directory and "run As Administrator" the <code>Setup</code> utility (.bat on Windows or .sh on Linux). This setup utility will allow you to setup the configuration parameters defined below through a user friendly application. After any change on any panel (tab) below, remember to press the <b>Configure</b> button in order to perform the configuration changes. A dialog box will be issued to confirm success or failure (with error messages). Alternatively, this setup utility also works at the Windows command line or Linux shell, use the <code>-help</code> the options. </p> <ul> <li> <b>Database Server</b> tab: <br />This is to be used only if you wish to use the bundled PostgreSQL database. <ul> <li> <b>Enable Windows Service</b> <br /> This will create the 'MM Database Server' Windows Service, set it for automatic start, and actually start it. Note that if no database already exists in 'MM_HOME\postgresql\data\', then a new database will be created. <br /> Unchecking that box will delete the 'MM Database Server' Windows Service, which is a good idea before uninstalling the MIMM software. Note that your existing database in 'MM_HOME\postgresql\data\' will not be deleted as side effect. </li> <li> <b>Port Number</b> <br />This is set to 5432 which is the default of PostgreSQL, but can be changed to avoid conflicts with other servers. </li> </ul> </li> <li> <b>Application Server</b> tab: <ul> <li> <b>Enable Windows Service</b> <br />This will create the "MIMM Application Server" Windows Service, set it for automatic start, and actually start it. Unchecking that box will delete the "MIMM Application Server" Windows Service, which is a good idea before uninstalling the MIMM software. </li> <li> <b>Metadata Harvesting Server Only</b> <br /> This allows to setup this application server as a metadata harvesting server only, rather than a full metadata management server. This is very useful in architecture deployments where the metadata management server is: <ul> <li>deployed remotely on the cloud but needs to access metadata harvesting servers (agents) locally on premise, or</li> <li>deployed on Linux but needs to access metadata harvesting servers (agents) on a Windows machine where DM/DI/BI client tools are Windows only (e.g. COM based SDK).</li> </ul> </li> <li> <b>Metadata Harvesting Browse Path</b> <br /> This controls the access to the file system for metadata harvesting. The default value is set to '*' which means any Windows drive (C: and any mounted remote drive R:) or any directory from root on Linux. It is strongly recommended to limit the access to a common shared data location, and avoid system area. </li> <li> <b>Data Directory</b> <br /> This is the location of all data files, including log files as well as the metadata harvesting caching. The data directory is located by default in the 'data' subdirectory of the application server home directory. It is recommended to separate the program data from the program files, this allows you to provide a new location for the data in a separate area (with regular backups if possible). Note that changing to a new location will not move the existing data from the previous location. Either the new location already had the data (from a previous install), or new data will be created. </li> <li> <b>Max Memory</b> <br />This defines the maximum memory used by Java (JRE) on the MIMM Application Server (Apache Tomcat). This is unrelated to the maximum memory used by java on bridges for Metadata Harvesting which is separately set by default with the M_JAVA_OPTIONS variable in %MIMM_HOME%\conf\conf.properties, and can be overridden within the Miscellaneous parameter of memory intensive import bridges (e.g. JDBC). </li> <li> <b>Port Number</b> <br />This sets a custom start port number by default to avoid conflicts with other web application servers. Note that the MIMM Application Server uses 2 consecutive ports. However, this can be set back to 80 to avoid having to specify any port number in the URL. </li> <li> <b>SSL</b> <br /> This enables Secure Socket Layer (SSL) communication for web access (HTTPS). In order to support HTTPS, the MIMM Tomcat service must be configured to work with HTTPS for encryption of passwords and other content exchanged between the web client and the MIMM Application Server. In this case, you will need a certificate for the HTTPS protocol to work. Note: the MIMM software does not perform any error handling for validating a certificate associated with the MIMM Application Server, and most web browsers will report an error if the certificate is not provided by a valid certificate authority. Thus, your certificate should be a trusted certificate provided to you by a valid Certificate Authority. <ul> <li> <b>Certificate file</b> <br /> Mandatory - Can be a .pem (privacy enhanced electronic mail), .pfx (Windows personal information exchange) or a .jks (Java keystore) <li> <b>Root Certificate file</b> <br /> Optional (only required if the above certificate file was generated by an external company as a certificate authority) </li> <li> <b>Key file</b> <br /> Optional (often it is the case that the certificate file also contains the key) </li> <li> <b>SSL Key Password</b> <br /> Optional (required if the key is password protected) </li> </ul> </li> </ul> </li> </ul> <h4>6.2 <a name="ServerUpgrade">Application Server Upgrade</a></h4> <h5>6.2.1 Understanding the Data Locations</h5> Most application data is obviously located and your database server, you are responsible for regular backup of such database. Upgrading your application will also upgrade the associated database content (database schema, stored procedures, indexes and of course data). Therefore make sure you always backup your database before any upgrade. <p> Furthermore, the upgrade process may take several hours (on large repositories) and also need extra space for temp data during the migration. Therefore make sure the database has at least 20% free space. <p> Finally, it is also important to understand that the software installation directory (known as <code>%MIMM_HOME%</code> in this document) also contains some critical application data and application setup customizations that have to be taken into account in your backup or upgrade process, including: <ul> <li> <code>%MIMM_HOME%\postgresql\data</code> <br />which contains the actual PostgreSQL database data when configured with the Setup utility (in the "Database Server" tab). </li> <li> <code>%MIMM_HOME%\data</code> <br />which contains other application data such has the metadata harvesting cache (critical for incremental harvesting, and metadata export), the application server cache (Tomcat), the log files (metadata harvesting with MIMB and Tomcat), and other temp files. Remember that the actual location of this MIMM Application Server data directory can be configured with the Setup utility (in the "Application Server" tab). <li> <code>%MIMM_HOME%\conf</code> <br />with the <code>conf.properties</code> file containing most customizations defined with the Setup utility (in the "Application Server" tab), and the <code>\resources</code> directory containing any <a href="#UserInterfaceCustomization">User Interface Customizations</a>. </li> <li> <code>%MIMM_HOME%\tomcat\conf</code> <br />with the <code>tomcat.properties</code> file containing the tomcat port and memory customizations defined the Setup utility in the "Application Server" tab, and the <code>keystore</code> file containing the tomcat SSL certificates defined with the Setup utility (in the "Application Server" tab). </li> <li> <code>%MIMM_HOME%\jre\lib\security</code> <br />which also contains some SSL customizations defined with the Setup utility (in the "Application Server" tab). It is recommended to not reuse such directory, but rather reinstall the SSL keys with the Setup utility. </li> </ul> <h5>6.2.2 Upgrade Process</h5> We recommend the following upgrade process: <ul> <li> Stop the MIMM Application Server (possibly using the Windows services). <br />If you are using the bundled PostgreSQL database, then you must also stop the MIMM Database Server (using the Windows services). </li> <li> Backup your previous installation by renaming the <code>%MIMM_HOME%</code> directory as <code>%MIMM_HOME%.old</code> <br />and then install the new software package at the exact same previous location: <code>%MIMM_HOME%</code> </li> <li> Restore your data and customization/setup by copying the appropriate files and directories (as previously explained) from <code>%MIMM_HOME%.old</code> to <code>%MIMM_HOME%</code>, including at least <code>\data</code> and <code>\conf\conf.properties</code> but possibly more as used and customized such as <code>\postgresql\data</code>, <code>\conf\resources</code>, or <code>\tomcat\conf</code>. </li> <li> If you are using the bundled PostgreSQL database, then you must first Restart the MIMM Database Server (using the Windows services). <br />Finally, restart the MIMM Application Server (possibly using the Windows services) which may prompt you for a database upgrade of the MIMM tables. </li> </ul> <p> Finally, remember that any upgrade may also bring many new and improved import bridges that may harvest extra metadata. Therefore, any upgrade must be also followed by a re-harvest (import) of Models, and re-build of Configurations to take advantage of the new capabilities. <h5>6.2.3 Version Specific Upgrade Issues and Recommendations</h5> Upgrading to a new version may have version specific issues or recommendations that are listed at the bottom of the release notes: see <a href="#Changes">Release Changes</a> for more details. <h4>6.3 <a name="ServerExecution">Application Server Execution and Initialization</a></h4> <p> The easiest way to start the MIMM Application Server is to go to the software home directory and use the <code>RestartApplicationServer</code> utility (.bat on Windows or .sh on Linux). </p> <ul> <li> On <b>Windows</b> operating systems, you can alternatively use the Windows Services to control the MIMM Application Server by using the <code>RestartApplicationService.bat</code> utility instead. This utility will create the Windows Service for the MIMM Application Server, if it was not already created by previous execution of this utility or the <code>Setup.bat</code> utility. At this point, you can simply use the Windows Services to start, stop or restart the MIMM Application Server automatically. <br /> When running the MIMM Application Server as a Windows Service, it is important to configure the user running such service in order to have full access rights to the needed files and applications. For example, the MIMB bridges involved in the metadata harvesting may need to invoke the SDK of third party software such as the COM based API of CA ERwin, or SAP BusinessObjects Universe Designer. <br />In order to set such access rights, go to the services manager of Windows, right-click on the MIMM Application Server service. Then, go to the "Log On" tab to define an account by name under which the service will run. </li> <li> On <b>Linux</b> operating systems, administrators can use the system daemon directories (e.g. <code>/etc/init.d/</code> or <code>/etc/systemd/</code>) to control the MIMM Application Server (either using the <code>RestartApplicationServer.sh</code> utility or directly controlling the tomcat server in the home directory). </li> </ul> <p> The final initialization steps of the setup are performed over the web browser as follows: </p> <ol> <li> <b>Connection</b> <br />Connecting to the server on Windows can be simply achieved by opening the <code>Metadata Management</code> link in the home directory. In all cases, you can connect to the server using your internet browser to open by default: <a href="http://localhost:19980/MM">http://localhost:19980/MM</a>. Note that the default port of this URL number may have been changed by the <code>Setup</code> utility in the section <a href="#ServerInstallation">Server Installation and Configuration</a>.. </li> <li> <b>Database</b> <br />Define the connection to the previously created database (in the above steps), by providing the database type, user, password, and URL (JDBC connection). If you are using the PostgreSQL database bundled with the software package for Windows, then all these parameters should be already preset. Press <code>Test Connection</code> button to verify proper database connectivity. Finally, when the pressing the <code>Save</code> button, the MIMM Application Server will create all the necessary tables in the database. </li> <li> <b>License</b> <br />Click on the <code>Download License Information</code> link to obtain the obtained your <code>HostInfo.xml</code> file that should be sent with your license request. Warning: Make sure your are NOT connected to any VPN during that step, then your license will work independently of your VPN connection. After you have received your <code>MM.lic</code> license file, browse for it and click on the <code>Save License button</code>. </li> <li> <b>Login</b> <br />Login as "Administrator" with password "Administrator". Note that you should change that password later in the application by going to: <code>Tools -> Administration -> Users</code>) </li> </ol> <h4>6.4 <a name="Authentication">Custom integration with authentication environments</a></h4> MIMM is able to support three authentication methods: <ol> <li>Native Authentication, where the password is managed by the software and stored within the database.</li> <li> LDAP Authentication, where the software does not manage or store the LDAP passwords at all. Instead, it is simply passed it through to LDAP in order to authenticate. </li> <li>External Authentication such as Single Sign On (SSO), where the software does not perform any authentication, and leaves that responsibility to a local single sign on service managed by the customer.</li> </ol> <p> In Tools->Administration->Users one may specify either: <ol> <li>Mixed Native and LDAP authentication where users may be authenticated either as native users or LDAP users</li> <li>External authentication where the system does not perform any authentication, leaving it up to a local Single Sign On environment.</li> </ol> <p> <h5>6.4.1 Native Authentication Configuration Issues</h5> There are no specific configuration steps for Native Authentication. <h5>6.4.2 LDAP Authentication Configuration Issues</h5> There are no special server configuration issues for LDAP Authentication. LDAP connectivity configuration is documented in the online help. <h5>6.4.3 Windows Authentication Issues</h5> It is also possible to enable the Application Server to obtains authentication for users from Windows authentication via the browser (client). This way, users will automatically be authenticated if they are running from a Windows session. <p /> To do so, one must install a third party product named Waffle (Windows Authentication Functional Framework) as an addon (see <a href="http://dblock.github.io/waffle/README.html">here</a>): <ol> <li>Please ensure that all LDAP settings are correct and users are able to log into the product via LDAP authentication. LDAP connectivity configuration is documented in the online help.</li> <li>Unzip the Waffle zip.</li> <li>Copy all the jar files from it to <code>%MIMM_HOME%\tomcat\lib</code></li> <li>Open <code>%MIMM_HOME%\tomcat\conf\web.xml</code>. Search for "Windows authentication support". Uncomment the block following that.</li> <li>Restart MIMM.</li> <li>You should have windows authentication enabled now. Any valid windows user will be logged in as guest by default as long as licensing allows it. If you need to get an administrator interface, you can access: http://host:port/Admin </li> <li>Provide connection information for the database you created above.</li> </ol> <p /> <b>Note:</b> Waffle is designed around Windows libraries and thus it is recommended that you use a Windows OS based machine as the Application Server. While it is possible to use Waffle on a Linux based machine, it will require a great deal of manual setup and compilation. Please follow the Waffle documentation for such an implementation (see <a href="http://dblock.github.io/waffle/README.html">here</a>). <p /> <b>Note:</b> When using Waffle on a Windows based Application Server (as is recommended) you must run as run the MIMM software as a Windows service (not as an Application) in order for Waffle to work properly. <p /> <b>Note:</b> Automatic Windows authentication will not allow one to use the browser refresh (f5) with IE 8.x when used as the client browser. Refresh will force a re-authentication on IE 8.x browsers and will not be automatically authenticated. If this occurs, the user must close all instances of the browser and start again. To avoid this issue, one must use IE 9.x or later or another approved browser (see <a href="#SystemRequirements">System requirements</a>) In addition, for Internet Explorer and Firefox, you must configure the browser at each client to support automatic Windows authentication. Please refer to the Waffle web site <a href="http://waffle.codeplex.com/wikipage?title=Troubleshooting%20Negotiate&referringTitle=Home">here</a>. <h4>6.5 <a name="SSL">Custom integration for Secure Socket Layer (SSL) communication</a></h4> <p> <b>Important Disclaimer</b>: SSL is primarily used for HTTPS secure communications from the web browser clients to the MIMM Server itself. Such common HTTPS setup can be fully achieved with the <code>Setup</code> utility as explained in <a href="#ServerInstallation">Server Installation and Configuration</a>. The following steps are provided for illustration purpose only (manual steps), describing what the <code>Setup</code> utility already performs automatically. THEREFORE, YOU DO NOT HAVE TO PERFORM THESE STEPS BELOW. </p> <p> If you want to manually install a your own certificate, you must: <ol> <li>Change the referenced (in server.xml) connector entry parameters (keystoreFile and keystorePass) to point to the correct keystore file and password.</li> <li> Import that certificate into the JRE that is being used by this tomcat. The default JRE is located under: <code> <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%/jre. </code> </li> <li> Use the following commands: <code> <br />&nbsp;&nbsp;&nbsp;cd %MIMM_HOME%/jre/lib/security <br />&nbsp;&nbsp;&nbsp;move jssecacers jssecacers.old <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%/jre/bin/keytool -importkeystore -srckeystore {your_keystore} -keystore jssecacerts <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%/RestartServerService.bat or RestartServerApplication.bat </code> </li> </ol> <p> After the configuration, use the default URL to Access MIMM: <a href="https://localhost:19980/MM">https://localhost:19980/MM</a> <p> Or use the ports specified in the server.xml file. For example: <code> <br />&nbsp;&nbsp;&nbsp;&lt;Connector port="19980" maxThreads="200" <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scheme="https" secure="true" SSLEnabled="true" <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;keystoreFile="conf\keystore" keystorePass="changeit" <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clientAuth="false" sslProtocol="TLS" /&gt; </code> <h5>6.5.1 Configuring MIMM to securely connect via HTTPS to another MIMM server for Metadata Harvesting</h5> <p> <b>Important Disclaimer</b>: the following steps are needed ONLY IF you use a self signed certificate for SSL (WHICH IS NOT RECOMENDED), AND ONLY in the case of configuring MIMM to securely connect via HTTPS to another MIMM server for Metadata Harvesting. Only in such exceptional use case, then the following additional steps have to be performed </p> <p> In order to support HTTPS from a MIMM Server acting as the "Metadata Manager" to a MIMM Server acting as "Metadata Harvesting" Agent, the Administrator needs to import the trusted certificate that the MIMM "Harvesting Agent" Server is using into the JRE that the MIMM "Metadata Manager" server is using. The following page describes the process: <a href="http://docs.oracle.com/javase/tutorial/security/toolsign/rstep2.html">http://docs.oracle.com/javase/tutorial/security/toolsign/rstep2.html</a>. <p> The command looks like the following: <br /> <code> cd %MIMM_HOME%\jre\lib\security <br />..\..\bin\keytool.exe -import -alias john -file YourOwnCertificate.cer -keystore jssecacerts </code> <h5>6.5.2 Configuring MIMM to securely connect via LDAPS to the Enterprise Directory</h5> In LDAP Authentication, the user password is not managed by the software and is simply passed through to the LDAP system. <p> Note: this password is not encrypted when communicated between the client and the server. Thus, in order to ensure encryption you may wish to specify HTTPS protocol communication, as above. <p> Note: this password is also not encrypted when communicated between the server and LDAP. Thus, in order to ensure encryption you may wish to also specify LDAPS protocol communication and thus use SSL to encrypt. <p> In order to support LDAPS, the MIMM Tomcat service does not itself need to be configured to work with LDAPS for encryption of passwords. However, to enable secure SSL communication between MIMM and LDAP servers the Administrator needs to import the trusted certificate that the LDAP server is using into the JRE that the MIMM Application server is using. The following page describes the process: <a href="http://docs.oracle.com/javase/tutorial/security/toolsign/rstep2.html">http://docs.oracle.com/javase/tutorial/security/toolsign/rstep2.html</a>. <p> The command looks like the following: <br /> <code> cd %MIMM_HOME%\jre\lib\security <br />..\..\bin\keytool.exe -import -alias john -file YourOwnCertificate.cer -keystore jssecacerts </code> <p> This is an entirely different certificate from the one used by the HTTPS protocol. <h5>6.5.3 SSL Security Vulnerabilities</h5> <p> Poodle is a "Man In The Middle" (MITM) vulnerability which needs to be primarily fixed server side. An attacker can trick the server into downgrading the encryption protocol used to communicate. The servers should be configured to disallow TLS fallback, or to disable SSLv3 as a valid protocol. <p> If Tomcat has been configured with SSL support, the customer should add the following to the connector description in the %MIMM_HOME%\tomcat\conf\server.xml <br />&nbsp;&nbsp;&nbsp;sslEnabledProtocols="TLSv1.2,TLSv1.1,TLSv1" <h4>6.6 <a name="Security">Security and Vulnerability Considerations</a></h4> <p> For extra security and vulnerability reasons, the Apache Tomcat bundled within MIMM can be updated as follows: <h5>6.6.1 Tomcat Upgrade To The Current Patches</h5> <p> For security and vulnerability reasons, make sure you apply any current patches from that version of Tomcat: <ol> <li> Check the version of Apache Tomcat that was bundled within your MIMM (e.g. Tomcat 9.0.10) which is expressed in: <br>&nbsp; %MIMM_HOME%\Documentation\License\MIMM-ThirdParty-LICENSES.html and <br>&nbsp; %MIMM_HOME%\tomcat\RELEASE-NOTES </li> <li> Download the latest patch version (e.g. 9.0.10) within the same major version: <br>&nbsp; https://tomcat.apache.org/download-90.cgi </li> <li>Unzip in temporary directory</li> <li>Stop Tomcat</li> <li>Copy the lib directory from that temporary directory to the %MIMM_HOME%\tomcat\lib (overwriting files if necessary)</li> <li>Restart Tomcat</li> </ol> </p> <h5>6.6.2 Tomcat Check For Allowed Referrer</h5> <p> For additional protection, we recommend enabing Tomcat to check for allowed referrer: <ol> <li>Edit %MIMM_HOME%\tomcat\conf\web.xml <ol> <li>Uncomment the two filter sections in the 'Checks referer is allowed' section. The variable ${server.fqdn} will be substituted with the value of M_SERVER_FQDN in tomcat.properties</li> <li>Add as many init-param sections as needed to allow reference from other URLs.</li> </ol> </li> <li> Edit %MIMM_HOME%\tomcat\conf\tomcat.properties by: <ol> <li>Changing the M_SERVER_FQDN variable from 'localhost' to '&ltmyMMServer.myDomain&gt'</li> </ol> </li> </ol> </p> <h3>7. <a name="MetadataHarvestingSetup">Model Bridge (MIMB) Metadata Harvesting Setup</a></h3> <p> The Metadata Integration or Metadata Harvesting from third party databases, data modeling, data integration or business intelligence tools is performed by the integrated Meta Integration&reg; Model Bridge (MIMB) software. By default, the installer software deploys and configures both MIMM and MIMB on the same machine, where the MIMM Application Server accesses the MIMB Web Services locally. MIMB can also be installed and configured as a remote MIMB Agent on another machine. This is very useful in architecture deployments where the metadata management server is: <ul> <li>deployed remotely on the cloud but needs to access metadata harvesting servers (agents) locally on premise, or</li> <li>deployed on Linux but needs to access metadata harvesting servers (agents) on a Windows machine where DM/DI/BI client tools are Windows only (e.g. COM based SDK).</li> </ul> <p> Essential customizations (e.g. directories, memory) of the MIMB Application Server can be performed in the following configuration file: <code> <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%\conf\conf.properties </code> <p> Recommended customizations include: <ul> <li> M_BROWSE_PATH to browse local and mapped network drive. <p>All metadata harvesting file and directory parameter references are relative to the server. The reason is that the server must have access to these resources anytime another event (e.g., scheduled harvest) is to occur. When harvesting a model, then, the UI presents a set of paths that may be browsed in order to select these files and directories. Setting the M_BROWSE_PATH parameter allows one to define which drives and network paths will be available in the UI. One may update the M_BROWSE_PATH using the UI (on the application server) presented by the setup.bat (or setup.sh on Linux) command (see also <a href="#ServerExecution">Application Server Execution and Initialization</a>), or by editing the %MIMM_HOME%\conf\conf.properties file directly. <p>On installation, the set includes all directly attached drives., which is specified by an asterisk "*" (M_BROWSE_PATH=*). <p>Note for Windows based application servers: When running as a service, the drive names (mapped) and paths may not be the same as what a user sees when logged in, and thus the "*" value will not be see all drives you might expect when selecting drives using the UI. Instead, one must explicitly list all the drives and network paths that one wants to be available to all users in the UI. Also, it is not sufficient to simply enter the mapped drive id (e.g., "N:\"), as that drive mapping is also generally not available to services. Thus, one should specify the physical drives by letters, but must specify the network paths completely, e.g.,: <br />M_BROWSE_PATH=C:\, E:\, \\network-drive\shared\ <p>Note that the above also applies even to script backup and restore drives. </li> <li> M_DATA_DIRECTORY to relocate the data such as the log files, and metadata incremental harvesting cache as needed for very large DI or BI tools. </li> <li> M_JAVA_OPTIONS to increase the maximum memory used by java bridges during the metadata harvesting of very large DB, DI or BI tools. Note that this parameter defines the default maximum for all java bridges, however most memory intensive java bridges (e.g JDBC bridges) have the ability to define its own maximum memory in their last parameter called Miscellaneous. </li> </ul> <p> When the MIMB Application Server is used a local metadata harvesting agent connected to a MIMM Application Server on the cloud, the additional customizations are needed in the following configuration file: <code> <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%\conf\agent.properties </code> <ul> <li> M_SERVER_URL is the URL of the MIMM Application Server on the cloud such as http://server:19980/MM </li> <li> M_AGENT_NAME= is the agent name such as MyCompanyOnPemise that the above MIMM Application Server will then use to refer to this metadata harvesting server agent </li> </ul> <h3>8. <a name="UserInterfaceCustomization">User Interface Look &amp; Feel Customization</a></h3> <h4>8.1 <a name="LoginAndHeaders">Login and Headers</a></h4> <p> Customize the following files and directories using the embedded instructions (in comments): <code> <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%\conf\resources\MM.properties <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%\conf\resources\web\ </code> <h4>8.2 <a name="MetadataExplorer">Metadata Explorer for Business Users</a></h4> <p> Customize the following files using the embedded instructions (in comments): <code> <br />&nbsp;&nbsp;&nbsp;%MIMM_HOME%\conf\resources\MetadataExplorer.xml </code> <h3>9. <a name="SDK">REST API SDK</a></h3> <p> The REST API SDK documentation is available within the UI by going to the Help menu (top right corner) under Help on REST API, or go directly to: <a href="http://localhost:19980/MM/REST-API/">http://localhost:19980/MM/REST-API/</a>. <p> For illustration purpose, a glossary definition search demo is also available at <a href="http://localhost:19980/MMGlossaryClient/">http://localhost:19980/MMGlossaryClient/</a>. This demo assumes a server URL located at "http://localhost:19980", and a glossary in a configuration called "Published". REST API application developers are familiar with the above documentation, and can find the demo source code in Chrome > top right menu > More tools > Developer tools. <h3>10. <a name="DatabaseServerBackup">Metadata Management (MIMM) Database Server Backup/Restore</a></h3> <p> The MIMM Application Server requires the connection to an existing Database server for metadata storage (metadata repository). Metadata Integration recommends to backup the MIMM metadata repository regularly and especially before any upgrade. <p> This document describes the commands and instructions to perform the MIMM repository database backup and restore tasks. These database commands and instructions assume the following by default: <ul> <li>Database Name: MM</li> <li>database User: MM</li> <li>Database Password: MM123!</li> </ul> The database name and user name can be changed, and the password should of course be different. <p> We assume that objects from backup are restored into the same database later. <p> Always use the same database software version to perform the backup and restore. Backups created by more recent version of a database server may not be restored in earlier versions of the database server. <p> Note that any data that is saved after a backup is done will be lost if you restore the backup. <p> Stop the MIMM Application Server before you perform the backup and restore tasks. Restart the MIMM Application Server afterwards. <p> To ensure the optimal MIMM Application Server performance after a restore operation, run the database maintenance script in the MIMM Management UI using Tools ! Administration ! Schedules ! Run Database Maintenance to update the database statistics. <p> Backup and restore on a very large MIMM repository database may take a long time. Refer to the database backup and restore documentation to enable parallelism, incremental backup and restore for better performance. The instructions given below are for a full database backup and restore. <h4>10.1 <a name="BackupDatabaseOnOracle">Database on Oracle</a></h4> <p> We can use the Oracle Data Pump technology for Oracle 10g, 11g and 12c database. <p> First create an Oracle directory BACKUP_DIRECTORY that points to an operating system directory on the database server machine for reading and writing files. <p> Assume ORCL is the database server name or SID. <code> <br />Sqlplus.exe / as sysdba <br />&nbsp;&nbsp;&nbsp;CREATE OR REPLACE DIRECTORY BACKUP_DIRECTORY as 'E:/Databases/Backups/Oracle'; <br />&nbsp;&nbsp;&nbsp;GRANT read, write ON DIRECTORY BACKUP_DIRECTORY TO MM; </code> <p> Then use Oracle Data Pump (expdp, impdp) to backup and restore the MIMM metadata repository. <h5>Backup</h5> <p> To backup (export) the MIMM metadata repository database to a file MM.dmp and write the export log to expdpMM.log in the operating system directory E:/Databases/Backups/Oracle: <code> <br />&nbsp;&nbsp;&nbsp;expdp MM/MM123! schemas=MM directory=BACKUP_DIRECTORY dumpfile=MM.dmp logfile=expdpMM.log </code> <h5>Restore</h5> <p> Before you restore the backup to the MIMM repository database, you need to drop the schema MM to delete existing objects and data from the MIMM repository database. Restore will recreate the schema MM. <code> <br />&nbsp;&nbsp;&nbsp;Sqlplus.exe SYS@ORCL as SYSDBA <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DROP USER MM CASCADE; </code> <p> To restore (import) the MIMM metadata repository database from a file MM.dmp and write the import log to impdpMM.log in the operating system directory E:/Databases/Backups/Oracle: <code> <br />&nbsp;&nbsp;&nbsp;Impdp schemas=MM directory=BACKUP_DIRECTORY dumpfile=MM.dmp logfile=impdpMM.log </code> <p> When prompted for Username, enter / as sysdba. <p> You may refer to the Oracle Data Pump documentation for more details on the expdp and impdp commands. Backup Restore using Recovery Manager (RMAN) You may also use the Oracle Recovery Manager (RMAN) to backup and restore your MIMM repository database. It is a good practise to create a separate table space for MIMM repository database and restore only from that table space. For more information refer to the Oracle Database Backup and Recovery User s Guide. <h4>10.2 <a name="BackupDatabaseOnMicrosoftSQLServer">Database on SQLServer</a></h4> <p> To perform backup or restore log in to the SQL Server Management Studio, open a new query window and execute the backup or restore commands given below. You can also use the SQL Server Management Studio Object Explorer UI to perform the backup and restore tasks. <h5>Backup</h5> <p> To backup the MIMM repository database MM into a file E:\Databases\Backups\SQLServer\MM.bak, use the following command: <code> <br />&nbsp;&nbsp;&nbsp;BACKUP DATABASE [MM] TO DISK = N'E:\Databases\Backups\SQLServer\MM.bak' WITH NAME = N'MM-Full Database Backup' <br />&nbsp;&nbsp;&nbsp;GO </code> <h5>Restore</h5> <p> To restore the file E:\Databases\Backups\SQLServer\MM.bak into the MIMM repository database MM use the following commands. <code> <br />&nbsp;&nbsp;&nbsp;USE [master] <br />&nbsp;&nbsp;&nbsp;GO <br />&nbsp;&nbsp;&nbsp;ALTER DATABASE MM SET SINGLE_USER WITH ROLLBACK IMMEDIATE <br />&nbsp;&nbsp;&nbsp;GO <br />&nbsp;&nbsp;&nbsp;RESTORE DATABASE [MM] FROM DISK = N'E:\Databases\Backups\SQLServer\MM.bak' WITH REPLACE <br />&nbsp;&nbsp;&nbsp;GO </code> <p> You may refer to the Microsoft SQL Server backup and restore documentation for more details on the above commands. <h4>10.3 <a name="BackupDatabaseOnPostgreSQL">Database on PostgreSQL</a></h4> <h5>Backup</h5> <p> To backup the MIMM repository database MM into a file E:\Databases\Backups\PostgreSQL\MM.dmp use the following command: <code> <br />&nbsp;&nbsp;&nbsp;pg_dump -b -f E:\Databases\Backups\PostgreSQL\MM.dmp -F t -d "MM" -h localhost -w -p 5432 -U MM </code> <h5>Restore</h5> <p> To restore the file E:\Databases\Backups\PostgreSQL\MM.dmp into the MIMM repository database MM use the following command. All database objects and data are dropped before recreating them. <code> <br />&nbsp;&nbsp;&nbsp;pg_restore -c -F t -d "MM" -h localhost -w -p 5432 -U MM -n public -n repo -n system -n util -n lineage E:\Databases\Backups\PostgreSQL\MM.dmp </code> <p> You may refer to the PostgreSQL pg_dump and pg_restore documentation for more details on the above commands. </div> </div> <!--#include virtual="/Home/Copyright.html" --> <!--#include virtual="/Home/BodyTrailer.html" --> </body> </html>