爱吧机器人网 » 技术 > 大数据 > 正文

做大数据过程中遇到的13个问题

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/hbase/hdfs 按照笛卡尔积的形式,这样搞要搞死程序员了。这个时候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其实是一个不错的选择。

上一页12下一页

上一篇:关于推荐系统中的特征工程
下一篇:全面梳理SQL和NoSQL数据库的技术差别
精选推荐
亚马逊计划建一个4000万美元的机器人中心
亚马逊计划建一个4000万美元的机器人中心

[2019-11-07]  爱吧机器人网消息,亚马逊11月6日宣布了一项计划,计划在美国马萨诸塞州韦斯特伯勒建立一个4000万美元、35万平方英尺的机器人创新中心。新 ...

人工神经网络技术解码人类行为和想象时的大脑活动信号
人工神经网络技术解码人类行为和想象时的大脑活动信号

[2017-08-23]  为搜索引擎过滤信息,棋盘游戏对弈,识别图像 人工智能在某些任务中远远超过了人类智能。来自弗莱堡由神经科学家私人讲师Tonio Ball博士领导的几个杰出的BrainLinks-Bra......

MIT最新“人机”互连系统 让双腿机器人复制人体技能
MIT最新“人机”互连系统 让双腿机器人复制人体技能

[2019-11-01]  MIT的小爱马仕想借用你的大脑 ,图片来自: João Ramos爱吧机器人网消息,麻省理工学院(MIT)的研究人员展示了一种新型遥操作系 ...

助力卷积神经网络时空特征学习 史上最大行人重识别视频数据集被提出
助力卷积神经网络时空特征学习 史上最大行人重识别视频数据集被提出

[2017-12-25]  本文提出了一个大型的、长序列的、用于行人重识别的视频数据集,简称LVreID。与现有的同类数据集相比,该数据集具有以下特点:1)长序列:平均每段视频序列长为200帧,包含丰......

谷歌大脑发布ROBEL基准 鼓励用低成本机器人训练AI系统
谷歌大脑发布ROBEL基准 鼓励用低成本机器人训练AI系统

[2019-10-11]  训练AI系统的机器人D& 39;Claw和D& 39;Kitty用于控制机器人的人工智能系统,测量其性能所使用的基准通常仅限于为工业环境设计的昂贵硬件, ...

什么是机器人学?机器人学简介
什么是机器人学?机器人学简介

[2017-12-14]  机器人学是工程学与科学的交叉学科,包括机械工程,电气工程,计算机科学等。机器人技术涉及机器人的设计、制造、操作和应用,以及用于控制、感官反馈和信息处理的计算机系统。...

人工智能准确预测患者一年内的死亡风险,原理却无法解释
人工智能准确预测患者一年内的死亡风险,原理却无法解释

[2019-11-13]  图片来自BURGER PHANIE SCIENCE PHOTO LIBRARY美国最新研究显示,人工智能通过查看心脏测试结果,以高达85%以上的准确率预测了一个人在一 ...

人工智能民主化能否实现取决于科技巨头
人工智能民主化能否实现取决于科技巨头

[2017-12-29]  我们经常听到像谷歌和微软这样的公司说他们希望人工智能民主化。这是一个很好的词,民主化。 但这些公司如何界定“民主化”还不清楚,像AI本身一样,它似乎有点炒作的味道...

本周栏目热点

[2016-08-07]     著名物理学家霍金教授说,忘了黑洞吧,女人才是宇宙最大的谜。但,未来这个最大的谜题因为大数据分析的出现而揭开谜底。人工智能是大数 ...

网友在什么时候发朋友圈可以看出贫富差距?

[2016-08-30]   收入不平等、教育不平等这些名词你都不会陌生。现在有人希望通过分析Instagram上图片分享的地理定位数据来告诉你什么叫做——社交 ...

[2018-07-23]  随着信息技术在各个领域的全面应用,数据的种类、数量、速度和价值都出现了显著变化,一个大规模生产、分享和应用数据的时代已经开启。...

个人征信机构静待发令枪响 业内:大数据并不便宜

[1970-01-01]   个人征信牌照发放在即。近日,《每日经济新闻》记者从多家机构获悉,央行对征信机构的验收工作已经收尾 ...

数据开放的经济学分析

[1970-01-01]   2009年美国启动开放政府计划,开启了国际政府机构以数据开放展开数据与信息分享的重要议题,在世界范围 ...