一个数据仓库转型者眼中的数据挖掘

一个数据仓库转型者眼中的数据挖掘

对于大多数非从业者或者初学者来说,数据仓库(Data Warehousing)与数据挖掘(Data Mining)是很容易混淆的两个概念。有个形象的比喻说:如果把数据仓库比做一个大型的矿坑,那么数据挖掘就是入坑采矿的工作,数据挖掘需要有非常好的数据基础,没有丰富完整的数据,是挖掘不出好内容的。数据仓库可以说是数据挖掘最理想的地基。

笔者从事数据仓库BI行业多年,先给各位简单介绍一下什么是数据仓库。
数据仓库
要将非常庞大又复杂的数据转化成有用的信息,首先需要做的是有效率地收集数据,于是数据仓库应运而生。数据仓库是一个环境,而不是一件产品;数据仓库是面向主题的、集成的、相对稳定的、随时间不断变化(不同时间)的数据集合,提供用户用于决策支持的当前和历史数据。数据仓库技术是为了有效的把操作型数据集成到统一的环境中,以提供决策型数据访问的各种技术和模块的总称。
数据仓库的数据全部来源于外部,它本身并不“生产”任何数据,同时自身也不需要“消费”任何数据。在数据架构上面,数据仓库通常采用层次化的模型架构,这种模式成本最低,基础数据和应用指标的一致性最好,以某银行数据仓库逻辑架构设计为代表:

第一层为贴源/标准数据层:这一层为“数据缓冲层”,在这一层中主要保存最原始的贴源数据,有些设计会将数据的清洗及标准化操作也放到这一层中,用以保证不同系统的数据在数据结构标准方面保持统一,如性别、日期、行业代码等。另一些设计则不在这一层对数据进行哪怕最基础的清洗及格式化等工作,确保数据的贴源一致性,由后面的数据需求方自己处理。
第二层为主题数据层:这一层为数据仓库的核心层,涵盖内容包括多个数据来源的数据整合、分类体系和业务实体的统一、不同系统数据关联关系搭建等,形成客户、机构、协议、事件、产品等不同的主题,为后续的数据使用奠定基础。建设数据仓库主题区对于提高竞争力、提高服务性收入并有效规避各种风险有其重要意义。例如:基于客户主题可快速、准确寻找出潜在客户及各类型、资产规模、年龄段客户的资产状况和偏好,从而有效制定营销策略吸引更多客户在银行开办更多的业务,提高营业收入和服务收入;基于机构主题勾勒出我行账务机构及管理机构之间的层级关系,便于内部管理,可从不同角度、不同层级查看机构架设是否合理,查看机构变迁历史;基于协议主题能更清晰明了看出客户的资产变化情况和当前存贷款规模、现状,能更有效规避风险等。
第三层为数据汇总层/数据集市层,在这一层中通常会建立针对某些业务领域作更深层次的指标体系分析。数据集市以主题数据层为基础,但不再面向全行数据,而主要面向部门级业务,并且只面向某个特定的主题,如建设对公数据集市,是为满足对公业务管理需要,支持最新的对公业务管理方针,通过整合对公客户的数据信息,进一步分析对公客户的价值信息,更好的支持公司业务客户营销、管理分析工作的开展。
总而言之数据仓库可以看做一个非常大的数据库,它存储着由各个源头数据库中抽取过来的数据,然后利用这些数据更有效率的给公司的决策者提供决策支持。其中,转换及整合数据的过程是整个数据仓库建立遇到的最大挑战,需要将杂乱的数据按照各主题转换成有用的策略数据是数据仓库的重点。数据仓库通过把所有的数据放在一个地方,方便存取的同时,极大的减少了重复的数据处理和分析,实现数据文件统一出口。
当笔者转型、真正来到一个数据挖掘的团队,在一大堆统计学硕博身边熏陶了一段时间后,我理解的数据挖掘是这个样子的:
数据挖掘
数据挖掘是综合了统计分析、人工智能、机器学习、数据库等诸多方面的研究成果而成,用一个人大统计硕士同事的说法:从某方面来讲其实数据挖掘是从大量的数据中提取隐含在其中的、人们事先未知但又是潜在有用的信息和知识的过程。
数据挖掘的结果是事先未知的,这与固定报表有着本质的区别,虽然固定报表应用模式已经存在很多年,由于其非常简单明了直观的特点,现在依然是各行业内部各级管理人员分析数据应用形态的主力,但固定报表首先得知道报表的样式,这是一个查证假设的过程,而数据挖掘是用来帮助使用者产生假设,用工具帮助使用者做探索。
数据挖掘是一个过程,而不是一个技术,它更偏重于实际应用,所以数据挖掘不能只是知道挖掘算法等技术,更需要实现具体的业务目标,只有落地到现实的业务中才能体现数据挖掘的价值,因此业务目标是数据挖掘的核心。在数据挖掘项目的实现过程中,挖掘出来的数据仅能表示现实世界的一部分,数据和现实世界之间是有差距的,只有业务知识可以弥补这一差距,从业者需要丰富的业务知识才能够解释数据中发现的相关结论,业务知识是数据挖掘的基础,好的数据挖掘者需要有深厚的行业业务功底。
数据挖掘有一个著名的格言论调,我的博士领导也经常提到这段话,数据挖掘项目中最费力的是数据的获取与预处理,其占用整个项目的时间高达60%-80%。在笔者了解的几个项目中实际情况也确实如此。数据预处理的目的是把数据挖掘问题转化为格式化的数据,使各项分析技术挖掘算法更容易去使用它。一般的数据处理有两种办法,一种是将数据转化成完全结构化的基础分析数据,根据对应算法可能需要的数据形式,将数据转化成合格的格式。第二种是将尽可能多的业务问题涉及的数据都涵盖进来,然后找到合适的技术解决方案来实现挖掘的结果。但数据会随着清洗、转换、数据量变化而相应发生变化,这种分析只能是探索性的。因此,即使有一个非常成熟的数据仓库,但数据预处理仍然是必不可少的,它仍然要占用数据挖掘项目一半以上的时间。
数据挖掘的过程同样也是一个不断试验、不断试错的过程,一个正确的模型只有通过不断的试验才能被发现,在数据挖掘的过程中会经常发现一个算法对某一个数据集是合适的,但是对另一个数据集又是不利的,没有一个算法是适合每一个问题的。因此数据挖掘就是一个方法不合适再试用其他方法的过程,但是在有条件的限制约束下,比如业务目标比较稳定、数据变化相对规律的情况下,一个可接受的算法或算法组合是可以解决问题的。http://www.cda.cn/view/17579.html
数据挖掘与数据仓库之间的关系
数据挖掘可以说是从数据仓库中发现并提取隐藏在其中有用信息的一种过程。数据挖掘就是从大量数据中挖取数据的过程,而数据仓库就是汇集所有相关数据的一个过程,数据仓库为数据挖掘提供了更好的、更广泛的数据源。当然,在有些情况下,数据仓库并没有建立起来,但是数据挖掘工作还是可以依托业务源数据先行的,只是在挖掘数据预处理阶段去整合多个源系统的数据源时可能工作量会增大,效率也肯定不如从数据仓库中取数要高,因为数据仓库中的数据是经过预处理的结构化数据,能够为数据挖掘提供非常好的支持平台,同样数据挖掘也对数据仓库的构建提出了更高的要求,两者是互相促进的。

转载于:https://www.cnblogs.com/amengduo/p/9587500.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/395973.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql的告警日志_运维日记|MySQL关于aborted告警日志的分析

又是一个季度一次的现场巡检,期待数据库能跑的又快又稳,毕竟这是对DBA最大的馈赠了。​结果不遂人意发现在错误日志内存在大量的如下报错:查看当前数据库的状态值:查看数据库关于数据库会话的关键参数:数据库环境及相关…

2017年Spring发布了30个新的Android库,值得您关注

by Michal Bialas由Michal Bialas 2017年Spring推出的30个最酷的Android库 (The 30 Coolest Android Libraries from Spring 2017) These are my 30 favorite new Android libraries that have come out since March 2017. Some of them aren’t production ready yet, but yo…

《异构信息网络挖掘: 原理和方法(1)》一第2章 基于排名的聚类

本节书摘来自华章出版社《异构信息网络挖掘: 原理和方法(1)》一书中的第2章,作者[美]孙艺洲(Yizhou Sun)韩家炜(Jiawei Han),更多章节内容可以访问云栖社区“华章计算机”…

html怎样将单元格的字竖式,数学竖式计算的标准格式是怎样的?需要注意哪些问题?...

小学阶段数学计算题是重中之重,也是为日后打基础的时间段,所以在小学的时候,要让孩子熟练掌握数学计算。数学计算在这段时期一般比较简单,通常情况下学生可以采用口算、心算的形式,但是有的学生因为这两个能力不强。于…

Windows类标识符及其妙用

Windows类标识符 百度百科这样解释: Windows的类标识符class identifier也称为CLASSID或CLSID,是与某一个类对象相联系的唯一标记(UUID)。一个准备创建多个对象的类对象应将其CLSID注册到系统注册数据库的任务表中,以使客户能够定位并装载与该…

mysql用创建的用户登陆并修改表格_MySQL 基础学习二:创建一个用户表,并增删改查...

MySQL 基础学习二:创建一个用户表,并 增删改查提示:MySQL 命令建议都用大写,因为小写运行时,还是翻译成大写的。第一步,创建一个用户表1,打开控制台,进入数据库C:\Users\Administrator>MySQL -u root -p2,查看有什么数据库MySQ…

《软件工程(第4版?修订版)》—第1章1.5节 系统的方法

本节书摘来自异步社区《软件工程(第4版?修订版)》一书中的第1章1.5节 系统的方法,作者【美】Shari Lawrence Pfleeger , 【加】Joanne M.Atlee,更多章节内容可以访问云栖社区“异步社区”公众号查看。 1.5 系统的方法软件工程&am…

2-2 用Python爬取银河演员网上的演员参演电影的信息进行抓取

脚本中用到的actors_use.csv为之前从豆瓣上抓取的演员列表。 1 galaxyactors.py2 # -*- coding: utf-8 -*-3 #该脚本可以按照文件actors_use.csv中给出的演员的姓名4 #对银河演员网http://www.8fkd.com/上的演员参演电影的信息进行抓取5 #信息包括演员参演电影和电影日期&#…

在c语言中,以r方式不能打开并不存在的文件,C语言文件选择题

C语言文件选择题(答案在最后)1、标准库函数fgets(s,n,f)的功能是A) 从文件f中读取长度为n的字符串存入指针s所指的内存B) 从文件f中读取长度不超过n-1的字符串存入指针s所指的内存C) 从文件f中读取n个字符串存入指针s所指的内存D) 从文件f中读取长度为n-1的字符串存入指针s所指…

动脑2017android_您肯定要在2017年初尝试的25个新Android库

动脑2017androidby Michal Bialas由Michal Bialas 您肯定要在2017年初试用的25个Android库 (25 Android libraries you definitely want to try out in early 2017) This is a list of 25 best Android libraries released in January and February 2017. All of these are wo…

linux中安装多个mysql_liunx系统下安装多个MySql数据库并做主从配置

在网上搜索了很多资料,都没有看到像样的文档,思路不是很清晰,对第一次安装的朋友来说较为困难,经过长时间的安装尝试和查询网上零碎的知识点,终于成功的完成Linux系统下多MySql数据库安装和主从配置,现在分…

034_nginx报错总结

一、nginx: [emerg] "client_header_timeout" directive is not allowed here in /opt/nginx/conf/vhost.d/newton-api.uuwatch.com.conf:24 location / { client_body_timeout 5s;client_header_timeout 3s; #配置参数报错proxy_set_header X-Forwarded-For …

江苏省高等学校计算机一级成绩查询,江苏计算机一级考试成绩查询

想要了解江苏2020年9月计算机一级考试成绩查询入口的小伙伴快来看看吧!下面由出国留学网小编为你精心准备了“江苏2020年9月计算机一级考试成绩查询入口公布”,持续关注本站将可以持续获取更多的考试资讯!江苏2020年9月计算机一级考试成绩查询…

Linux中mongodb安装和导出为json

采用官方工具导出mongo数据为json格式 文档:https://docs.mongodb.com/manual/reference/program/mongoexport/ 可以远程导出,只要有host:port即可。 首先需要安装tools: 在redhat中: 文档:https://docs.mongodb.com/manual/tutor…

《树莓派实战秘籍》——1.17 技巧17添加重启按钮

本节书摘来异步社区《树莓派实战秘籍》一书中的第1章,第1.17节,作者:【美】Ruth Suehle ,Tom Callaway,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.17 技巧17添加重启按钮 树莓派实战秘籍也许你已经注意到Pi缺少了某…

dns是指网络域名系统_域名系统(DNS)是Internet的骨干。 这就是全部的运作方式。...

dns是指网络域名系统by Nikolas ODonnell由Nikolas ODonnell 域名系统(DNS)的工作方式以及如何使其变得更好。 (How the Domain Name System (DNS) works and how you can make it better.) The Domain Name System (DNS) is often referred to as the backbone of the intern…

07.敏捷项目管理——推测阶段笔记

00.推测阶段关注产品很项目——创造和理解产品结构、性能和故事功能清单以及发布计划。 01.发布计划会用到与产品规格、平台结构体系、资源、风险分析、业务约束以及目标进度等信息。 02.迭代计划和开发方法有两个至关重要的组成部分——短期迭代时间框和功能。 03.产品经理控制…

mysql临时关闭索引功能_MySQL优化之索引优化

$1.WHY : 找到MySQL Query执行慢的原因1.1 EXPLAIN通过Explain查看SQL Query语句的执行情况&#xff0c;从中找出导致MySQL查询性能差的原因EXPLAIN QUERY语句【字段解释】<1> id -- 表的读取顺序id相同时&#xff0c;按照从上至下的顺序执行id不同时&#xff0c;id值越…

Maven实战. 1.3Maven与极限编程

1.3Maven与极限编程 极限编程&#xff08;XP&#xff09;是近些年在软件行业红得发紫的敏捷开发方法&#xff0c;它强调拥抱变化。该软件开发方法的创始人Kent Beck提出了XP所追求的价值、实施原则和推荐实践。下面看一下Maven是如何适应XP的。 首先看一下Maven如何帮助XP团队实…

python 下字符串格式时间比较

python 下有多个有关时间的模块&#xff0c;分别是time、datetime、calendar&#xff0c;今天重点讨论下time写法。 其中time模块&#xff0c;主要有以下方法&#xff1a; ltimetime.time() 获取当前系统时间&#xff0c;返回float型数值时间戳&#xff08;当前时间相对于1970.…