第三章 · 根基 第 9 篇:银行核心系统客户数据模型设计

第三章 · 根基 | 银行核心业务系统专栏


一、数据模型是系统的骨架

一个客户信息系统好不好用,80% 取决于它的数据模型设计。它决定了信息覆盖度、查询灵活性、业务扩展性和维护成本。这一篇我们深入看看真实项目中的设计是怎样的。


二、客户号的生成策略

2.1 客户号的核心原则

原则 原因
全局唯一 不能出现一个人两个号
终身不变 客户号改了,所有关联都要改,代价极大
无业务含义 不要把地区、等级等嵌入编号------业务会变,编号不能变
带校验位 防止手动录入错误
可读性 柜员需要口头告诉客户号,太长太乱不好用
预留空间 设计时要考虑未来 20-30 年的客户增长

2.2 常见的客户号策略

策略一:纯数字序列(10位纯数字),优点:简单好记;缺点:没有类型区分。

策略二:类型前缀 + 序列号(如PP=个人,CO=对公 + 8位序列号 + 1位校验码),优点:一眼看出客户类型。**这是大部分银行采用的方案,在系统友好性和人工可读性之间取得了最佳平衡。

策略三:分布式 ID(雪花算法),优点:高性能天然有序;缺点:不便于人工识别。


三、个人客户 vs 对公客户

3.1 为什么要把它们分开?

个人客户和对公客户的信息结构差异巨大:个人是自然人,用身份证;对公是法人组织,用营业执照、注册资本、法定代表人等。如果硬塞进一张表,会变成"大杂烩"------字段特别多、很多是空值、查询效率低。

3.2 经典数据模型设计

方案:核心表 + 扩展表

  • CUST_BASE(客户基础表):cust_id(客户号)、cust_type(客户类型)、cust_name、cert_type、cert_no、status、create_date
  • CUST_INDIVIDUAL(个人扩展表):gender、birthday、nationality、education、occupation、annual_income
  • CUST_CORPORATE(对公扩展表):legal_rep(法定代表人)、reg_capital(注册资本)、business_scope、industry_code、ben_owner(受益所有人)

一个客户可能有多个联系方式(手机、座机、邮箱、多个地址),需要独立建模(CUST_CONTACT、CUST_ADDRESS),支持多值、时间有效性、主标记。


四、客户与账户的关系模型

4.1 一对多的多维关联

一个客户拥有多个账户,这个关系不是简单的"客户 → 账户列表"------它有很多维度:持有人、共有人、授权使用人、代理人、受益人、担保人、法定代表人、实际控制人。

4.2 关系表设计

CUST_ACCT_RELATION(客户账户关系表):rel_id、cust_id、acct_id、rel_type(关系类型)、rel_role(角色)、start_date、end_date、status。

关键设计:不仅支持"查一个客户的所有账户",还要支持"查一个账户的所有关联客户",这是反洗钱和风控的重要基础。


五、客户层级:集团客户 → 机构客户 → 个人客户

银行面对的客户不是平铺的------企业客户往往有复杂的组织结构。如果不知道层级关系,银行就无法计算集团层面的统一授信、做集团客户的综合金融服务、识别隐蔽的关联交易和风险传导。

CUST_HIERARCHY(客户层级关系表):parent_cust_id、child_cust_id、hier_type(层级类型:集团/母子/总分公司/家族/配偶/担保)、share_ratio(持股比例)、control_flag(是否有控制权)。


六、客户证件与 KYC 信息

6.1 证件信息模型

客户可能有多种证件(身份证 + 护照 + 驾驶证),每种证件都需要独立管理(CUST_CERTIFICATE 表)。关键业务逻辑:客户的唯一性判断基于"证件类型+证件号码",而非姓名;证件过期时应该自动提醒并限制业务;证件号码必须加密存储。

6.2 KYC 信息(了解你的客户)

KYC 是反洗钱法规的核心要求,银行必须收集并维护:客户身份信息、职业收入信息、交易目的、资金来源、实际控制人、政治公众人物判断、制裁名单筛查。**CUST_KYC_RECORD 表管理这些信息,包括 KYC 等级、风险等级、审查日期等。


七、模型设计的关键原则

7.1 可扩展性

客户信息是最常变更的数据之一------监管要求年年加新字段,业务需求不断增加新维度。设计时要用扩展表而非在主表堆字段,预留自定义字段,支持时间维度------客户信息的任何变更都应该保留历史记录。

7.2 历史可追溯

客户改了手机号,旧的号码不需要删,但需要记录"什么时候改的"。这就是时间有效性设计,支持历史追溯。

7.3 性能考量

CIF 是查询最频繁的系统之一------柜员开户、ATM 验证、手机银行登录、风控决策都需要查客户信息。需要热数据缓存、读写分离、分库分表、索引优化。


八、本篇小结

  1. 客户号设计的核心原则是"全局唯一、终身不变、无业务含义、带校验位"
  2. 个人客户和对公客户差异巨大,应该用核心表+扩展表的方式分别建模
  3. 客户-账户关系不是简单的 1:N,而是多角色、多维度的复杂关联
  4. 客户层级管理集团关系、家族关系,是风控和营销的重要基础
  5. KYC 信息是反洗钱合规的核心,必须有专门的数据表管理
  6. CIF 数据模型设计的关键词是:可扩展、可追溯、高性能

© 2026 Fintech.Ren · 银行核心业务系统专栏

相关推荐
kels88998 小时前
单连接动态增减订阅:股票行情API后端降负载实战方案
开发语言·笔记·python·信息可视化·金融
我怎么又饿了呀1 天前
DataWhale—量化金融(task5: 策略回测)
金融
Old Uncle Tom1 天前
银行用户画像 -- 金融目标与需求意图
前端·人工智能·金融
期权汇小韩1 天前
科技大涨后,最新行情操作思路
金融
keke.shengfengpolang2 天前
金融工程毕业能干什么?银行、证券、数据岗怎么选
数学建模·金融
我怎么又饿了呀4 天前
DataWhale—量化金融(task3:移动平均线策略)
金融
hqyjzsb4 天前
非计算机专业学生怎么进入AI相关方向
人工智能·职场和发展·金融·数据挖掘·数据分析·aigc·业界资讯
龙虾PRO4 天前
金融 AI 分析系统:人工智能驱动的金融行情分析系统落地方案
人工智能·金融
longxibo5 天前
第 14 章 金融行业私有化AI落地案例
人工智能·金融·aigc
2401_891409265 天前
CMES金融数据下载中心:期货、期权行情数据全解析
金融