(课堂笔记)信贷风控项目:贷前授信、贷中评分、贷后预警

本项目建设银行信贷风控数据仓库,覆盖贷前、贷后全流程。


数据从核心、信贷、征信等源系统入库,经ODS、DWD、DWS至ADS分层加工。


核心包括:

  • 信用评分模型,整合征信、存款、信用卡还款、展期记录四类数据,采用CASE WHEN规则化打分,输出客户综合评分,用于贷前授信与利率定价;
  • 贷后资金流向监控,识别放款后15日内资金是否流入公检法重点账户、小贷公司或房地产商户,支持以贷养贷与担保链风险预警。

项目采用Hive + Oracle数仓架构,日调度ETL,输出信用评分表、预警结果表,直接服务于信贷审批与贷后管理部门。

信贷风控项目


一、 项目核心框架:从业务到技术

本项目围绕银行/金融机构的信贷业务(贷款、信用卡),利用大数据和风控模型,解决贷前、贷后两大场景的核心风险控制问题。


二、 贷前风控:信用评分与授信

核心目标:判断借款人还款能力和意愿,决定是否给额度、给多少、利率多少。

1. 数据来源(多维度刻画客户)

数据维度 具体内容 数据来源层
资产状况 存款、理财、黄金、国债等余额 DWD/DWS
收入流水 个人账户交易流水(工资、经营收入) DWD
负债与信用历史 央行征信报告(结构化解析后)、本行信用卡还款记录、历史贷款记录 DWD/ADS
行为数据 信用卡消费习惯(商户、金额、频次) DWD

2. 核心模型:信用评分模型(规则加权)

模型本质:基于多个风险属性,根据预设规则打分,加权求和得到总分。

📊 示例评分卡(权重与得分规则)

风险属性 评分规则(示例) 满分 张三得分
征信记录 无逾期=10分;有逾期=0分 10 0
存款余额 >10万=10分;5-10万=5分;<5万=0分 10 10
信用卡还款 按时全额还款=10分;最低还款/分期=0分 10 10
贷款展期历史 无展期=5分;有展期=0分 5 5
本行未结清贷款 无=5分;有且正常=3分;有且逾期=0分 5 -
...其他 ... ... ...
总分 各属性得分求和 40+ 25

决策应用

  • 85分以上:高额度,优惠利率,可免息期。

  • 60-85分:标准额度,正常利率。

  • 60分以下:拒绝或低额度高利率。

3. SQL实现逻辑(多表关联 + CASE WHEN)

sql

复制代码
INSERT INTO 信用评分结果表 (客户号, 总分, 征信分, 存款分, 还款分, 展期分)
SELECT 
    a.客户号,
    COALESCE(b.征信分, 0) + COALESCE(c.存款分, 0) + COALESCE(d.还款分, 0) + COALESCE(e.展期分, 0) AS 总分,
    b.征信分, c.存款分, d.还款分, e.展期分
FROM 客户信息表 a
LEFT JOIN (
    SELECT 客户号, CASE WHEN 是否有逾期 = '是' THEN 0 ELSE 10 END AS 征信分
    FROM 征信数据
) b ON a.客户号 = b.客户号
LEFT JOIN (
    SELECT 客户号, CASE 
        WHEN 存款余额 > 100000 THEN 10
        WHEN 存款余额 BETWEEN 50000 AND 100000 THEN 5
        ELSE 0 END AS 存款分
    FROM 存款账户汇总
) c ON a.客户号 = c.客户号
LEFT JOIN (
    SELECT 客户号, CASE 
        WHEN 还款行为 = '按时全额还款' THEN 10
        ELSE 0 END AS 还款分
    FROM 信用卡分期还款统计
) d ON a.客户号 = d.客户号
LEFT JOIN (
    SELECT 客户号, CASE WHEN 是否有展期 = '是' THEN 0 ELSE 5 END AS 展期分
    FROM 展期记录表统计
) e ON a.客户号 = e.客户号;

三、 贷后风控:风险预警与资金流向监控

核心目标:放款后持续监控,及时发现"以贷养贷"、"资金流入禁入领域(股市、房市)"、"涉及洗钱/诈骗"等风险。

1. 关键监控模型:贷款流向模型

监测重点

  • 🚩 以贷养贷 :放款后短期内(如15天),资金流向小额贷款公司、消费金融公司

  • 🚩 违规用途 :流向房地产、股市、公检法重点监控账户

  • 🚩 关联风险:流向征信黑名单客户、本行其他逾期客户的账户。

数据表

  • 放款流水表:放款时间、收款账号、合同号。

  • 交易流水表:交易时间、转出账号、对手账号/名称、金额。

  • 贷款合同表:合同号、客户号、产品类型。

  • 公检法监控账户表:黑名单账户、风险商户。

SQL实现逻辑

sql

复制代码
INSERT INTO 贷款流向预警表
SELECT 
    a.合同号, a.收款账号 AS 放款账户,
    c.交易时间, c.交易对手账号, c.交易对手名称, c.交易金额,
    CASE WHEN d.监控账号 IS NOT NULL THEN '是' ELSE '否' END AS 是否流向公检法账户,
    CASE WHEN c.交易对手名称 LIKE '%小额贷款%' OR c.交易对手名称 LIKE '%信贷%' THEN '是' ELSE '否' END AS 是否流向小贷公司,
    CASE WHEN COUNT(c.交易流水号) OVER(PARTITION BY a.合同号) > 1 THEN '是' ELSE '否' END AS 是否多笔分散
FROM 放款流水表 a
JOIN 贷款合同表 b ON a.合同号 = b.合同号
JOIN 交易流水表 c ON a.收款账号 = c.转出账号   -- 放款账户转出
LEFT JOIN 公检法监控账户表 d ON c.交易对手账号 = d.监控账号
WHERE c.交易时间 BETWEEN a.放款时间 AND a.放款时间 + INTERVAL '15' DAY
  AND (d.监控账号 IS NOT NULL 
       OR c.交易对手名称 LIKE '%小额贷款%' 
       OR c.交易对手名称 LIKE '%信贷%');

2. 其他重要贷后监控

监控点 说明 预警信号
还款资金来源异常 每月还款前,固定从某小贷公司转入等额资金 以贷养贷 → 风险
个人资产大幅减少 存款、理财突然全部转出 资金紧张或转移资产
他行贷款逾期 同一借款人在其他机构出现逾期(征信更新) 共债风险
信用卡异常交易 同一商户固定时间大额刷卡(套现嫌疑) 套现风险
担保人风险 担保人征信恶化、资产大幅减少 代偿风险增加

四、 数据仓库分层架构(核心知识)

标准四层架构(由原始到应用)

层名 英文缩写 作用 数据示例
操作数据层 ODS 原始数据,与源系统基本一致 银行核心系统日志、接口文件
数据明细层 DWD 清洗、标准化、轻度明细 清洗后的交易流水表、征信明细表
数据汇总层 DWS 按主题聚合(日/月累计) 客户月日均存款汇总表、近3个月交易统计表
应用数据层 ADS 面向具体应用的结果表 信用评分结果表、贷款流向预警表

项目中"指标层"实质

指标层 不是独立物理层,而是位于DWS/ADS的逻辑概念

  • 基础指标:原子指标(如:贷款金额)

  • 衍生指标:按时间/维度计算(如:近3个月公积金不良贷款余额)

  • 指标结果表 :存储 指标ID指标名称指标值统计日期

指标ID 指标名称 指标结果 统计日期
1 公积金贷款不良类贷款余额 999万 2025-03-31

五、 技术架构与主题划分

1. 技术架构(两种演进)

传统架构 大数据架构
数据库:Oracle(单机/集群) 数据仓库:Hive(分布式)
调度:Linux Crontab 调度:Azkaban/Airflow
处理:Shell + SQL 计算:Shell + Spark SQL
迁移:- 工具:Sqoop(Oracle ↔ Hive)

2. 主题域划分(参考"十大模型")

主题是对业务进行高度抽象的分类。常见的有:

  • 当事人:客户、担保人、机构。

  • 协议:贷款合同、信用卡合约。

  • 事件:交易流水、还款记录、逾期事件。

  • 授信主题:额度、利率、审批结果。

  • 预警主题:风险信号、黑名单、监控记录。

本项目中:信用评分模型 → 授信主题;贷款流向模型 → 预警主题。


六、 复习重点总结

  1. 能说清流程:贷前(数据收集→特征加工→评分→授信)vs 贷后(持续监控资金/资产/征信)。

  2. 能画模型图:信用评分卡(属性+规则+权重)、资金流向监控(时间窗口+对手黑名单)。

  3. 能写核心SQL:多表LEFT JOIN + CASE WHEN 打分,以及交易流水的时间窗口关联。

  4. 能画出数据分层:ODS → DWD → DWS → ADS,并说出每层作用。

  5. 能举例指标:知道"指标ID+指标值+统计日期"的结构。

  6. 能区分技术栈:传统Oracle模式 vs 大数据Hive模式。


信用评分模型


下面从**"落地"**的角度,逐块梳理、补充、纠正。


一、整体评价

维度 评价
业务理解 ✅ 核心逻辑正确:贷前评分、贷后资金流向、以贷养贷、担保链风险
数据来源 ✅ 明确:DWD/DWS、征信、流水、合同、展期、公检法名单
分层思路 ✅ 清晰:基础层→模型层→指标层 / ODS→DWD→DWS→ADS
技术架构 ✅ 合理:Oracle + Hive + Sqoop 是银行数仓经典组合
可落地性 ⚠️ 需要补充:粒度、主键、去重、时间窗口边界、多笔贷款聚合

二、对"信用评分模型"的补充与规范


你的逻辑是对的:多张表关联 → CASE WHEN 打分 → 加权汇总


✅ 需要明确的几个细节


1️⃣ 权重体系要显式定义

你目前是隐含权重,建议显式写出:

评分项 判断逻辑 得分 权重说明
征信 有逾期 → 0;无逾期 → 10 0/10 一票否决类
存款余额 <5w → 5;≥10w → 10 5/10 资产证明
信用卡还款 最低还款/分期 → 0;全额按时 → 10 0/10 还款习惯
本行展期记录 有 → 0;无 → 5 0/5 历史违约
2️⃣ 明确"客户级"还是"借据级"

你写的是:

sql

复制代码
SELECT 客户号, ...

正确 。信用评分是客户级的,不是借据级。


3️⃣ 一个容易被忽视的问题:时间窗口

你当前是"截至当前"的快照,但实际生产中通常要求:

  • 近12个月是否有逾期

  • 近6个月存款日均

  • 近3个月信用卡还款行为

👉 可以补充一句(很重要):

所有评分指标均基于近12个月的滚动窗口计算,避免一次性历史污点永久拉低评分。


三、对"贷款流向模型"的规范与补充

✅ 核心逻辑

放款后15日内,资金是否流入:

  • 公检法关注账户

  • 小额贷款公司

  • 房地产相关账户

⚠️ 需要补充的几个工程细节(决定模型能不能上线)

1️⃣ 多笔贷款 + 多笔转账 = 风险聚合

你当前是一笔放款 vs 一笔转账,但真实情况更复杂:

text

复制代码
一笔放款 → 多次转账 → 部分流向风险账户

建议补充

以「贷款账户」为单位,聚合15日内所有转出交易:只要累计流向风险账户的金额 ≥ 放款金额 × 30%,即触发预警。

2️⃣ 交易对手匹配方式要分层

你是:

sql

复制代码
OR 交易对手姓名 LIKE '信贷'

可以更严谨地分为三层:

匹配级别 方式 示例
精确匹配 账户号 公检法账户
模糊匹配 名称关键词 %小额贷%%信贷%
外部名单匹配 网贷平台清单 离线维护
3️⃣ 15天窗口要明确"自然日"还是"工作日"

银行通常按自然日,可以明确写:

*放款后 T+0 至 T+15 自然日内。*

4️⃣ 防止重复预警

一笔贷款可能被多次扫描,需要增加:

sql

复制代码
AND NOT EXISTS (
  SELECT 1 FROM 预警结果表
  WHERE 预警结果表.合同号 = 贷款合同表.合同号
)

四、指标层 & 主题划分

✅ 指标层示例(可直接扩展)

你给的例子是:

公积金贷款不良类贷款余额:999W

可以扩展成一套完整的风控指标体系:

指标ID 指标名称 计算逻辑
R001 贷款流向风险率 流入风险账户贷款数 / 总放款数
R002 以贷养贷客户数 放款后30日内转入信贷公司客户数
S001 信用评分<60分客户占比 信用评分表统计
W001 担保人异常预警数 担保人征信恶化/资产下降

✅ 主题划分(推荐用你提到的"十大模型")

主题 对应你模型中的内容
当事人 客户、担保人
协议 贷款合同、担保合同
事件 放款、还款、转账、逾期
授信主题 信用评分、授信额度
预警主题 贷款流向、以贷养贷、担保异常

五、技术架构清晰化

总结:

离线数仓(监管报送 + 风控批量)

text

复制代码
ODS(Oracle) → Sqoop → Hive(DWD/DWS/ADS) → 指标层 → 报表/模型

补充

日调度基于Shell + Airflow(或XX调度平台),核心作业在凌晨完成,不影响业务系统。

完整ER图(借据 ↔ 合同 ↔ 流水 ↔ 评分 ↔ 预警)

一、ER图(实体关系图)

复制代码
┌─────────────────────────────────────────────────────────────────────────────────────┐
│                              信贷风控核心ER图                                         │
└─────────────────────────────────────────────────────────────────────────────────────┘

                              ┌─────────────────┐
                              │   客户实体       │
                              │  (customer)     │
                              │─────────────────│
                              │ PK 客户号        │
                              │    姓名/证件号   │
                              │    年龄/职业     │
                              └────────┬────────┘
                                       │ 1
                                       │
                                       │ 拥有
                                       │ N
                    ┌──────────────────┴──────────────────┐
                    │                                      │
                    ▼                                      ▼
         ┌─────────────────┐                   ┌─────────────────┐
         │   贷款合同表     │                   │   信用卡账户表   │
         │  (loan_contract) │                   │ (credit_card)   │
         │─────────────────│                   │─────────────────│
         │ PK 合同号        │                   │ PK 卡号/账户号   │
         │ FK 客户号        │                   │ FK 客户号        │
         │    授信额度      │                   │    信用额度      │
         │    合同金额      │                   │    已用额度      │
         │    期限/利率     │                   │    账单日/还款日 │
         └────────┬────────┘                   └────────┬────────┘
                  │ 1                                    │ 1
                  │                                      │
                  │ 对应                                  │ 对应
                  │ N                                    │ N
         ┌─────────────────┐                   ┌─────────────────┐
         │    借据表        │                   │  信用卡交易流水  │
         │ (loan_voucher)  │                   │ (cc_transaction)│
         │─────────────────│                   │─────────────────│
         │ PK 借据号        │                   │ PK 流水号       │
         │ FK 合同号        │                   │ FK 卡号/账户号   │
         │    借据金额      │                   │    交易金额     │
         │    余额          │                   │    交易时间     │
         │    执行利率      │                   │    交易类型     │
         │    五级分类      │                   │    商户类型MCC  │
         │    放款日期      │                   └─────────────────┘
         │    到期日期      │
         │    借据状态      │
         └────────┬────────┘
                  │ 1
                  │
                  │ 产生
                  │ N
         ┌─────────────────┐
         │   还款流水表     │
         │(repay_flow)     │
         │─────────────────│
         │ PK 流水号        │
         │ FK 借据号        │
         │    还款金额      │
         │    还款本金      │
         │    还款利息      │
         │    还款日期      │
         └─────────────────┘


═══════════════════════════════════════════════════════════════════════════════════════


                              ┌─────────────────┐
                              │   客户实体       │
                              │  (customer)     │
                              └────────┬────────┘
                                       │
                                       │ 1
                                       │
                         ┌─────────────┴─────────────┐
                         │ 关联                         │
                    ┌────┴────┐                   ┌────┴────┐
                    ▼         ▼                   ▼         ▼
         ┌──────────────────────────┐    ┌──────────────────────────┐
         │      征信数据表           │    │      信用评分表           │
         │    (credit_report)       │    │   (credit_score)         │
         │──────────────────────────│    │──────────────────────────│
         │ PK 客户号 + 报告日期       │    │ PK 客户号 + 评分日期       │
         │    总负债/总授信           │    │    征信得分               │
         │    逾期次数/逾期天数       │    │    存款得分               │
         │    贷款笔数/信用卡张数     │    │    还款得分               │
         │    查询次数               │    │    展期得分               │
         └──────────────────────────┘    │    综合评分               │
                                          └──────────────────────────┘


═══════════════════════════════════════════════════════════════════════════════════════


                              ┌─────────────────┐
                              │   借据表         │
                              │ (loan_voucher)  │
                              └────────┬────────┘
                                       │
                                       │ 1
                                       │
                                       │ 监控
                                       │ N
         ┌─────────────────────────────────────────────────────────┐
         │                      贷款流向预警表                       │
         │                   (loan_flow_warning)                   │
         │─────────────────────────────────────────────────────────│
         │ PK 预警ID                                               │
         │ FK 借据号 / 合同号 / 贷款账户号                           │
         │    放款时间                                             │
         │    流向账号 / 交易对手                                   │
         │    交易时间 / 交易金额                                   │
         │    预警类型(公检法/小贷公司/房地产/以贷养贷)             │
         │    预警等级(高/中/低)                                  │
         │    是否已处置                                           │
         └─────────────────────────────────────────────────────────┘

                                     ▲
                                     │
                                     │ 命中
                                     │
         ┌──────────────────────────┐    ┌──────────────────────────┐
         │    公检法重点账户表       │    │    风险交易对手关键词表   │
         │(justice_account_watch)  │    │(risk_counterparty_keyword)│
         │──────────────────────────│    │──────────────────────────│
         │ PK 账户号                │    │ PK 关键词ID              │
         │    账户名称              │    │    关键词(%小额贷%等)   │
         │    风险类型              │    │    风险类型              │
         └──────────────────────────┘    └──────────────────────────┘


═══════════════════════════════════════════════════════════════════════════════════════


                              ┌─────────────────┐
                              │   贷款合同表     │
                              │ (loan_contract) │
                              └────────┬────────┘
                                       │ 1
                                       │
                                       │ 担保
                                       │ N
         ┌─────────────────────────────────────────────────────────┐
         │                      担保关系表                          │
         │                (guarantee_relation)                    │
         │─────────────────────────────────────────────────────────│
         │ PK 关系ID                                               │
         │ FK 合同号 / 借据号                                       │
         │ FK 担保人客户号                                          │
         │    担保类型(保证/抵押/质押)                              │
         │    担保金额                                             │
         └─────────────────────────────────────────────────────────┘
                                     │
                                     │ N
                                     │
                                     ▼
         ┌──────────────────────────┐    ┌──────────────────────────┐
         │      担保人客户表         │    │      抵质押物信息表       │
         │    (guarantor_customer)  │    │    (collateral_info)    │
         │──────────────────────────│    │──────────────────────────│
         │ PK 担保人客户号           │    │ PK 押品ID               │
         │    担保人与借款人关系      │    │    押品类型(房产/存单)  │
         │    担保人征信得分          │    │    评估价值             │
         │    担保人资产变化          │    │    抵押率              │
         └──────────────────────────┘    └──────────────────────────┘

二、实体关系说明(文字版,面试可直接口述)

2.1 客户 → 合同/信用卡

关系 类型 说明
客户 ↔ 贷款合同 一对多 一个客户可签多份贷款合同
客户 ↔ 信用卡账户 一对多 一个客户可持有多张信用卡

2.2 合同 → 借据(核心)

关系 类型 说明
贷款合同 ↔ 借据 一对多 一份合同可分多次提款,每次提款生成一张借据

典型SQL

sql

复制代码
-- 一份合同下的多笔借据
SELECT * FROM 借据表 WHERE 合同号 = 'HT2024001';

2.3 借据 → 还款流水

关系 类型 说明
借据 ↔ 还款流水 一对多 一张借据可被多次还款(每次一条流水)

2.4 客户 → 征信/评分

关系 类型 说明
客户 ↔ 征信数据 时间序列 同一客户有多个时间点的征信快照
客户 ↔ 信用评分 时间序列 同一客户有多个时间点的评分记录

2.5 借据 → 贷款流向预警

关系 类型 说明
借据 ↔ 贷款流向预警 一对多 一笔放款可能触发多条预警(多笔风险转账)

2.6 合同 → 担保关系(多对多拆解)

复制代码
        合同/借据                        担保人
        ┌─────┐                         ┌─────┐
        │  N  │ ◄───────────────────► │  N  │
        └─────┘                         └─────┘
            │                               │
            └───────────┬───────────────────┘
                        ▼
                 ┌─────────────┐
                 │  担保关系表  │
                 │  (中间表)   │
                 └─────────────┘

三、核心表的字段清单(面试/简历用)

3.1 借据表(核心中的核心)

字段 作用
借据号 主键
合同号 关联合同表
借据金额 本次放款金额
余额 剩余未还本金
执行利率 计息依据
五级分类 正常/关注/次级/可疑/损失
放款日期 资金划拨时间
借据状态 正常/逾期/核销/结清

3.2 贷款流向预警表

字段 作用
预警ID 主键
借据号 关联借据
流向账号 资金转入账户
交易对手 转入方名称
预警类型 公检法/小贷公司/房地产/以贷养贷

四、如何讲这个ER图(2分钟话术)

这套实体关系核心是「借据表」,它连接了上层的合同和下层的还款流水。

一份合同对应多张借据,一张借据对应多条还款流水。另外,贷后监控是独立的预警体系,我通过交易流水关联公检法账户表和关键词表,识别资金是否流向风险对手方。

最后,担保关系通过一个中间表把合同和担保人拆成了多对多关系,支持担保链分析。

整个模型覆盖了贷前授信、贷中评分、贷后预警三个环节,数据链路是完整的。

输出 完整数据血缘图(从源系统→DWD→DWS→ADS→预警表)

一、数据血缘全图(文本版)

复制代码
┌─────────────────────────────────────────────────────────────────────────────────────────────────┐
│                                      完整数据血缘图                                               │
│                            (信贷风控 + 贷后资金流向预警)                                         │
└─────────────────────────────────────────────────────────────────────────────────────────────────┘


【第0层:源系统 - OLTP】

┌───────────────┐ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│   核心系统     │ │   信贷系统     │ │   信用卡系统   │ │   征信解析系统 │ │   外部名单系统 │
│  (CoreBank)   │ │  (CreditSys)  │ │   (CardSys)   │ │ (CreditReport)│ │  (WatchList)  │
│═══════════════│ │═══════════════│ │═══════════════│ │═══════════════│ │═══════════════│
│ 存款账户表    │ │ 贷款合同表    │ │ 信用卡账户表  │ │ 征信报告原始  │ │ 公检法账户表  │
│ 交易流水表    │ │ 借据表       │ │ 信用卡交易流水│ │   (XML/文本)  │ │ 风险关键词表  │
│ 客户信息表    │ │ 还款计划表   │ │ 信用卡还款记录│ │               │ │               │
│ 总账科目表    │ │ 担保关系表   │ │ 信用卡分期表  │ │               │ │               │
└───────┬───────┘ └───────┬───────┘ └───────┬───────┘ └───────┬───────┘ └───────┬───────┘
        │                 │                 │                 │                 │
        └─────────────────┴─────────────────┴─────────────────┴─────────────────┘
                                          │
                                   【Sqoop/DataX】
                                   每日增量/全量
                                          │
                                          ▼
═════════════════════════════════════════════════════════════════════════════════════════════════


【第1层:ODS 贴源层】

┌───────────────────────────────────────────────────────────────────────────────────────────────┐
│                                            ODS层                                               │
│                                   (表结构与源系统几乎一致)                                       │
├───────────────┬───────────────┬───────────────┬───────────────┬───────────────┬───────────────┤
│ ods_core_     │ ods_credit_   │ ods_card_     │ ods_credit_   │ ods_watch_    │ ods_hdfs_     │
│   account     │   contract    │   account     │   report_raw  │   justice_    │   external_   │
│ ods_core_     │ ods_credit_   │ ods_card_     │               │   account     │   keyword     │
│   trans       │   voucher     │   trans       │               │               │               │
│ ods_core_     │ ods_credit_   │ ods_card_     │               │               │               │
│   customer    │   repay_plan  │   repay       │               │               │               │
│               │ ods_credit_   │ ods_card_     │               │               │               │
│               │   guarantee   │   installment │               │               │               │
└───────┬───────┴───────┬───────┴───────┬───────┴───────┬───────┴───────┬───────┴───────┬───────┘
        │               │               │               │               │               │
        └───────────────┴───────────────┴───────────────┴───────────────┴───────────────┘
                                          │
                                   【ETL - 数据清洗】
                                   • 去重 • 格式统一
                                   • 空值处理 • 代码转换
                                          │
                                          ▼
═════════════════════════════════════════════════════════════════════════════════════════════════


【第2层:DWD 明细层】

┌───────────────────────────────────────────────────────────────────────────────────────────────┐
│                                           DWD层                                                │
│                                 (清洗后的明细数据,细粒度)                                       │
├─────────────────────────────┬─────────────────────────────┬─────────────────────────────────┤
│       贷款/存款主题          │         信用卡主题           │          外部/征信主题           │
├─────────────────────────────┼─────────────────────────────┼─────────────────────────────────┤
│ dwd_customer_di             │ dwd_card_account_di         │ dwd_credit_report_parse_di      │
│ (客户信息,日增量)           │ (信用卡账户,日增量)          │ (征信报告解析后,结构化)          │
│                             │                             │                                 │
│ dwd_loan_contract_di        │ dwd_card_trans_di           │ 核心解析字段:                    │
│ (贷款合同,日增量)           │ (信用卡交易流水,日增量)      │ • 总负债/总授信                   │
│                             │                             │ • 逾期次数/最大逾期天数           │
│ dwd_loan_voucher_di         │ dwd_card_repay_di           │ • 贷款笔数/信用卡张数             │
│ (借据表,日增量) ← 核心表    │ (信用卡还款记录,日增量)      │ • 近3个月查询次数                 │
│                             │                             │                                 │
│ dwd_loan_repay_flow_di      │ dwd_card_installment_di     │ dwd_watch_account_df            │
│ (还款流水,日增量)           │ (信用卡分期记录,日增量)      │ (公检法监控账户,全量)            │
│                             │                             │                                 │
│ dwd_loan_guarantee_di       │                             │ dwd_risk_keyword_df             │
│ (担保关系,日增量)           │                             │ (风险关键词,全量)                │
└─────────────────────────────┴─────────────────────────────┴─────────────────────────────────┘
                                          │
                                   【ETL - 轻度聚合】
                                   • 按客户/账户聚合
                                   • 计算衍生字段
                                   • 关联多张明细表
                                          │
                                          ▼
═════════════════════════════════════════════════════════════════════════════════════════════════


【第3层:DWS 汇总层 / 主题宽表层】

┌───────────────────────────────────────────────────────────────────────────────────────────────┐
│                                           DWS层                                                │
│                              (按主题预聚合,宽表,中度/重度汇总)                                   │
├─────────────────────────────────────────┬───────────────────────────────────────────────────┤
│          客户/账户主题宽表                │                   风控/预警主题                     │
├─────────────────────────────────────────┼───────────────────────────────────────────────────┤
│ dws_customer_asset_summary_di           │ dws_loan_flow_15d_di                               │
│ (客户资产汇总,日增量)                    │ (贷款15日内资金流向汇总,日增量)                      │
│ • 客户号                                 │ • 借据号                                           │
│ • 存款总余额                             │ • 放款金额                                         │
│ • 理财总余额                             │ • 流向风险账户总金额                                │
│ • 总负债                                 │ • 流向风险账户笔数                                  │
│ • 资产负债率(衍生)                       │ • 是否命中公检法名单                                │
│                                         │ • 是否命中小贷关键词                                │
├─────────────────────────────────────────┼───────────────────────────────────────────────────┤
│ dws_customer_credit_summary_di          │ dws_loan_repay_warning_di                          │
│ (客户征信汇总,日增量)                    │ (贷款还款预警汇总,日增量)                           │
│ • 客户号                                 │ • 借据号                                           │
│ • 近3个月查询次数                         │ • 当前逾期天数                                     │
│ • 近12个月逾期次数                        │ • 是否进入关注/次级                                 │
│ • 最大逾期天数                           │ • 剩余本金                                         │
│ • 当前总授信/总负债                       │ • 最近一次还款日期                                  │
├─────────────────────────────────────────┼───────────────────────────────────────────────────┤
│ dws_card_behavior_summary_di            │ dws_guarantor_warning_di                           │
│ (信用卡行为汇总,日增量)                  │ (担保人风险预警,日增量)                             │
│ • 卡号/客户号                            │ • 合同号/借据号                                     │
│ • 刷卡额度使用率(衍生)                    │ • 担保人客户号                                      │
│ • 月均消费金额                           │ • 担保人征信得分                                    │
│ • 是否最低还款/分期                       │ • 担保人资产变化                                    │
│ • 近6个月按时还款次数                     │ • 担保链风险等级                                    │
└─────────────────────────────────────────┴───────────────────────────────────────────────────┘
                                          │
                                   【ETL - 指标计算】
                                   • 规则判断(CASE WHEN)
                                   • 多表关联(评分/预警)
                                   • 权重打分
                                          │
                                          ▼
═════════════════════════════════════════════════════════════════════════════════════════════════


【第4层:ADS 应用层 / 指标层】

┌───────────────────────────────────────────────────────────────────────────────────────────────┐
│                                           ADS层                                                │
│                              (面向具体应用的结果表,高度聚合)                                     │
├─────────────────────────────┬─────────────────────────────┬─────────────────────────────────┤
│       信用评分模型输出       │       贷前授信指标           │          贷后风险指标            │
├─────────────────────────────┼─────────────────────────────┼─────────────────────────────────┤
│ ads_credit_score_df         │ ads_pre_loan_indicator_df   │ ads_post_loan_indicator_df      │
│ (信用评分结果表)             │ (贷前授信指标表)              │ (贷后风险指标表)                 │
│ • 客户号                    │ • 客户号                    │ • 客户号/借据号                  │
│ • 评分日期                  │ • 综合信用评分               │ • 不良贷款余额                   │
│ • 征信得分                  │ • 建议授信额度               │ • 不良贷款率                    │
│ • 资产得分                  │ • 风险等级(高/中/低)          │ • 风险预警总数                  │
│ • 还款得分                  │ • 是否建议放款               │ • 高风险预警数                   │
│ • 展期得分                  │ • 建议利率定价               │ • 贷后检查完成率                │
│ • 综合评分(总分)            │                             │                               │
└─────────────────────────────┴─────────────────────────────┴─────────────────────────────────┘
                                          │
                                   【ETL - 规则判断】
                                   • 预警规则匹配
                                   • 命中名单/关键词
                                   • 金额/笔数阈值判断
                                          │
                                          ▼
═════════════════════════════════════════════════════════════════════════════════════════════════


【第5层:预警结果表 / 风控输出】

┌───────────────────────────────────────────────────────────────────────────────────────────────┐
│                                        预警结果层                                               │
│                               (直接推送给信贷审批/贷后部门)                                      │
├───────────────────────────────────────────────────────────────────────────────────────────────┤
│                                                                                               │
│  ⚠️  ads_loan_flow_warning_result                                                             │
│     (贷款资金流向预警结果表)                                                                    │
│     • 预警ID  │ 借据号  │ 客户名称  │ 放款金额  │ 风险类型  │ 交易对手  │ 命中金额  │ 预警等级    │
│     • 是否已处置  │ 处置结果  │ 审批人  │ 处置时间                                         │
│                                                                                               │
│  ⚠️  ads_repay_anomaly_warning_result                                                         │
│     (还款异常预警结果表)                                                                        │
│     • 预警ID  │ 客户号  │ 借据号  │ 逾期天数  │ 当前五级分类  │ 剩余本金  │ 预警时间             │
│                                                                                               │
│  ⚠️  ads_guarantor_risk_warning_result                                                        │
│     (担保人风险预警结果表)                                                                      │
│     • 预警ID  │ 合同号  │ 借款人  │ 担保人  │ 担保金额  │ 担保人征信变化  │ 风险等级              │
│                                                                                               │
│  ⚠️  ads_lend_to_lend_warning_result                                                          │
│     (以贷养贷预警结果表)                                                                        │
│     • 预警ID  │ 客户号  │ 借据号  │ 放款时间  │ 流入小贷公司金额  │ 流入笔数  │ 预警等级           │
│                                                                                               │
└───────────────────────────────────────────────────────────────────────────────────────────────┘

二、核心数据流向总结(口述版)

复制代码
源系统(核心/信贷/征信/外部名单)
    ↓ 【Sqoop/DataX 每日抽取】
ODS贴源层(表结构与源系统一致)
    ↓ 【数据清洗:去重、格式统一、空值处理】
DWD明细层(清洗后的明细数据)
    ↓ 【轻度聚合:按客户/账户/借据汇总,计算衍生字段】
DWS汇总层(主题宽表:客户资产汇总、征信汇总、贷款流向汇总)
    ↓ 【规则判断 + 权重打分 + 多表关联】
ADS应用层(信用评分表、贷前指标表、贷后指标表)
    ↓ 【预警规则匹配:名单命中、关键词、阈值判断】
预警结果表(直接推送给业务部门:风控/贷后/审批)

三、2分钟讲清楚数据血缘

这套风控数据血缘,是从源系统到预警结果的完整链路,一共五层。

源系统包括核心、信贷、信用卡、征信解析和外部名单。通过Sqoop每日抽取到ODS层。

ODS到DWD做数据清洗------去重、格式统一、空值处理,保证数据质量。

DWD到DWS做轻度聚合------我建了客户资产汇总、征信汇总、贷款流向汇总这些宽表,供上层复用。

DWS到ADS做指标计算------比如信用评分模型,把征信得分、存款得分、还款得分按权重汇总,得到综合评分。

最后ADS到预警结果表------通过规则判断,命中公检法名单或小贷关键词,就生成预警记录,推送给贷后部门处理。

这套链路覆盖了贷前授信、贷中评分、贷后预警三个环节,数据是逐层加工的,每一层职责清晰。

相关推荐
七夜zippoe1 个月前
DolphinDB数据模型:表、分区与分布式表
分布式·wpf·数据模型··dolphindb
阿坤带你走近大数据2 个月前
市净率、市现率、市销率定义及衍生计算公式
存储过程·数据模型·业务模型
庄小焱4 个月前
信贷模型域——智能风控建模业务与数据
人工智能·信贷风控·信贷域·信贷建模
龙石数据4 个月前
【第三部分 实施篇】第7章 数据仓库及数据模型管理
数据仓库·数据管理·数据中台·数据模型·数据治理实战指南
闲人编程5 个月前
商品管理与库存系统
服务器·网络·数据库·python·api·数据模型·codecapsule
庄小焱5 个月前
风控域——信贷风控知识图谱实战
知识图谱·智能风控·信贷风控·信贷域·风控系统设计
无心水6 个月前
【分布式利器:Redis】Redis基本原理详解:数据模型、核心特性与实战要点
数据库·redis·缓存·数据模型·i/o多路复用·redis高并发·redis基本原理
Light607 个月前
数据模型全解:从架构之心到AI时代的智慧表达
人工智能·架构·数据模型·三层架构·数仓建模·ai辅助·业务翻译
阡之尘埃10 个月前
Python数据分析案例79——基于征信数据开发信贷风控模型
python·金融·数据挖掘·数据分析·信贷风控