罗伯特·s·西纳(robert s. seiner) 2018年6月6日 相隔译
在过去的25年里,信息技术的世界已经“戏剧性地”成熟了——我的职业生涯相对短暂。从午夜时分在大学计算机实验室打卡和给露天平台的读者提供材料,到互联网、电子商务、商业智能、大数据、人工智能……人们可能会认为,他们已经见识了一切。
我们只能想象,未来的25年里,我们将面临什么。在21世纪之后,在可预见的未来,管理数据、信息和知识的需求和速度(如果还没有的话)将成为业务驱动因素。
“管理数据、信息和知识将是业务驱动因素。”
如果你还不知道的话,这个短语值得重复几次。一个公司管理数据、信息和知识的能力将决定一个公司能有多成功,或者他们是否能成功。
为了管理数据、信息和知识,公司需要知道他们拥有什么数据。公司需要准确地知道他们的数据是如何被使用的,以及如何使用这些数据来创造竞争优势。要了解这些信息,公司需要管理和使用它的元数据。
元数据是在it工具中记录的信息,它可以改进数据和数据相关过程的业务和技术理解。(1)这个定义比我们这个行业的人们过度使用的“关于数据的数据”定义要长得多。当您将这个定义分解成几个部分时,它将告诉我们什么是元数据,在哪里可以找到它,它如何有用,以及它将帮助谁。
元数据在未来几年将变得越来越重要。元数据将不再是“周三的信息处理系统之子”(2),正如数据仓库之父bill inmon在《数据管理评论》(data management review)中所言。每个公司都有元数据。这是毫无疑问的。数据库构建在元数据之上。数据模型建立在元数据之上。程序、显示、报告、查询、数据迁移……信息系统的所有组件都是使用元数据构建的。这本身就应该表明,管理元数据很重要。但现在它不是。
元数据的问题
关于元数据的问题仍然存在。元数据究竟是什么?管理元数据要花多少钱?如何证明对元数据的“投资”是合理的?谁使用元数据?如何开始管理元数据?这些都是非常重要的问题,在这些问题中,答案将成为决定公司是否继续实施元数据管理策略和实施计划的关键因素。
这些问题并不总是容易回答——特别是当人们的问题有点脱离每日构建的数据和技术架构以支持企业的情况时——即人最有可能不停地改变主意。专家们已经写了很多书来回答这些问题。这些问题不在本文中讨论之列。
作为替代,这里选择了不同的方法。本文不再关注元数据问题的“答案”,而是关注元数据可以回答的“问题”。
问题分类
元数据可以回答的“问题”可分为十类。我之所以选择这10个类别,仅仅是因为它是一个很好的整数。除了这是我以前使用过的元数据的逻辑分解之外,没有其他原因。如果这些类别不适合您的需要,根据您的需求完全可以自行组织。我选择的10个分类包括:
数据库元数据数据模型元数据数据移动元数据业务规则元数据数据管理元数据应用组件元数据数据访问/报告元数据合理化的元数据数据质量元数据应用操作元数据理解分类当你阅读“元数据可以回答的问题”列表时,问自己三个简单的问题:在你当前的环境中:我的公司能回答这些问题吗?我的公司为回答这些问题付出了什么代价?当我们不能回答这些问题时,结果是什么?我猜测,如果您在得出上述关于元数据的三个问题的答案时,您将感到元数据管理怎么这么简单的。许多问题属于多个类别。例如,在数据迁移期间,数据从源流到宿(目标)。向目标执行的操作(赋值)可能来自映射列表(或转换表),具体取决于源或多个源。当源数据丢失或源值没有指定的目标值(有时称为缺失规则)时所采取的操作可以视为数据迁移元数据或数据质量元数据。我列出了一些问题,如果有必要你可以画出它们之间的联系。这些问题不应该被认为是包罗万象的。相反,应该将元数据问题视为一个“入门工具包”,它可以帮助您的公司理解这一点:这些问题的答案很重要。这些问题的答案并不总是可以得到的。如果it部门能够访问这些信息,他们将“执行”得更好。“成本节约”和“竞争优势”与通过元数据管理数据有关。元数据可以回答的问题数据库元数据数据库元数据描述物理数据。数据库元数据通常存储在数据库目录或copybook/segment定义中,开发人员和db管理员使用数据库或文件辅助类型工具进行访问。数据是否存在于数据库(或文本/顺序文件)中?哪些数据库存在?存储数据的数据库的物理名称是什么?数据位于何处?(如平台(或dbms)、服务器等)数据库中表的名称是什么?表中什么列?主键是什么?有其他索引吗?表与其他表有什么关系?表是视图的一部分吗?数据库上一次是什么时候更新的?谁最后更新了数据?有哪些文本文件和顺序文件?我的数据所在数据集的物理名是什么?数据位于何处?(比如框架、区域、数据集名称等)有多少个数据版本?数据集是存在于磁带上还是存储器上?哪些拷贝代表文件中的数据?哪些程序使用拷贝?什么工作流驱动程序?如何处理、组合和排序数据?数据模型元数据数据模型元数据描述数据的逻辑设计和从逻辑设计到物理数据的映射。数据模型元数据还可以包括业务规则、实体关系、域值等。数据模型元数据通常在数据建模和案例工具中找到,尽管有些数据模型元数据仍然可能在图表和电子表格工具中跟踪这些信息。存在什么数据模型?哪里可以找到模型?是否存在企业数据模型?谁创建了模型,用于什么目的,项目/数据库等等?谁负责更新这些模型?定义了哪些业务实体,它们存在哪些模型?在数据库(表或系统)文件中表示的业务实体在哪里?业务实体的定义是什么?构成这些实体的属性是什么?属性的业务定义是什么?属性是否具有限制性域?各属性的允许值是多少?逻辑数据模型和物理数据模型之间的关系是什么?物理数据模型是否与逻辑数据模型同步?物理数据模型是否与物理数据库同步?实体和表、属性和列之间存在什么映射?数据迁移元数据数据迁移元数据描述数据从源到目标的移动。数据迁移元数据包括数据的选择和提取、映射、转换和数据加载的信息。数据迁移元数据可以在etl或数据迁移工具、电子表格、桌面数据库中找到,也可以在编写用于执行数据移动的代码逻辑中找到。迁移数据来自哪里?是系统或其他数据库?用于填充数据的字段是什么,是否为派生字段?数据是如何得到的?计算,条件,还是两者兼具?派生过程中,还使用了哪些数据?数据的值是否依赖于其他数据的值?依赖哪些数据,如何依赖这些数据?目标数据是否允许为null?数据丢失的话怎么办?源数据不符合质量要求时怎么办?当没有为源值分配映射的目标值时怎么办?目标数据具有什么值?这些值如何映射到以前的值?什么时候迁移数据?数据总是以这种方式“迁移”,还是有随时间变化?什么时候触发迁移?业务规则元数据业务规则元数据描述业务如何使用其数据进行操作。业务规则元数据描述定义数据使用的实体关系、基数、域规则等。业务规则元数据通常存在于数据建模或案例工具中,或者存在于工具、文字处理、电子表格或其他工具之外维护的其他形式的文档中。逻辑数据模型中数据实体之间具有怎样的关系?这些实体之间的基数是什么样的?在什么条件下,数据片段可以承载特定的值?一段数据可以承载什么价值?价值的含义是什么?如何创建、更新和删除数据?什么时候,由谁建立的规则?数据管理元数据数据管理元数据描述组织中谁对使用数据所采取的行动负责。数据管理元数据定义组织中的谁定义数据,组织中的谁创建、维护和删除数据,以及谁使用数据或直接使用工作中的数据或信息。数据管理元数据仍没有被几个公司采用(还没有!),而仅有的几个使用的公司也只使用桌面数据库和电子表格运作。如果你对数据有疑问,你会打电话给谁?谁负责定义、创建、读取、更新和删除数据?具备什么能力和职责的个人可以管理数据?谁是将数据作为工作的一部分的数据“消费者”?哪些信息可以在公司内部共享?公司外呢?谁必须批准才能在公司之外发布报告?谁负责为数据分配可接受的值?怎么让管理程序适用公司的信息政策?信息政策在哪里能找到?应用组件元数据应用组件元数据描述应用程序的所有对象,从数据文件或表到程序、脚本和功能、显示等等。应用组件元数据是组成系统的所有组件以及组件如何共享和重用的交叉引用。交叉引用工具和桌面工具通常是存储这些信息的地方。哪些应用程序组件被认为是标准的可重用对象?这个“可重用对象”是如何确定的?如何测试这些对象,以及谁维护这些对象?什么程序(及数据、显示等)是系统(或过程或功能)的一部分?哪些作业(或过程、脚本)执行程序?程序和作业使用什么数据?数据是如何使用的?如何将数据从程序传递到程序、作业到作业、系统到系统?数据依赖于什么系统?什么系统依赖于特定数据?哪些程序和作业是重用的?在哪里重用?随着时间的推移,项目和工作发生哪些变化?谁编写了程序和作业?谁负责支持和维护程序和作业?哪些程序更新数据?哪些报告显示数据?哪些页面显示数据?数据访问/报告元数据数据访问和报告元数据描述了如何访问数据,以及已经创建了哪些报表可以读取或重新创建。数据访问和报告元数据也可以描述必须采取的步骤来获得授权读取数据,如何解释数据的描述,可用工具,报告的描述,等等。数据访问和报告元数据通常在报告工具和传统类型的文档(如桌面数据库、文字处理和电子表格)中寻找。使用这些数据的报告有哪些?报告的描述什么?如何访问报告?应该采取哪些步骤来获得使用数据的授权?报表如何选择、组织/排序、分组、汇总和显示数据?报告使用了什么数据?什么报告使用我的数据?报告最后一次更新是什么时候?必须亲自制作报告,还是已现成结果?哪里可以找到结果?合理化的元数据合理化元数据描述了标准的“企业可接受”信息片段,以及这些信息片段如何在系统中表示或映射为数据。标准的信息片段可以是数据元素的选择列表,这些数据元素具有可接受的含义、历史、值和/或来自企业数据模型的标准信息片段。合理化元数据可以描述数据元素是同一信息块的程度和差异。合理化元数据通常存储智囊库或传统文档中。公司的标准(核心)要素是什么?这些元素的业务名称和定义是什么?标准元素是如何、由谁选择的?标准元素是否被验证以供重用?标准元素在哪里映射到现有数据?如何使用标准元素?数据质量元数据数据质量元数据描述数据的质量。数据质量元数据描述准确性可信级别、变更管理、数据值和定义的历史,以及随时间变化如何影响数据的理解。数据质量元数据还描述遇到“坏”数据、数据丢失或重复时需要采取的操作。使用数据质量工具、存储库和传统文档类型跟踪数据质量元数据。数据可能的值是如何随时间变化的?什么时候可接受值变了?数据的定义是如何随时间变化的?数据的定义是什么时候变了?什么数据是“坏”数据?对数据进行了哪些质量检查?什么是质量检查程序?该程序是谁写的和执行的?谁分析的结果?数据有多大的可信度?在数据被认为是“低质量”数据之前,可接受的置信水平是多少?计算操作的元数据计算操作元数据描述数据的活跃度和调度中心。计算操作元数据描述数据存储、磁带使用、作业和服务器操作、调度依赖项、异常处理、备份和恢复过程等。计算操作元数据可以通过调度系统、存储系统、操作和服务器系统等找到。计划对数据运行哪些操作/作业?有哪些类型的数据备份和恢复可用?我的数据最后一次被备份、恢复和验证是什么时候?备份和恢复数据需要哪些步骤?谁负责备份和恢复?谁拥有使用数据的安全特权?创建、读取、更新或删除?针对特定数据运行程序/报告的最佳时间是什么时候?哪些操作依赖于来自另一个进程的数据?当作业或系统失败或终止时,应采取哪些行动?当作业或系统失败时,应该调用谁?我们运行的是什么版本的软件?如果许可,我们有多少许可证,谁在使用它们?许可证何时到期?软件的下一个版本什么时候安装?新版本对软件进行了哪些更改/增强?有多少磁盘空间可用?已用了多少磁盘空间?数据以什么速度增长?谁分配存储空间,应该联系谁来回答有关磁盘存储的问题?磁带存储头是如何定义的?