快照表
快照表(Snapshot Table)是数据仓库中用来存储某一时间点的数据状态的表。这种表通常包含在特定时间点上业务实体的静态数据,它记录了业务在某一特定时刻的"快照"视图。快照表通常用于存储那些不经常变化的数据,或者即使发生变化,变化也不影响历史数据的准确性。
拉链表
用于记录数据变更历史。它记录一个事物从开始,一直到当前状态的所有变化的信息。拉链表可以避免按每一天存储所有记录造成的海量存储问题,同时也是处理缓慢变化数据的一种常见方式。 拉链表适用于存储变化频繁且数量较少的数据,例如日志记录。
快照表和拉链表的区别
拉链表的特点是只存储变化的部分,而不记录之前的数据。这种方式可以极大地减少存储空间,但是也带来了查询和更新的复杂性。
快照表适用于存储大量数据 。快照表的特点是每个版本都是完整的数据,因此可以恢复到任意一个版本
银行信贷管理系统
**项目描述:**基于客户信息系统、贷款信息系统、信用评级系统等各方面数据进行收集、整理、建立数据分析模型。建立贷款五级分类、贷款余额、还款总金额、逾期率、逾期指数等指标,以通过数据可视化工具展示出来,为业务部门进行贷款审核、贷款数据分析、还款追踪提供数据支持。
开发流程
-
数据抽取:使用DataX工具从中转系统(如合同管理系统、客户关系管理系统)中抽取数据到ODS层(贴源层),进行数据备份。
-
全量抽取:客户基本信息表、合同基本信息表
-
增量抽取:客户交易记录表、风险预警记录表
-
-
数据清洗和转换:在DWD层**(Data Warehouse Detail)**明细数据层对数据进行清洗和转换,处理脏数据、异常数据和缺失数据。
-
数据汇总:在DWS层**(Data Warehouse Summary)**汇总数据层建立客户、产品、营销、交易、合同等主题宽表,进行轻度汇总。
-
指标计算:在ADS层**(Application Data Service)**应用数据层计算风险预警、异常行为检测等指标。
数仓分层/数据流向:
-
ODS层:数据备份,不进行修改。
-
DWD层:区分事实表和维度表, 数据清洗和转换,建立客户、产品、营销、交易、合同等主题。
-
DWS层:多维度汇总,建立宽表。
-
ADS层:指标计算和报表展示。
业务系统:
-
合同管理系统
-
客户关系管理系统
-
风险管理系统
主题:
-
客户主题
-
产品主题
-
营销主题
-
交易主题
-
合同主题
负责主题: 客户主题
表结构:
-
快照表:客户信息表
- 核心字段:客户ID、姓名、地址、联系方式
-
拉链表:客户行为表
- 核心字段:客户ID、交易ID、交易时间、交易金额
数据来源:
-
核心系统表:客户基本信息表
-
信贷系统表:客户信贷记录表
需要计算的核心指标
客户风险评分
-
取数口径:客户的历史交易数据、贷款记录
-
表来源:客户信息表、客户行为表
-
字段来源:客户ID、交易金额、贷款金额、还款记录
-
计算逻辑:基于客户的历史交易金额、贷款金额、还款记录进行加权评分
-
粒度:按客户ID计算
-
指标验证逻辑:通过历史数据验证评分的准确性,检查评分与实际违约情况的一致性
客户信用等级
-
取数口径:客户的综合评分和风险评分
-
表来源:客户信息表、客户行为表
-
字段来源:客户ID、综合评分、风险评分
-
计算逻辑:根据综合评分和风险评分确定客户的信用等级
-
粒度:按客户ID计算
-
指标验证逻辑:对比信用等级与客户的实际违约记录,验证等级划分的准确性
交易异常率
-
取数口径:客户的交易记录
-
表来源:客户行为表
-
字段来源:交易ID、交易时间、交易金额
-
计算逻辑:统计一定周期内的异常交易次数占比
-
粒度:按交易ID计算
-
指标验证逻辑:对比异常交易标记与实际交易数据,验证异常率的准确性
合同履约率
-
取数口径:合同的执行情况
-
表来源:合同信息表
-
字段来源:合同ID、合同金额、实际执行金额
-
计算逻辑:统计合同执行金额占合同总金额的比率
-
粒度:按合同ID计算
-
指标验证逻辑:对比合同履行情况与实际记录,验证履约率的准确性
风险预警次数
-
取数口径:系统生成的风险预警记录
-
表来源:风险预警表
-
字段来源:预警ID、预警时间、预警类型
-
计算逻辑:统计一定周期内的风险预警次数
-
粒度:按预警ID计算
-
指标验证逻辑:对比系统预警记录与实际风险事件,验证预警次数的准确性
银行汽车贷风控系统
**项目描述:**基于客户信息系统、贷款信息系统、信用评级系统等数据,建立数据分析模型。通过数据可视化工具展示贷款五级分类、贷款余额、还款总金额、逾期率、逾期指数等指标,为贷款审核、贷款数据分析、还款追踪提供数据支持。实现从 Oracle 传统数据仓库迁移数据到 Hive 大数据数仓的全过程处理,确保数据在新平台上的一致性和完整性
开发流程:
-
数据抽取:使用Sqoop工具从传统数仓中抽取数据到ODS层(贴源层)。
-
全量抽取:贷款合同表、客户信息表
-
增量抽取:还款计划表、违约记录表
-
-
数据清洗和转换:在DWD层(明细数据层)处理格式、枚举、脏数据、异常数据,统一数据格式。
-
数据汇总:在DWS层(汇总数据层)建立贷款、违约、客户行为等宽表。
-
指标计算:在ADS层(应用数据层)计算贷款风险评级、逾期率等指标。
数仓分层/数据流向:
-
ODS层:数据备份,不进行修改。
-
DWD层:区分事实表和维度表, 数据清洗和转换,建立贷款、违约、客户行为等主题。
-
DWS层:多维度汇总,建立宽表。
-
ADS层:指标计算和报表展示。
业务系统:
-
信贷管理系统
-
风险管理系统
主题:
-
贷款主题
-
风险主题
负责主题: 贷款主题
表结构:
-
快照表:贷款信息表
- 核心字段:合同ID、贷款金额、贷款期限
-
拉链表:违约记录表
- 核心字段:合同ID、违约日期、违约金额
数据来源:
- 信贷系统表:贷款合同表、还款计划表
需要计算的核心指标:
-
逾期率
-
取数口径:贷款合同表、还款计划表中的还款情况
-
表来源:贷款信息表、违约记录表
-
字段来源:合同ID、还款日期、应还金额、实际还款金额
-
计算逻辑:按合同ID统计逾期天数,计算逾期率 = 逾期天数 / 总还款天数
-
粒度:按合同ID计算
-
指标验证逻辑:对比实际逾期记录与计算结果,验证逾期率的准确性
-
-
风险集中度
-
取数口径:贷款合同表、违约记录表中的贷款金额和违约情况
-
表来源:贷款信息表、违约记录表
-
字段来源:合同ID、贷款金额、违约金额
-
计算逻辑:统计各风险等级的贷款金额占比,计算风险集中度 = 各风险等级贷款金额 / 总贷款金额
-
粒度:按合同ID计算
-
指标验证逻辑:通过分级统计验证风险集中度计算结果的合理性
-
-
套现占比
-
取数口径:客户的交易记录和贷款记录
-
表来源:客户
-
行为表、贷款信息表
-
字段来源:客户ID、交易金额、贷款金额
-
计算逻辑:按客户ID统计疑似套现的交易金额占总交易金额的比率
-
粒度:按客户ID计算
-
指标验证逻辑:对比实际套现行为记录与计算结果,验证套现占比的准确性
-
诈骗率
-
取数口径:客户的历史违约记录和贷款记录
-
表来源:违约记录表、贷款信息表
-
字段来源:客户ID、违约金额、贷款金额
-
计算逻辑:按客户ID统计疑似诈骗的违约金额占总贷款金额的比率
-
粒度:按客户ID计算
-
指标验证逻辑:对比实际诈骗行为记录与计算结果,验证诈骗率的准确性
-
-
高危风险集中性
-
取数口径:客户的风险评分和贷款记录
-
表来源:客户信息表、贷款信息表
-
字段来源:客户ID、风险评分、贷款金额
-
计算逻辑:统计高风险客户的贷款金额占比
-
粒度:按客户ID计算
-
指标验证逻辑:对比高风险客户的实际贷款记录,验证风险集中性的准确性
-
保险精算系统
项目描述: 本项目通过整合公司内部各业务系统的海量数据资源,通过构建统一、高效、智能的数据仓库,提升数据资产价值,赋能业务决策和创新。存储覆盖了客户信息、保险交易记录、理赔数据、市场分析报告等多个数据源,采用大数据技术分析集索赔分析、保险费预测、欺诈侦察、利润比较集等功能为一体,通过从理赔到核赔赔付或拒赔的记录,从时间,地理、客户和产品等角度进行保单类似的分析,进行保单分析,分析保单的类型和风险,比较期间、奖金和风险,进行保单价格分析,分析价格的潜在客户分析,辅助交叉业务人员销售成功,客户特征化用于理解客户,区分企业的关键客户。
-
数据抽取:使用Kettle工具从业务系统(如保险管理系统、客户管理系统)中抽取数据到ODS层。
-
全量抽取:保单基本信息表、客户信息表
-
增量抽取:理赔记录表、保费缴纳记录表
-
-
数据清洗和转换:在DWD层处理格式、枚举、脏数据、异常数据,统一数据格式。
-
数据汇总:在DWS层建立保单、理赔、客户行为等宽表。
-
指标计算:在ADS层计算保单因子、理赔率等指标。
数仓分层/数据流向:
-
ODS层:数据备份,不进行修改。
-
DWD层:数据清洗和转换,建立保单、理赔、客户行为等主题。
-
DWS层:多维度汇总,建立宽表。
-
ADS层:指标计算和报表展示。
业务系统:
-
保险管理系统
-
客户管理系统
主题:
-
保单主题
-
理赔主题
负责主题: 保单主题
表结构:
-
快照表:保单信息表
- 核心字段:保单ID、客户ID、保单类型、保费金额
-
拉链表:理赔记录表
- 核心字段:保单ID、理赔金额、理赔日期
数据来源:
- 保险系统表:保单基本信息表、理赔记录表
需要计算的核心指标
保单因子
-
取数口径:保单基本信息表中的保单属性和客户信息
-
表来源:保单信息表
-
字段来源:保单ID、客户ID、保单类型、保费金额
-
计算逻辑:根据保单属性和客户信息计算保单因子
-
粒度:按保单ID计算
-
指标验证逻辑:对比历史保单数据验证保单因子计算的准确性
理赔率
-
取数口径:理赔记录表中的理赔金额和保费金额
-
表来源:理赔记录表
-
字段来源:保单ID、理赔金额、保费金额
-
计算逻辑:计算理赔率 = 理赔金额 / 保费金额
-
粒度:按保单ID计算
-
指标验证逻辑:对比实际理赔记录与计算结果,验证理赔率的准确性
客户保单持有量
-
取数口径:保单信息表中的客户ID和保单ID
-
表来源:保单信息表
-
字段来源:客户ID、保单ID
-
计算逻辑:统计每个客户持有的保单数量
-
粒度:按客户ID计算
-
指标验证逻辑:对比客户实际持有保单记录与计算结果,验证持有量的准确性
年度保费收入
-
取数口径:保单信息表中的保费金额和生效日期
-
表来源:保单信息表
-
字段来源:保单ID、保费金额、生效日期
-
计算逻辑:按年度统计保费收入
-
粒度:按年度计算
-
指标验证逻辑:对比年度财务报表与计算结果,验证保费收入的准确性
年度理赔支出
-
取数口径:理赔记录表中的理赔金额和理赔日期
-
表来源:理赔记录表
-
字段来源:保单ID、理赔金额、理赔日期
-
计算逻辑:按年度统计理赔支出
-
粒度:按年度计算
-
指标验证逻辑:对比年度财务报表与计算结果,验证理赔支出的准确性