`
qindongliang1922
  • 浏览: 2146997 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:116317
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:124587
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:58449
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:70347
社区版块
存档分类
最新评论

大数据,怎么搞?

阅读更多



随着大数据的爆红,数据分析师这个职位也得到了越来越多的关注,千千万万懂些大数据技术的少年们都渴望成为高大上的“大数据科学家”,可是,你们真的准备好了吗?


1、最早的数据分析可能就报表        目前很多数据分析后的结果,展示的形式很多,有各种图形以及报表,最早的应该是简单的几条数据,然后搞个web页面,展示一下数据。早期可能数 据量也不大,随便搞个数据库,然后SQL搞一下,数据报表就出来了。但是数据量大起来怎么分析呢?数据分析完了怎么做传输呢?这么大的数据量怎么做到实时 呢?分析的结果数据如果不是很大还行,如果分析的结果数据还是很大改怎么办呢?这些问题在这篇文章中都能找到答案,下面各个击破。

2、要做数据分析,首先要有数据        这个标题感觉有点废话,不过要做饭需要食材一样。有些数据时业务积累的,像交易订单的数据,每一笔交易都会有一笔订单,之后再对订单数据作分 析。但是有些场景下,数据没法考业务积累,需要依赖于外部,这个时候外部如果有现成的数据最好了,直接join过来,但是有时候是需要自己获取的,例如搞 个爬虫爬取网页的数据,有时候单台机器搞爬虫可能还爬不完,这个时候可能就开始考虑单机多线程爬取或者分布式多线程爬取数据,中间涉及到一个步骤,就是在 线的业务数据,需要每天晚上导入到离线的系统中,之后才可以进行分析。

3、有了数据,咋分析呢?        先将数据量小的情况下,可能一个复杂的SQL就可以搞出来,之后搞个web服务器,页面请求的时候,执行这个SQL,然后展示数据,好了,一个最简 单的数据分析,严格意义上讲是统计的分析。这种情况下,分析的数据源小,分析的脚本就是在线执行的SQL,分析的结果不用传输,结果的展示就在页面上,整 个流程一条龙。

4、数据量大了,无法在线分析了,咋办呢?        这个时候,数据量已经大的无法用在线执行SQL的形式进行统计分析了。这个时候顺应时代的东西产生了(当然还有其他的,我就知道这个呵呵),数据离 线数据工具hadoop出来了。这个时候,你的数据以文件的形式存在,可能各个属性是逗号分隔的,数据条数有十几个亿。这时候你可能需要构建一个 hadoop集群,然后把自己的文件导入到集群上面去,上了集群之后,文件就是HDFS的格式了,然后如果要做统计分析,需要写mapreduce程序, 所谓的mapreduce程序,就是实现map和reduce的接口,按照自己的业务逻辑写分析流程,之后把程序打成jar包上传到集群,之后开始执行。 分析后的结果还是文件的形式产生。

5、分析个数据还要写java代码是不是效率低了点        这个确实是,mapreduce的程序,本身的可测性没有执行一个简单的单元测试来的爽,所以效率确实不高。这个时候,hive出现 了,hive是一个数据仓库分析的语言,语法类似于数据库的SQL,但是有几个地方是不同的。有了hive之后,数据分析就好之前写SQL一样了,按照逻 辑编写hive SQL,然后控制台执行。可能最大的感觉是,数据库的sql很快就能有结果,但是hive的,即使很小的一个数据分析,也需要几分钟时间。构建hive, 需要在hadoop的集群上,原理很简单,就是把文件构建成表的形式(有一个数据库或者内存数据库维护表的schema信息),之后提交写好的hive sql的时候,hadoop集群里面的程序把hive脚本转换成对应的mapreduce程序执行。这个时候,做离线的数据分析简单写脚本就行了,不用再 搞java代码,然后上传执行了。

6、数据产生的结果,怎么搞到线上提供服务的数据库中呢?        这个时候分析的结果有了,可能是一个很宽很长的excel表格,需要导入到线上的数据库中,可能你想到了,如果我的数据库是mysql,我直接执行 load 命令就搞进去了,哪有那么麻烦。但是数据源可能有多了,mysql/oracle/hbasefs 按照笛卡尔积的形式,这样搞要搞死程序员了。这个时候datax(已经开源)出现了,能够实现异构数据源的导入和导出,采用插件的形式设计,能够支持未来 的数据源。如果需要导数据,配置一下datax的xml文件或者在web页面上点击下就可以实现了。


7、离线分析有时间差,实时的话怎么搞呢?        要构建实时的分析系统,其实在结果数据出来之前,架构和离线是截然不同的。数据时流动的,如果在大并发海量数据流动过程中,进行自己的业务分析呢? 这里其实说简单也简单,说复杂也复杂。目前我接触过的,方案是这样的,业务数据在写入数据库的时候,这里的数据库mysql,在数据库的机器上安装一个程 序,类似JMS的系统,用于监听binlog的变更,收到日志信息,将日志信息转换为具体的数据,然后以消息的形式发送出来。这个时候实现了解耦,这样的 处理并不影响正常的业务流程。这个时候需要有个Storm集群,storm集群干啥事情呢?就一件事情,分析数据,这个集群来接收刚才提到的JMS系统发 送出来的消息,然后按照指定的规则进行逻辑合并等计算,把计算的结果保存在数据库中,这样的话,流动的数据就可以过一遍筛子了。


8、分析的结果数据特别大,在线请求这些结果数据数据扛不住了,咋搞?        一般的结果数据,数据量没有那么大,也就几十万的样子,这样的数据级别,对于mysql这样的数据库没有任何压力,但是这个数据量如果增加到千 万或者亿级别,同时有复杂的SQL查询,这个时候mysql肯定就扛不住了。这个时候,可能需要构建索引(例如通过lucene来对于要检索的字段添加索 引),或者用分布式的内存服务器来完成查询。总之,两套思路,一个是用文件索引的形式,说白来就是空间换时间,另外一种是用内存,就是用更快的存储来抗请 求。


9、在线的数据库,除了mysql、oracle之外,还有其他选择不?        其实目前大家的思维定势,往往第一个选择就是oracle或者mysql,其实完全可以根据场景来进行选择,mysql和oracle是传统的 关系型数据库,目前nosql类的数据库也很多,例如HBase就是其中一个重要的代表。如果数据离散分布比较强,且根据特定的key来查询,这个时候 HBase其实是一个不错的选择。


10、空间的数据怎么分析?        上面的分析大都是统计维度的,其实最简单的描述就是求和或者平均值等,这个时候问题来了,大数据量的空间数据如何分析呢?对于我们电子商务而言,空 间数据可能就是海量的收货地址数据了。需要做分析,第一步就是先要把经纬度添加到数据中(如果添加经纬度,这个可以搞http的请求来通过地图服务提供商 来或者,或者是根据测绘公司的基础数据来进行文本切割分析),之后空间数据是二维的,但是我们常见的代数是一维的,这个时候一个重要的算法出现 了,geohash算法,一种将经纬度数据转换为一个可比较,可排序的字符串的算法。然后,这样就可以再空间距离方面进行分析了,例如远近,例如方圆周边 等数据的分析。


11、上面这些仅仅是统计,如果想搞算法或者挖掘之类的,怎么搞呢?        上述的分析,大多数是统计分析,这个时候如果想高一点高级的,例如添加一个算法,咋搞呢?其他复杂的算法我没咋接触过。将拿一个我练过手的算法来讲 吧。逻辑回归,如果样本数据量不是很大,可以采用weka来做了个回归,获得一个表达式,然后在线上系统中应用这个表达式,这种类似的表达式获取对于实时 性要求不是很高,所以公式每天跑一次就行了。如果数据量比较大,单机的weka无法满足需求了,可以将weka的jar包集成在系统中分析,当然也可以通 过hadoop中的mahout来进行离线分析,获取这个表达式。


12、我就是想离线分析数据,但是受不了hive或者hadoop的速度,咋搞?        其实搞过一段时间hadoop的人肯定有一点不爽,就是离线分析的速度太慢了,可能需要等很久,这个时候spark出现了,他和hadoop类似, 不过由于是内存中计算,所以速度快了很多,底层可以介入HDFS的文件系统,具体我没有使用过,但是公司内部一个团队目前已经用spark来进行分析了。

13、这就是搞大数据了?        有了这些工具就是搞大数据了?答案肯定不是,这个仅仅是工具罢了。真正搞大数据的可能在于思维的变化,用数据来思考,用数据来做决定。目前的无线和大数据啥关系?我觉得无线的终端是数据的来源和消费端,中间需要大数据的分析,两者密不可分啊



14,注意大数据,和数据大是二码事,如何利用海量的数据并结合互联网思维来挖掘出各种有价值的信息,才是真正的大数据。


扫码关注微信公众号:我是攻城师(woshigcs),如果有什么疑问,技术问题,职业问题或求职问题,等,欢迎在公众号上留言与我探讨!让我们做不一样的攻城师!谢谢大家! 





  • 大小: 184.1 KB
  • 大小: 26.4 KB
14
18
分享到:
评论
18 楼 a545807638 2016-03-14  
  
17 楼 from_null 2015-01-08  
不错,循序渐进,通俗易懂。
16 楼 qindongliang1922 2015-01-08  
gao_xianglong 写道

15 楼 qindongliang1922 2015-01-08  
小鱼不爱水 写道
[size=x-small]博主的每个层次言简意赅,通俗易懂,这是iteye上不可多得的文章,真心赞了,恢复至为收藏![/size]

多谢支持!
14 楼 gao_xianglong 2015-01-08  
13 楼 小鱼不爱水 2015-01-08  
[size=x-small]博主的每个层次言简意赅,通俗易懂,这是iteye上不可多得的文章,真心赞了,恢复至为收藏![/size]
12 楼 qindongliang1922 2015-01-07  
daiyongcai 写道

11 楼 qindongliang1922 2015-01-07  
daiyongcai 写道

10 楼 daiyongcai 2015-01-07  
9 楼 qzy927513 2015-01-07  
单个不复杂,形成一个应用生态圈就复杂了
8 楼 qindongliang1922 2015-01-07  
airball 写道

 
7 楼 airball 2015-01-07  
6 楼 qindongliang1922 2015-01-07  
fm395728572 写道
思维和工具相结合,会产生意想不到的效果

正解
5 楼 fm395728572 2015-01-07  
思维和工具相结合,会产生意想不到的效果
4 楼 qindongliang1922 2015-01-07  
arong 写道
嗯,这玩意是有点复杂。

其实只看一个hadoop,并不复杂,但是一系列的生态系统综合起来,就比较丰富了,你认为呢?
3 楼 arong 2015-01-07  
嗯,这玩意是有点复杂。
2 楼 qindongliang1922 2015-01-07  
ll0180 写道
稍微明白了点!!!

慢慢来,加油!
1 楼 ll0180 2015-01-07  
稍微明白了点!!!

相关推荐

    怎么搞个大数据平台?

    从“存储系统”、“处理系统”和“分析方法”来看大数据平台IntetixFoundation(英明泰思基金会)由从事数据科学、非营利组织和公共政策研究的中国学者发起成立,致力于通过数据科学改善人类社会和自然环境。...

    大数据能否取代统计学?.docx

    其实说来很奇怪,为什么站在风口浪尖上的不是奔驰宝马特斯拉这样的汽车公司,而是Google这样一个搞搜索引擎的公司呢? 其实之前我们已经讨论过了:智能时代的核心是大数 ,而大数据的核心是如何将传统的模型驱动...

    数据仓库和大数据的区别?.pdf

    数据仓库和⼤数据的区别? 数据仓库和⼤数据的区别? 数据仓库简单理解是⼀套软件解决⽅案,作⽤... 我理解题主是把两个概念搞混了。数据仓库是容器,对应的新的容器是数据湖,⽽不是⼤数 据。⼤数据是数据湖⾥的数据。

    [详细完整版]身边的大数据.doc

    在时装界有个大品牌叫Prada,它在纽约的旗舰店最近几年就搞了一个小改革,每一件 衣服上都有一个芯片,当这件衣服被拿到试衣室的时候,试衣室有一个记录仪,就记录 一次,说明这件衣服进过试衣室,但这件衣服是不是...

    淘宝大数据案例.docx

    马云说:互联网还没搞清楚的时候,移动互联就来了,移动互联还没搞清楚的时候,大数据就来了。近两年,"大数据"这个词越来越为大众所熟悉,"大数据"一直是以高冷的形象出现在大众面前,面对大数据,相信许多人都...

    大数据项目如何落地之路线图探讨

    需要有一个良好的开端,即做好数据规划阶段的各项工作,具体包括:战略意图:在这个阶段,要明确战略意图,这个战略意图需要在相关干系部门之间达成一致和共识,换句话说就是为什么要搞这个大数据项目?战略规划:...

    shell脚本-大数据

    shell脚本-大数据

    大数据云图:如何在大数据时代寻找下一个大机遇 【EPUB】

    例如航空公司要利用数据弄清楚给机票定什么价位,银行要利用数据搞清楚该贷款给谁,信用卡公司则利用数据侦破信用卡诈骗。但是直到最近,数据,或者用现今的说法就是大数据,才真正成为我们日常生活的一部分。这是...

    我身边的大数据作文.docx

    在时装界有个大品牌叫Prada,它在纽约的旗舰店最近几年就搞了一个小改革,每一件衣服上都有一个芯片,当这件衣服被拿到试衣室的时候,试衣室有一个记录仪,就记录一次,说明这件衣服进过试衣室,但这件衣服是不是被...

    hadoop大数据集群,docker镜像地址.txt

    自己根据大数据需求搞的docker镜像,3台服务器,实现hadoop、hbase、phoenix、zookeeper、scala、kafka、hive、mysql集群环境,使用方便,快速搭建hadoop大数据集群环境,镜像拉取后可以通过一个脚本启动集群。

    大数据架构师

    触过,但是发现了大数据这个行业的一个非常严重的问题:绝大多数的搞大数据这个领域的 同学,都是从别的领域转型过来的,比如说java、python、别的什么领域,大部分大数据工 程师原来的职业,五花八门,什么样的人都...

    大数据专题.pptx

    2013年马云卸任阿里集团CEO的职位时曾说,大家还没搞清PC时代的时候,移动互联网来了,还没搞清移动互联网的时候,大数据时代来了。 大数据专题全文共25页,当前为第3页。 你想像不到。。。 到底有多少 这个世界的...

    大数据的介绍.pptx

    2013年马云卸任阿里集团CEO的职位时曾说,大家还没搞清PC时代的时候,移动互联网来了,还没搞清移动互联网的时候,大数据时代来了。 大数据的介绍全文共19页,当前为第3页。 你想像不到。。。 到底有多少 这个世界...

    大数据的5大原则.doc

    很多企业对于大数据没什么想法, 以为只要导入大数据就宛如神功护体,势如破竹,却忽略很多时候,有些问题搞不好根 本不需要用大数据解决。 商业分析软体大厂赛仕电脑(SAS)副总经理高芬蒂就常常遇到,想要导入大数据...

    大数据与我们的生活.docx

    这里我们没有必要将云计算的概念搞得十分透彻,因为它本身就像云一样,我们只需要知道它可以为我们提供本地主机无法提供的超强计算能力和各种服务,可以用云计算的方式解决许多在原本看来无法解决的问题。...

    [详细完整版]3大数据.docx

    我们还没有搞清楚移动互联网的时候,大数据时代又来了。我们已经进入了马云口中那个大数据时代,但遗憾的是很多人对"大数据"一词一无所知。 大数据的一种专业解释是无法在一定时间内用常规软件工具对其内容进行抓取...

    大数据建模五步法

    前一阵子,某网络公司发起了一个什么建模大赛,有人问,数据建模怎么搞?为了满足他的好学精神,我决定写这一篇文章,来描述一下数据分析必须要掌握的技能:数据建模。本文将尝试来梳理一下数据建模的步骤,以及每...

    大数据对生活的影响.doc

    2013年5月10日,阿里巴巴集团董事局主席马云在淘宝十周年晚会上,将卸任阿里集团 CEO的职位,并在晚会上做卸任前的演讲,马云说,大家还没搞清PC时代的时候,移动互 联网来了,还没搞清移动互联网的时候,大数据时代...

    谈学习大数据的感想.doc

    2013年5月10日,阿里巴巴集团董事局主席马云在淘宝十周年晚会上,将卸任阿里集团 CEO的职位,并在晚会上做卸任前的演讲,马云说,大家还没搞清PC时代的时候,移动互 联网来了,还没搞清移动互联网的时候,大数据时代...

Global site tag (gtag.js) - Google Analytics