大家好,又见面了,我是你们的朋友全栈君。
概念解释
1,大数据平台——是指服务于大数据计算或存储的平台,包括大数据的计算集群(hive、spark、flink、storm等等)和存储集群(如hadoop、hbase等等)。 2,大数据平台涉及的元数据——由大数据作业的业务逻辑直接读写处理的业务数据,都不是元数据,除此之外的数据都是元数据。例如数据表的schema信息、任务之间的血缘关系、任务的权限映射关系、数据的业务属性、数据占用的磁盘空间等等。
为什么要做元数据管理
1,管理元数据的好处——有助于用户更高效地分析数据,有助于系统和业务的优化,有助于数据的安全管控,有助于数据生命周期的管理,有助于任务问题的排查,有助于数据质量的保证。 2,怎样发挥元数据的价值——元数据信息通过服务的形式(例如REST接口)提供给上下游系统使用。
哪些数据纳入元数据管理
这个问题也就是元数据管理到底是管理什么。对大数据开发平台来说,常见的元数据包括以下6点: 1,数据表的结构schema信息 (1) SQL或者NoSQL中的表视图信息,例如MySQL中可以通过SHOW CREATE TABLE table_name来获取表结构;hive中可以用HQL的SHOW PARTITIONS table_name获取该表的分区信息 (2) 表结构的变迁记录,例如mysql中的某表增/减了一个什么字段、修改了什么字段等信息 2,数据占用的磁盘空间 (1) 记录表数据占用的空间的大小以及增长趋势 (2) 新增了几张表、删除了几张表、创建了多少个分区 3,数据的读写记录 (1) 记录修改表的是什么人,以及什么时候修改的 (2) 记录哪些数据已经长时间没有被读取或更新了 4,数据的权限归属 (1) 哪些人有权限查阅数据 (2) 哪些人有权限管理数据 5,数据的血缘关系 (1) 数据的上游和下游是哪里,也就是数据从哪来的、将会用到哪里去 (2) 收集数据的血缘关系的作用——如果某数据有问题,可检查它的上游数据以便定位问题;也有助于理清处理这些数据的任务之间是如何互相依赖的 6,数据的业务属性 (1) 数据表做什么用的 (2) 数据表中各个字段的业务含义、统计方式 (3) 具体数据的业务部门归属 (4) 每个数据表分别是由哪位开发者负责的 (5) 脚本逻辑的变迁记录、变迁原因
如何收集元数据
上述元数据信息大部分需要人工录入,但是最好是整合到业务开发流程中,让它们成为业务开发的必须环节。比如说,在修改任务脚本时或修改表格schema时强制开发者填写。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140328.html原文链接:https://javaforall.cn