Metadata discovery

In metadata, metadata discovery (also metadata harvesting) is the process of using automated tools to discover the semantics of a data element in data sets. This process usually ends with a set of mappings between the data source elements and a centralized metadata registry. Metadata discovery is also known as metadata scanning.

Data source formats for metadata discovery
Data sets may be in a variety of different forms including:
 * 1) Relational databases
 * 2) NoSQL databases
 * 3) Spreadsheets
 * 4) XML files
 * 5) Web services
 * 6) Software source code such as Fortran, Jovial, COBOL, Assembler, RPG, PL/1, EasyTrieve, Java, C# or C++ classes, and thousands of other software languages
 * 7) Unstructured text documents such as Microsoft Word or PDF files

A taxonomy of metadata matching algorithms
There are distinct categories of automated metadata discovery:

Lexical matching

 * 1) Exact match - where data element linkages are made based on the exact name of a column in a database, the name of an XML element or a label on a screen. For example, if a database column has the name "PersonBirthDate" and a data element in a metadata registry also has the name "PersonBirthDate", automated tools can infer that the column of a database has the same semantics (meaning) as the data element in the metadata registry.
 * 2) Synonym match - where the discovery tool is not just given a single name but a set of synonym.
 * 3) Pattern match - in this case the tools is given a set of lexical patterns that it can match. For example, the tools may search for "*gender*" or "*sex*"

Semantic matching
Semantic matching attempts to use semantics to associate target data with registered data elements.


 * 1) Semantic similarity - In this algorithm that relies on a database of word conceptual nearness is used. For example, the WordNet system can rank how close words are conceptually to each other. For example, the terms "Person", "Individual" and "Human" may be highly similar concepts.

Statistical matching
Statistical matching uses statistics about data sources data itself to derive similarities with registered data elements.


 * 1) Distinct value analysis - By analyzing all the distinct values in a column the similarity to a registered data element may be made. For example, if a column only has two distinct values of 'male' and 'female' this could be mapped to 'PersonGenderCode'.
 * 2) Data distribution analysis - By analyzing the distribution of values within a single column and comparing this distribution with known data elements a semantic linkage could be inferred.

Vendors
The following vendors (listed in alphabetical order) provide metadata discovery and metadata mapping software and solutions


 * Atlan (see )
 * BigHand/Esquire Innovations (see )
 * IBM
 * Imperva
 * Talend
 * InfoLibrarian Corporation (see )
 * MindHARBOR Metadata Database application (see )
 * Octopai - a Cross-Platform Metadata Discovery and Management Automation (see )
 * OvalEdge (see )
 * Revelytix (see )
 * Silver Creek Systems (see )
 * Stratio (see Data reliability is the base of successful companies)
 * Sypherlink: Harvester (see )
 * Unicorn Systems (see )

Research

 * INDUS project at the Iowa State University (see )
 * Mercury - A Distributed Metadata Management and Data Discovery System developed at the Oak Ridge National Laboratory DAAC (see )