当前位置:   article > 正文

大数据最新银行数据仓库的架构(1),2024年大数据开发面试心得_银行数仓

银行数仓

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

数仓分层结构一般如下:
在这里插入图片描述

3.2 数仓分层详细介绍
3.2.1 贴源层:ODS(Operational Data Store)

ODS 层,是最接近数据源中数据的一层,为了考虑后续可能需要追溯数据问题,因此对于这一层就不建议做过多的数据清洗工作,原封不动地接入原始数据即可,至于数据的去噪、去重、异常值处理等过程可以放在后面的DWD 层来做。

3.2.2 数据仓库层:DW(Data Warehouse)

数据仓库层是我们在做数据仓库时要核心设计的一层,在这里,从ODS 层中获得的数据按照主题建立各种数据模型。DW 层又细分为DWD(Data Warehouse Detail)层、DWM(Data WareHouse Middle)层和DWS(Data WareHouse Servce) 层。

3.2.2.1 数据明细层:DWD(Data Warehouse Detail)

该层一般保持和ODS 层一样的数据粒度,并且提供一定的数据质量保证。DWD 层要做的就是将数据清理、整合、规范化、脏数据、垃圾数据、规范不一致的、状态定义不一致的命名不规范的数据都会被处理。同时,为了提高数据明细层的易用性,该层会采用一些维度退化手法,将维度退化至事实表中,减少事实表和维表的关联。另外,在该层也会做一部分的数据聚合,将相同主题的数据汇集到一张表中,提高数据的可用性。

3.2.2.2 数据中间层:DWM(Data WareHouse Middle)

该层会在DWD 层的数据基础上,数据做轻度的聚合操作,生成一系列的中间表,提升公共指标的复用性,减少重复加工。直观来讲,就是对通用的核心维度进行聚合操作,算出相应的统计指标。在实际计算中,如果直接从DWD 或者ODS 计算出宽表的统计指标,会存在计算量太大并且维度太少的问题,因此一般的做法是,在DWM 层先计算出多个小的中间表,然后再拼接成一张DWS 的宽表。由于宽和窄的界限不易界定,也可去掉DWM 这一层,只留DWS 层,将所有的数据再放在DWS 亦可。

3.2.2.3 数据服务层(主题层):DWS(Data WareHouse Service)

DWS 层为公共汇总层,会进行轻度汇总,粒度比明细数据稍粗,基于DWD 层上的基础据,整合汇总成分析某一个主题域的服务数据,一般是宽表。DWS 层应覆盖80% 的应用场景。又称数据集市或宽表。
按照业务划分,如主题域流量、订单、用户等,生成字段比较多的宽表,用于提供后续的业务查询,OLAP 分析,数据分发等。
一般来讲,该层的数据表会相对比较少,一张表会涵盖比较多的业务内容,由于其字段较多,因此一般也会称该层的表为宽表。

3.2.3 数据应用层:APP(Application)

在这里,主要是提供给数据产品和数据分析使用的数据,一般会存放在ES、PostgreSql、Redis 等系统中供线上系统使用,也可能会存在Hive 或者Druid中供数据分析和数据挖掘使用。比如我们经常说的报表数据,一般就放在这里。

3.2.4 维表层(Dimension)

如果维表过多,也可针对维表设计单独一层,维表层主要包含两部分数据:
高基数维度数据:一般是用户资料表、商品资料表类似的资料表。数据量可能是千万级或者上亿级别。
低基数维度数据:一般是配置表,比如枚举值对应的中文含义,或者日期维表。数据量可能是个位数或者几千几万。

4. 主题层主题域的划分
4.1国外主流的金融主题划分方案
4.1.1 Teradata FS-LDM 十大金融主题模型

Teradata 公司作为全球最大的专注于大数据分析、数据仓库和整合营销管理解决方案的供应商,并提出一种先进的 FS-LDM 模型(Financial Services Logcial Data Model),把银行约 80% 的业务数据囊括在该模型中。
Teradata FS-LDM 是一个成熟产品,在一个集成的模型内支持保险、银行及证券,包含十大主题:当事人、产品、协议、事件、资产、财务、机构、地域、营销、渠道。具体划分如下图所示:
在这里插入图片描述
在这里插入图片描述

4.1.2 IBM BDWM 九大金融主题模型

IBM 公司作为数据仓库和数据分析的“元老级”企业,为了对抗 Teradata 公司的 FS-LDM 模型,提出了 BDWM(Banking Date Warehouse Model)九大金融主题模型,主题模型分为参与人、合约、条件、产品、地点、分类、业务方向、事件和资源项目。具体划分如下图所示:

在这里插入图片描述
在这里插入图片描述

4.2金融主题层划分及建模思路

由上述的 FS-LDM 模型与 BDWM 模型,可以分析出以下共性:

1) 描述银行客户信息的主题;
2) 描述银行机构及员工信息的主题;
3) 描述银行产品信息的主题;
4) 描述银行与客户之间契约信息的主题;
5) 描述银行与客户资产信息的主题;
6) 描述客户使用银行服务时产生的行为信息的主题;
7) 描述银行与客户联系信息的主题。

由于 FS-LDM 模型偏向财务及营销方向,所以多出描述银行营销活动信息及财务风险信息的主题。而 BDWM 模型偏向银行环境及法规方向,所以多出描述银行环境信息及业务信息的主题。

结合上述两大金融模型及本地银行的数据环境,笔者建议以下优化点:

1)取消地域主题。地域主题来源于国外的邮寄销售业务,该业务是国外银行产品重要的引流及销售手段之一。但国内银行甚少开展邮寄销售业务,故地域主题重点描述的邮箱、电话、区域、地址等信息,都可以整合到客户主题内。

2)财务主题重点在总账数据。总账是银行的记账核心,总账数据一般存放在银行的核心系统或总账财务系统中。通过分析总账数据,可以分析出银行的经营状况、统计出银行的业务结构。同时通过汇总业务系统的账务数据,还可以进行以银行科目为维度的总分校验,保证余额信息的准确性。故财务主题的重点应为总账数据。

3)增加公共主题描述业务系统的码值与参数数据模型。业务系统的逻辑处理过程中,会产生大量的码值与参数,比如机构编码、状态编码、业务控制参数、节点配置参数等。这类数据对于识别数据的业务状态,及代码的中文含义,起到至关重要的作用,但这类数据跟已有的金融主题的关联性不强,故需单独增加公共主题进行建模管理。

最终,笔者认为 FDM 层的金融主题划分应划分为客户、产品、协议、事件、渠道、营销、内部机构、资产、财务、公共,具体如下图所示:
在这里插入图片描述

4.2.1 客户主题

银行的客户信息会在多个业务系统中进行登记,比如网上银行、手机银行等渠道系统,理财系统、信贷系统、核心系统等,且多个业务系统中保存的客户信息还大概率的不一致。这时,在使用客户信息时就会出现疑惑:以哪个系统的客户信息为准?多个业务系统的个性化客户信息如何整合?所以,建设统一客户视图管理是银行数据工作的重点。

建设统一客户视图管理一般实践方式为建设 ECIF(客户信息管理)系统,由 ECIF 系统整合各个业务系统的客户信息形成统一视图,为全行提供客户信息查询服务。假如行内未建设 ECIF 系统,亦应在数仓上建设统一客户视图的客户信息主题,替代 ECIF 系统为全行提供客户信息查询服务。落地统一客户视图关键是与全行业务部门约定好客户信息整合的优先级及更新规则,因为客户信息整合很可能会影响到客户经理的绩效,从而影响业务部门的绩效。确定业务规则并获得全行支持后,通过 ETL 手段每日提取业务系统的增量客户信息整合处理即可。
银行客户主要分为个人客户、对公客户及同业客户。客户主题的建模应对这三类客户进行单独建模,原因如下:

1)数据分析时很少对所有客户进行统一分析,更多的情景是分析每类客户的情况;
2)单独建模可以避免单表的数据量过大,加快统一视图的数据整合效率;
3)相似数据进行“求同存异”的整合时,必定存在大量字段空值的情况,既影响数据的存储也影响表的查询速度。
故,客户主题的建模思路如下所示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.2.2 产品主题

金融产品是银行经营的核心,也是银行与客户建立关系的纽带。金融产品主要分为以下类别:

1)负债类产品。负债类产品一般为存款类产品和理财类产品,主要用于银行吸纳客户的合法资金,再运用该资金进行信贷或资管类产品投资。客户“借钱”给银行后,银行会按照约定的利率或者收益率,计提利息或收益并返回给客户,所以负债类产品的利率或收益率是银行向客户“借钱”的成本。
2)资产类产品。资产类产品主要是信贷融资类产品,主要用于银行“借钱”给客户,并向客户按约定的利率或费率收取客户的利息或费用,从而产生利润。信贷融资类产品又分为:
a)零售信贷,比如购房贷款、汽车贷款、教育贷款等;
b)对公信贷,比如经营贷款、购货贷款、小微企业贷款等;
c)政策信贷,比如涉农专项贷款、绿色贷款、联合平台贷款等;
d) 票据融资,比如承兑汇票贴现、转贴现等;
e) 国际贸易融资,比如信用证、福费廷等。

当客户购买银行的资产类产品后,需要按约定支付银行利息或者费用,作为客户向银行“借钱”的资金成本。故银行资产类产品的收益率与负债类产品的息率之间的利差,就是银行传统业务的利润手段。

3)资管类产品。这里专指银行自营的资管类产品,比如债券、基金、信托等。银行通过募集客户资金或运营客户委托的资金进行投资,在为客户赚取收益的同时,收取资管管理费和分润投资产生的超额收益进行收益。

4)中间收入类产品。中间收入类产品属于银行非资金运营业务,通过收取客户的服务费进行收益。中间收入类产品主要分为代理业务,比如第三方存管、代理资管类产品、保险产品、债券产品等;和部分重要空白凭证开立,比如汇票开立、信用证开立、保函开立等。

5)银行卡产品。银行卡产品主要分为借记卡、准贷记卡和贷记卡。

借记卡是指发卡银行向持卡人签发的,没有信用额度,持卡人先存款、后使用的银行卡。

准贷记卡是指持卡人须先按发卡银行要求交存一定金额的备用金,当备用金帐户余额不足支付时,可在发卡银行规定的信用额度内透支的信用卡,但透支的部分自透支当天起计收利息,不享受免息期。

贷记卡即信用卡,是由商业银行或信用卡公司对信用合格的消费者发行的信用证明,持卡人可在发卡组织规定的信用额度内透支资金,且透支资金享有免息期。站在客户的角度,信用卡是一款可透支的支付工具;站在银行的角度,信用卡更像是一个客户运营的平台。虽然信用卡具备免息期,但是客户在使用信用卡进行提前消费的分期业务或者取现时,就是银行通过信用卡这个平台产生收益的时候。

产品主题应按同类产品进行单独建模,建模思路如下:
在这里插入图片描述

4.2.3 协议主题

协议主题是银行与客户之间针对某种特定产品或服务而签立的契约关系。当银行与客户之间针对某种产品或服务的条款和条件达成协议时,一个协议就会被开立,因此协议是客户和银行往来的重要载体。由于协议的类型繁多,如存款账户、贷款账户,如手机银行签约合同、贷款合同,如存折、银承汇票,都属于银行与客户间的协议,所以协议主题也是银行主题模型中最重要和复杂的一个主题。
协议信息主要分为三类:
a)银行账户,比如存款账户、贷款账户、理财账户等 ;
b)签约信息,比如网银签约、手机银行签约、贷款合同、担保合同等 ;
c)凭证,比如银行承兑汇票、支票、存折、存单等。
协议主题应按同类协议进行单独建模,建模思路如下所示:
在这里插入图片描述

4.2.4 事件主题

客户享受银行金融服务的过程中,会与银行产生大量的互动行为,这类互动行为就是客户与银行间的事件。事件按是否涉及钱财分为金融事件与非金融事件。
1)金融事件主要为客户与银行间发生的涉及资金的行为,包括存款、消费、取现、转账、批量代发,水电费用代缴等;
2)非金融事件主要为客户与银行间发生的无资金涉及的行为,包括账户余额查询、签约状态变更、操作日志等。
除了客户与银行间的事件,还有银行与银行间的资金清算事件,这一类事件就是支付结算流水。
故,事件主题具体建模思路如下所示:
在这里插入图片描述

4.2.5 渠道主题

当客户想要跟银行接触、购买产品、使用服务,互动交流时,必须通过一个触点来进行这个触点就是平常所说的渠道。渠道除了是银行业务入口,也是银行客户的流量入口,所以经营好银行渠道是业务增长其中一个关键点。
银行渠道主要分为三类:

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

697884)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/931834
推荐阅读
相关标签
  

闽ICP备14008679号