一、怎么正确理解数据集市
举个例子:
数据集市就像宜家楼上的展厅,这是一个面向最终用户的数据市场,在这里,数据(家具)以一种更加容易被业务人员接受的方式组合在一起,这些组合方式可能是多变的,因为业务人员的需求是多变的,因此我们需要定期调整集市的计算口径(展厅的陈列方式),经常会创建新的数据集市(装修新的展厅)。
数据集市源起:
美国数据交易产业是在数据经纪产业的基础上发展起来的,数据集市也延续了互联网发展早期的数据经纪商的角色。该术语来源于Armstrong 和Durfee的研究成果,他们认为信息集市是由许多从事信息内容和服务买卖的代理人组成,并模拟了数字图书馆联盟的信息交易活动。
再回归到基本定义来看:
数据集市(Data Mart) ,也叫数据市场,数据集市就是满足特定的部门或者用户的需求,按照多维的方式进行存储,包括定义维度、需要计算的指标、维度的层次等,生成面向决策分析需求的数据立方体。
数据集市本质上是一个数据交易市场,既然是市场就存在供需,需求即终端用户对数据的直接需求,供应即满足用户需求特点的数据立方体。集市数据来源是全企业范围的数据库、数据仓库中抽取出来的体系化数据。
数据集市可以分为两种:
一种是独立数据集市(independent data mart),这类数据集市有自己的源数据库和ETL架构;
一种是非独立数据集市(dependent data mart),这种数据集市没有自己的源系统,它的数据来自数据仓库。当用户或者应用程序不需要/不必要/不允许用到整个数据仓库的数据时,非独立数据集市就得为用户提供一个具备数据仓库功能的"子集"。
数据集市的特征主要有:
面向部门;
有特定的应用主题;
由业务部门定义、设计和开发;
业务部门管理和维护。
二、数据集市到底有哪些功能
我们以极限大数据交易服务的模式探讨就更为直接理解其“集市”的含义,如图所示
数据集市以数据价值为导向,基于自身的技术优势,向上溯及数据资源链条,向下延伸至用户服务、大数据应用环节,逐步建立起基于“数据价值链”的数据服务流程。
其数据价值分三层功能实现:
1、数据层
数据层是数据集市提供数据交易服务的基础,实现大数据资源的多源采集和获取。线下数据、互联网数据、政府数据以及企业在主营业务中产生的行业数据是数据集市的主要数据来源,众包、采购、网络爬取、授权代理和外部合作是其主要的数据获取方式。如金融和经济数据交易平台 Quandl 通过网络爬虫、众包和社区的贡献积累数据; 数据堂基于众包平台采集了海量的线下数据资源; 贵阳大数据交易所与超过 500 家企业签约,使他们成为数据交易会员; 数多多依靠八爪鱼网络数据爬取平台上每天成千上万用户产生的亿级数据作为支持。
2、处理层
处理层是数据集市提供数据交易服务的关键,实现数据清洗、脱敏、标准化、结构化和数据
融合等。受限于数据质量等原因,原始数据不能被直接交易,必须经过特定处理才能转化为数据资产,因此,数据处理是数据服务流程的关键。
如美国的位置数据提供商 Factual 对全球地点数据进行采集,包括数千万个地点的商业设施的名称、地址、电话、分类、经纬度、工作时间、网站、电子邮件等各类数据,并基于对地理信息的深刻理解,在广告投放和市场营销方面为用户提供帮助; 九次方大数据为政府不同部门提供底层数据的抽取、清洗、建模和分析服务; 数据堂依托大数据处理平台和众包标注平台,使原始数据成为标准化、可应用、可交易的数据产品; 贵阳大数据交易所根据需求方要求,对数据进行清洗、分析、建模及可视化等操作之后再出售。
3、服务层
服务层是数据集市提供数据交易服务的最终实现,为用户提供各种数据服务支持。用户的数据需求得以满足后,可以通过大数据分析、深度挖掘、转移应用等方式发现新的数据价值。目前,按交易对象和形式划分,数据集市的服务方式主要有3种:
基础数据及数据产品交易,如数据堂、数多多等;
满足在线数据调用需求的 API 云服务,如千数堂、聚合数据等;
大数据分析结果的交易,如贵阳大数据交易所等。
三、数据集市与数仓的区别
Bill Inmon说过一句话叫“IT经理们面对最重要的问题就是到底先建立数据仓库还是先建立数据集市”,足以说明搞清楚这两者之间的关系是十分重要而迫切的!
数仓和数集的关系类似于工厂和门店的关系。存在三大差异:
1、定位差异
数据仓库在底层,涵盖企业范围内的各类领域数据,能为整个企业各个部门的运行提供决策支持手段,是数据统一整洁仓管;而数据集市在服务层,它要与用户需求进行直接交互聚焦于、各类主题服务区域,服务于特定的数据需求。
2、服务差异
数据集市可以在一定程度上缓解访问数据仓库的瓶颈、面向客制化的数据服务应用,因此是广义数仓中被抽离出的一部分,面向实时的、高并发分析;数仓则重点解决海量数据统计分析、低用户并发、大量计算。
数据集市聚焦具体领域,要满足低延时、高并发的数据查询要求,可以7×24 对外提供数据服务,且不影响原有数据仓库统计分析应用的正常运行。大量生产数据的预处理在数仓进行,数据集市接收数仓预处理后的数据。
数据集市是对数仓的补充,灵活、快速响应业务,支持用户部门自行定制数据进行统计分析,支持高并发、性价比较高。
3、建模差异
a、数据仓库的建模
确保提供的数据简单性以及历史数据的集成和联合性是数仓建模应具备的关键原则。要由企业IT部门或者DT部门的数据专家进行统一组织设计。
b、数据集市的数据建模
数据集市的建模是由业务需求驱动的。数据集市模型对于捕获业务需求十分有用,数集提供的数据服务必须是有业务价值的,否则不应该存在。
数据集市的建模是终端用户发起的。终端用户必须参与数据集市的建模过程,他们是数据集市的需求发起方,也即是否有价值的关键评判者,而不是IT或DT部门自己。
数据集市的建模不是数据技术专家依据相关数据标准收集的,它受行业业务经验以及数据分析技术的影响。数据分析技术可以影响所选择的数据模型的类型及其内容。目前,有几种常用的数据分析技术:查询和报表制作、多维分析以及数据挖掘。