子房小语
首发于子房小语
数据仓库系列篇——唯品会大数据架构

数据仓库系列篇——唯品会大数据架构

What——大数据&数据仓库

什么是大数据?

* 广义的大数据是指:无法用现有的软件工具提取、存储、搜索、共享、分析和处理的、海量的、复杂的数据集合。业界通常用4个V(即Volume、Variety、Value、Velocity)概括大数据的特征——

一是数据体量巨大(Volume)。

二是数据类型繁多(Variety)。相对以往便于存储的、以文本为主的结构化数据,非结构化数据越来越多,包括网络日志、音频、视频、图片、地理位置信息等,这些多类型的数据,对数据的处理能力提出了更高要求。

三是价值密度低(Value)。以视频为例,一部1小时的视频,在连续不断的监控中,有用数据可能仅有1~2秒。如何通过强大的机器算法,更迅速地完成数据的价值“提纯”,成为目前大数据背景下亟待解决的难题。

四是处理速度快(Velocity)。这是大数据区分于传统数据挖掘的最显著特征。

什么是数据仓库?

数据仓库的概念创始人W.H.Inmon在《建立数据仓库》中定义:面向主题的、集成的、相对稳定的、随时间不断变化的数据集合,用以支持经营管理中的决策制定过程。数据仓库的目的,是构建面向分析的集成化数据环境,为企业提供决策支持。

大数据&数据仓库

现在大部分情况下其实大家说的是狭义的大数据,就是专门指处理大数据的新技术,新工具,例如分布式计算,分布式存储等。数据仓库是为企业提供决策支持的战略集合,而大数据是技术,是工具。

Why——为何要建设好数据仓库

大数据的运用,是金融得以快速发展的基础。而良好的数据仓库架构,可以协助这些应用快速实施,优化资源利用。

唯品金融在建设之初,就清楚地知道充分利用大数据的重要性。大数据的应用,体现在金融用户整个生命周期中——

在贷前阶段,通过对所有客户的分析和算法模型计算,我们分析哪些客户更有金融产品需求,有针对性地在广告资源和营销资源上进行重点投放;

在风控审核阶段,需要防止不符合要求的客户通过审核,基于大数据构建授信评分模型、欺诈模型来控制风险;

在营销阶段,需要识别高价值用户,利用大数据根据用户的浏览和购买行为,对用户进行画像描述,在运营广告位投放针对性的运营信息,促进用户的开通和使用;

在贷后管理阶段,根据客户的购买行为及还款行为,提前预测还款风险情况,提前沟通,使坏账始终维持在较低水平。

How——如何做好数据仓库分层

在现代数据仓库建设中,分层理论已得到广泛应用,它的价值包括但不限于:便于数据管理、清晰数据结构、便于数据血缘追踪、减少重复开发、简化复杂问题、屏蔽原始数据异常。

唯品金融的数据仓库,分为如下三层——基础层、中间层、应用层

1、基础层(DW)

基础层,也叫DW层,是最接近数据源中数据的一层。数据源中的数据,经过抽取、转换、加载(即ETL)之后,装入DW层。本层数据,大多是按业务系统的分类方式分类的,这样可以快速的和业务系统进行对应。

但是,这一层面的数据却不完全等同于业务原始数据。在源数据装入这一层时,要进行一定的清洗(例如去掉明显偏离正常水平的信息)、去重、提脏、业务提取、单位统一、砍字段(例如用于支撑前端系统工作但是在分析中不需要的字段,敏感信息字段)、业务判别等多项工作。

2、中间层(DM),是数据仓库的核心

从DW层中获得的数据,按照主题建立各种数据模型。中间层建设原则如下——

* 中性,共享:中间层的主题要足够抽象,不针对特定的应用而设计;

* 灵活,可扩展:当业务发生变化时易于扩展,适应复杂的实际业务情况;

* 稳定性强:能够在长时间内保持其稳定性,满足下游集市、分析、挖掘等的使用;

* 规范,易读:分主题进行模型设计,易于让使用人员理解和使用。

3、应用层(ST),这一层提供数据产品使用的结果数据

在这里,主要提供给数据产品和数据分析使用的数据,当然也有将集市层单独划分一个层次的设计,集市下面才是应用。我们之所以把集市划为应用,是因为集市与应用结合得非常密切,所有的预处理数据在DM层已处理好,集市层直接运用结果计算数据即可。

最终的应用一般会存放在redis、mysql等系统中,供线上系统使用,也可能会存在Hive或者hbase中,供数据分析和数据挖掘使用。 我们经常说的报表数据,一般放在这里。

总结

在互联网金融大数据建设中,数据分层建设是一个重要环节,它决定的不仅是一个层次的问题,还直接影响到后续血缘分析、特征自动生成、元数据管理等一系列建设。层级划分精简,减少了数据处理流程,弱化了传统数据仓库数据模型设计的规范限制。能够快速构建大数据生产系统、响应业务分析需求、迭代大数据分析能力、适应互联网公司业务发展节奏。但在建设之初,一定要把架构搭好,并做好数据源管理,且充分了解行业发展。

本文分享了笔者对唯品金融数据仓库的设计思路,未必适合所有行业公司。但方法是灵活的,理念是共通的,欢迎感兴趣的朋友,分享心得,交流经验。


下面是我的公众号(子房小语),如果想进入互联网行业,可协助帮忙内推,同时也欢迎对互联网行业感兴趣的同学一起交流学习。也想大家推荐一下hbase相关学习,大家工作学习遇到HBase技术问题,把问题发布到HBase技术社区论坛hbase.group,欢迎大家论坛上面提问留言讨论。想了解更多HBase技术关注HBase技术社区公众号:(hbasegroup),非常欢迎大家积极投稿。

编辑于 2018-09-21

文章被以下专栏收录

    在这里您了解互联网金融、大数据相关知识;同时也可以了解生活中的一些感悟,仍然在学习的路上继续努力着,希望把自己的正能量传递给更多的人。