1. 业务探查
1.1. 业务流程调研
- 业务流程:
- 明确具体的业务流程;
- 业务数据:
- 将数据与业务过程联系起来;
- 明确每一步业务,会对那些数据、产生哪些影响;
1.2. 业务系统调研
业务系统探查,最重要的是明确业务提供方的信息。
-
部门信息
-
名称信息
-
系统级别
-
地域信息
-
上线时间
-
系统状态
-
如当前处在试运行阶段,需要考虑系统后面会不会变动,数据结构和内容后面会不会变动。
-
如系统已不再运行,则需要考虑系统有没有接入的价值。
-
-
业务联系人
- 需要有清晰的接口人,协助梳理业务规则。
2. 数据源探查
2.1. 存储介质探查
- 数据库类型
- 是关系型数据库、还是非关系型数据库, 是 MySQL、Oracle、还是 redis、HBASE
- 文件服务器类型
- 存在FTP服务器、还是 HDFS 文件系统。
- 手工数据
2.2. 访问方式探查
- IP、端口号、账号密码、用户名、查询用户、存储路径、字符集。
3. 数据集探查
3.1. 基础信息探查
- 表标识
- 表名称
3.2. 规模信息探查
- 事实表
- 维度表
- 业务分类
3.3. 规模信息探查
- 总量
- 增量
- 大小
- 存储周期
3.4. 状态信息探查
- 状态(启用 / 停用)
- 更新频率
- 更新方式
4. 数据项探查
4.1. 基础信息探查
- 表示
- 名称
- 类型
- 长度
- 精度
4.2. 属性信息探查
- 字典项
- 标准数据元
- 增量字段
- 主键字段
- 外键字段
- 唯一主键
- 关联信息
- 比如,事实表的外键字段、关联哪个维度表的主键字段。
4.3. 问题信息探查
- 有效性
- 合规性
- 空置率
5. 数据探查步骤
- 简单看下表的元数据信息:
- 重点关注命名、备注、字段类型、最后更新时间等;
- 数据量级、数据增量;
- 简单拿几条数据出来看看:
- 需要用到的列是查看的重点;
- 同时要确认真实数据跟元数据信息是否一致,
- 不一致的要进一步求证,是自己理解错误?还是脏数据影响?还是元数据错了?
- 对关键字段需要查询下分布情况:
- 如果发现跟常识或者跟自己对业务的理解存在偏差,就需要进一步求证,看是数据问题?还是自己认知问题?还是单位或计算口径问题?
- 空值率、异常数据等在这一步也需要被发现。
- 着重看下数据的完整性:
- 比如数据内容(或列)缺失、数据条数缺失等。
- 看看有没有其它数据质量问题:
- 比如重复数据、脏数据、编码映射问题等。
- 确认好 join 字段:
- 需要使用多张表的时候,要确认好 join 字段,并确保两表之间是 1:m 的关系;
- m:n 的关系很少碰到,并且多数情况下是自己用错了。
- 大致评估出实际的开发工时:
- 需要参考的因素如下:
- 需求的复杂度;
- 数据源的理解探查难度;
- 数据源的数据质量(是否需要特别的清洗、编码映射、缺失数据补全)
- 数据存储结构转换成最终需求的复杂度(有的需要分多步落中间表完成,有的源表数据直接就是最终需要的数值)
- 需要参考的因素如下: