原文:金融数据仓库之分层命名规范 - 知乎
以数据之名
微信公众号“以数据之名”关注回复2即可获取源代码和分享资源。
关注他
2 人赞同了该文章
不以规矩,不能成方圆。火车之所以能奔驰千里,是因为它始终离不开两条铁轨;风筝之所以能飞翔万尺,是因为它总是情系着手中的线;大江东流,日月交替,大自然生生不息,用规则演绎着生命的轨迹。
金融数据仓库构建亦是如此,我们需要先制定好分层及命名规范,并且不断的监督约束大家按照约定执行。否则开发者随意自由发挥,后期需要投入大量的人力成本和时间成本去重构,其困难程度也将不可预期。今天小编把我们的分层规范总结如下,分享给大家,供大家查阅与斧正。
一、普通表
格式: [模式].[对象类型]_[层次类型]_[主题域分类]_[主体]_[后缀]
示例:ODS.TF_EVT_QQ_TXN_CTL , EDW.TM_EVT_QQ_TXN_DAY
1.1、模式
模式名 | 说明 |
---|
ODS | 接口类数据,如FDM层数据。 |
EDW | 分析类数据,如MDM、CDM层数据。 |
APP | 应用类数据,如ADM层数据。 |
1.2、对象类型
对象名称 | 对象代码 | 缩写 |
---|
表 | Table | T |
视图 | View | V |
函数 | Function | F |
过程 | Procedure | P |
1.3、层次类型
层次名称 | 层次代码 | 缩写 |
---|
原始层 | Original | O |
基础层 | Foundation | F |
中间层 | Middle | M |
中心层 | Core | C |
应用层 | Application | A |
公共层 | Public | P |
1.4、主题域
主题域名称 | 主题域代码 | 缩写 |
---|
参与人域 | Party | PAR |
合约域 | Arrangement | ARR |
产品域 | Product | PRD |
资产域 | Asset | ASS |
营销域 | Campaign | CMP |
事件域 | Event | EVT |
财务域 | Finance | FIN |
机构域 | Organization | ORG |
1.5、主体
可参考源系统表名,也可根据应用需要自行定义,见名知义
1.6、后缀
表类型 | 数据刷新频率 | 缩写 |
---|
日表 | 日 | _DAY |
月表 | 月 | _MON |
年表 | 年 | _YEAR |
日累计表 | 日 | _SUM_DAY |
月累计表 | 月 | _SUM_MON |
年累计表 | 年 | _SUM_YEAR |
C端表 | | _C |
B端表 | | _B |
二、参数表
格式: [模式].[对象类型]_[层次类型]_[数据类型]_[表内容]
示例:ODS.TP_P_CITY
2.1、数据类型
公共层分类 | 数据类型 | 缩写 |
---|
参数表 | Parameter | P |
日志表 | Log | L |
配置表 | Configuration | C |
2.2、表内容
如果是引入数据源系统的参数表,可沿用原命名;
如果是ODS自身的参数表,根据业务需要,命名做到见名知义。
三、临时表
[模式名].tmp_[目标表名]_[两位序号]
示例:edw.tmp_ta_rpt_qq_credit_day_01
四、历史表
如果要建独立的历史数据表,需要在层次名称后加后缀H,例如:
基础层:TFH_
中间层:TMH_
五、通用规范
对象名称 | 对象代码 | 缩写 | 备注 |
---|
表 | Table | T | 用于名称第1位 |
视图 | View | V | 用于名称第1位 |
函数 | Function | F | 用于名称第1位 |
过程 | Procedure | P | 用于名称第1位 |
层次名称 | 层次代码 | 缩写 | 备注 | 所在系统 |
---|
原始层 | Original | O | 本层命名规则:源库名+源表名 | ODS Stage DB |
基础层 | Foundation | F | 用于名称第2位 | ODS DB |
中间层 | Middle | M | 用于名称第2位 | ODS DB |
中心层 | Core | C | 用于名称第2位 | ODS DB |
应用层 | Application | A | 用于名称第2位 | ODS DB |
公共层 | Public | P | 用于名称第2位 | ODS DB |
主题域名称 | 主题域代码 | 缩写 | 备注 | 说明 |
---|
参与人域 | Party | PAR | 用于名称第4-6位(非公共层) | 金融机构服务的对象和感兴趣进行分析的个人、商户。包含B、C参与人信息、风险等级等。 |
合约域 | Arrangement | ARR | 用于名称第4-6位(非公共层) | 是金融机构与客户之间针对某种特定产品或服务而签立的契约关系,包含契约关系中的各个角色,例如商户、终端、会员、门店、客户、账户、支付配置等。 |
产品域 | Product | PRD | 用于名称第4-6位(非公共层) | 是金融机构销售或提供的可市场化的产品、产品包和服务。例如理财产品、权益等。 |
资产域 | Asset | ASS | 用于名称第4-6位(非公共层) | 各种客户的资产(负债)信息,包括有形的和无形的各种客户资产/负债,也可以存储银行向外租赁的各种资产信息。例如预付费卡、理财台账、权益券、会员积分、基金份额等。 |
营销域 | Campaign | CMP | 用于名称第4-6位(非公共层) | 为了获取、维护、增强银行与客户的关系而开展的一些促销的活动。 |
事件域 | Event | EVT | 用于名称第4-6位(非公共层) | |
财务域 | Finance | FIN | 用于名称第4-6位(非公共层) | 总账科目、费用科目、资产科目等信息。 |
机构域 | Organization | ORG | 用于名称第4-6位(非公共层) | 是指金融机构的内部组织和业务单元。 |
公共层分类 | 主题域代码 | 缩写 | 备注 |
---|
参数表 | Parameter | P | 用于名称第4位(公共层) |
日志表 | Log | L | 用于名称第4位(公共层) |
配置表 | Configuration | C | 用于名称第4位(公共层) |
后缀 | 缩写 | 备注 |
---|
C端表 | C | C端表名后缀 |
B端表 | B | B端表名后缀 |