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

发布时间:2026/5/23 21:28:25

(课堂笔记)信贷风控项目:贷前授信、贷中评分、贷后预警 本项目建设银行信贷风控数据仓库覆盖贷前、贷后全流程。数据从核心、信贷、征信等源系统入库经ODS、DWD、DWS至ADS分层加工。核心包括信用评分模型整合征信、存款、信用卡还款、展期记录四类数据采用CASE WHEN规则化打分输出客户综合评分用于贷前授信与利率定价贷后资金流向监控识别放款后15日内资金是否流入公检法重点账户、小贷公司或房地产商户支持以贷养贷与担保链风险预警。项目采用Hive Oracle数仓架构日调度ETL输出信用评分表、预警结果表直接服务于信贷审批与贷后管理部门。信贷风控项目一、 项目核心框架从业务到技术本项目围绕银行/金融机构的信贷业务贷款、信用卡利用大数据和风控模型解决贷前、贷后两大场景的核心风险控制问题。二、 贷前风控信用评分与授信核心目标判断借款人还款能力和意愿决定是否给额度、给多少、利率多少。1. 数据来源多维度刻画客户数据维度具体内容数据来源层资产状况存款、理财、黄金、国债等余额DWD/DWS收入流水个人账户交易流水工资、经营收入DWD负债与信用历史央行征信报告结构化解析后、本行信用卡还款记录、历史贷款记录DWD/ADS行为数据信用卡消费习惯商户、金额、频次DWD2. 核心模型信用评分模型规则加权模型本质基于多个风险属性根据预设规则打分加权求和得到总分。 示例评分卡权重与得分规则风险属性评分规则示例满分张三得分征信记录无逾期10分有逾期0分100存款余额10万10分5-10万5分5万0分1010信用卡还款按时全额还款10分最低还款/分期0分1010贷款展期历史无展期5分有展期0分55本行未结清贷款无5分有且正常3分有且逾期0分5-...其他.........总分各属性得分求和4025决策应用85分以上高额度优惠利率可免息期。60-85分标准额度正常利率。60分以下拒绝或低额度高利率。3. SQL实现逻辑多表关联 CASE WHENsqlINSERT 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实现逻辑sqlINSERT 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迁移-工具SqoopOracle ↔ Hive2. 主题域划分参考“十大模型”主题是对业务进行高度抽象的分类。常见的有当事人客户、担保人、机构。协议贷款合同、信用卡合约。事件交易流水、还款记录、逾期事件。授信主题额度、利率、审批结果。预警主题风险信号、黑名单、监控记录。本项目中信用评分模型→ 授信主题贷款流向模型→ 预警主题。六、 复习重点总结能说清流程贷前数据收集→特征加工→评分→授信vs 贷后持续监控资金/资产/征信。能画模型图信用评分卡属性规则权重、资金流向监控时间窗口对手黑名单。能写核心SQL多表LEFT JOIN CASE WHEN 打分以及交易流水的时间窗口关联。能画出数据分层ODS → DWD → DWS → ADS并说出每层作用。能举例指标知道“指标ID指标值统计日期”的结构。能区分技术栈传统Oracle模式 vs 大数据Hive模式。信用评分模型下面从“落地”的角度逐块梳理、补充、纠正。一、整体评价维度评价业务理解✅ 核心逻辑正确贷前评分、贷后资金流向、以贷养贷、担保链风险数据来源✅ 明确DWD/DWS、征信、流水、合同、展期、公检法名单分层思路✅ 清晰基础层→模型层→指标层 / ODS→DWD→DWS→ADS技术架构✅ 合理Oracle Hive Sqoop 是银行数仓经典组合可落地性⚠️ 需要补充粒度、主键、去重、时间窗口边界、多笔贷款聚合二、对“信用评分模型”的补充与规范你的逻辑是对的多张表关联 → CASE WHEN 打分 → 加权汇总。✅ 需要明确的几个细节1️⃣ 权重体系要显式定义你目前是隐含权重建议显式写出评分项判断逻辑得分权重说明征信有逾期 → 0无逾期 → 100/10一票否决类存款余额5w → 5≥10w → 105/10资产证明信用卡还款最低还款/分期 → 0全额按时 → 100/10还款习惯本行展期记录有 → 0无 → 50/5历史违约2️⃣ 明确“客户级”还是“借据级”你写的是sqlSELECT 客户号, ...✅正确。信用评分是客户级的不是借据级。3️⃣ 一个容易被忽视的问题时间窗口你当前是“截至当前”的快照但实际生产中通常要求近12个月是否有逾期近6个月存款日均近3个月信用卡还款行为 可以补充一句很重要所有评分指标均基于近12个月的滚动窗口计算避免一次性历史污点永久拉低评分。三、对“贷款流向模型”的规范与补充✅ 核心逻辑放款后15日内资金是否流入公检法关注账户小额贷款公司房地产相关账户⚠️ 需要补充的几个工程细节决定模型能不能上线1️⃣ 多笔贷款 多笔转账 风险聚合你当前是一笔放款 vs 一笔转账但真实情况更复杂text一笔放款 → 多次转账 → 部分流向风险账户建议补充以「贷款账户」为单位聚合15日内所有转出交易只要累计流向风险账户的金额 ≥ 放款金额 × 30%即触发预警。2️⃣ 交易对手匹配方式要分层你是sqlOR 交易对手姓名 LIKE 信贷可以更严谨地分为三层匹配级别方式示例精确匹配账户号公检法账户模糊匹配名称关键词%小额贷%、%信贷%外部名单匹配网贷平台清单离线维护3️⃣ 15天窗口要明确“自然日”还是“工作日”银行通常按自然日可以明确写*放款后 T0 至 T15 自然日内。*4️⃣防止重复预警一笔贷款可能被多次扫描需要增加sqlAND NOT EXISTS ( SELECT 1 FROM 预警结果表 WHERE 预警结果表.合同号 贷款合同表.合同号 )四、指标层 主题划分✅ 指标层示例可直接扩展你给的例子是公积金贷款不良类贷款余额999W可以扩展成一套完整的风控指标体系指标ID指标名称计算逻辑R001贷款流向风险率流入风险账户贷款数 / 总放款数R002以贷养贷客户数放款后30日内转入信贷公司客户数S001信用评分60分客户占比信用评分表统计W001担保人异常预警数担保人征信恶化/资产下降✅ 主题划分推荐用你提到的“十大模型”主题对应你模型中的内容当事人客户、担保人协议贷款合同、担保合同事件放款、还款、转账、逾期授信主题信用评分、授信额度预警主题贷款流向、以贷养贷、担保异常五、技术架构清晰化总结离线数仓监管报送 风控批量textODS(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 合同 → 借据核心关系类型说明贷款合同 ↔ 借据一对多一份合同可分多次提款每次提款生成一张借据典型SQLsql-- 一份合同下的多笔借据 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到预警结果表——通过规则判断命中公检法名单或小贷关键词就生成预警记录推送给贷后部门处理。这套链路覆盖了贷前授信、贷中评分、贷后预警三个环节数据是逐层加工的每一层职责清晰。

相关新闻