Meta Data Fundamentals

Meta Data Services

Meta Data Services

Meta Data Fundamentals

Microsoft® SQL Server™ 2000 Meta Data Services is a set of services that allows you to manage meta data. Using Microsoft Meta Data Services requires understanding meta data characteristics. If you are new to the concept of meta data, this overview will help you learn about the type of data that Meta Data Services manages.

Meta data describes the structure and meaning of data, as well as the structure and meaning of applications and processes. It is important to remember that meta data is abstract, has a context, and can be used for multiple purposes in a development environment.

Meta Data Is Abstract

The simple act of describing real-world phenomena generates abstract information that qualifies as meta data. For example, describing natural phenomena such as rain, wind, and sunshine requires abstractions like the concept of weather. Weather can be further abstracted by defining concepts such as temperature, precipitation, and humidity.

In data design, real-world phenomena are also described in abstract terms. People, places, things, and numbers are grouped or designated as employee, customer, or product data.

In software design, the application and database structures that represent or store data can be abstracted into meta data classification schemes that make sense to developers and designers. A table or form is derived from an object, which, in turn, can be derived from a class.

There are multiple levels of abstraction in meta data. You can describe a data instance, then describe that description, and continue to describe subsequent descriptions until you reach some practical limit. Typically, meta data descriptions used in software development extend to two or three levels of abstraction. In real terms, a data instance of "loan table" can be described as a database table name. A database table can be described as a database table object. Finally, a database table object can be described by an abstract class that formalizes the fixed set of characteristics to which all derived objects must conform.

Meta Data Has Context

The distinction between data and meta data is often called the type/instance distinction. Model designers articulate types (such as classes or relationships) and software developers articulate instances (such as a Table class or a table has columns relationship).

The distinction between instance and type is context-sensitive. What is meta data in one scenario becomes data in another scenario. For example, in a typical relational DBMS, the system catalog describes the tables and columns that contain your data. You can think of the data in the system catalog as meta data because it describes data definitions. However, with the right software tool, you can manipulate it as you would manipulate any other data. Examples of manipulating meta data include viewing data lineage or table versioning information, or identifying all tables that express financial data by searching for columns that have a currency-based data type. In this scenario, standard meta data like the system catalog becomes data that you can manipulate.

Meta Data Has Multiple Purposes

You can work with meta data type and instance information just as you would with any kind of application or data design elements. Expressing design information as meta data, especially standard meta data, opens up new possibilities for reuse, sharing, and multiple tool support.

For example, defining data objects as meta data enables you to see how they are constructed and versioned. Versioning support provides a way to view, branch, or retrieve any historical version of a particular DTS package or data warehousing definition. When you develop code based on meta data, you can define a structure once and then reuse it to create multiple instances that can be versioned for specific tools and applications. You can also create new relationships among existing meta data types to support a new application design.

See Also

Information Model Fundamentals

Meta Data Management

OIM in Meta Data Services