大数据中遇到的问题简述(待续)

大数据中遇到的问题简述(待续)

1、数据量大怎么分析?分析后怎么做传输?怎么做到实时?

数据量大可在hadoop平台分析。分析的结果数据可用sqoop迁移数据工具导出。常用实时处理框架有sparkStreaming、storm、flink等。

2、数据来源?

python爬虫爬取网页。单机多线程、分布式多线程。定期导入到离线系统。

3、如何分析数据?

数据量小,一个复杂的sql即可搞定,web服务器页面请求时,执行这个SQL,展示数据。最简单的数据分析,就是统计的分析。分析的数据源小,分析的脚本就是在线执行的SQL,分析的结果不用传输,结果展示在页面上,一条龙搞定。

4、数据量大,无法在线分析怎么办?

数据离线数据工具hadoop。数据以文件的形式存在,可能各个属性是逗号分隔的,数据条数有十几亿。构建hadoop集群,数据进集群,文件就是HDFS格式。做统计分析,需要写mapreduce程序,实现map和reduce的接口,按照自己的业务逻辑写分析流程,之后把程序打成jar包上传到集群,之后开始执行。分析后的结果还是以文件的形式。

5、分析数据写java代码效率低,如何解决?

​ mapreduce程序,本身可测性没有执行一个简单的单元测试来的爽。hive是一个数据仓库分析的语言,语法类似于数据库的SQL,区别是,数据库的sql很快就能有结果,但是hive中即使是很小一个数据分析,也需要较长时间。构建hive需要在hadoop的集群上,原理就是,把文件构建成表的形式(有一个数据库或者内存数据库维护表的schema信息),之后提交写好的hive sql的时候,hadoop集群里面的程序把hive脚本转换成对应的mapreduce程序执行。这个时候做离线的数据分析简单写脚本就行了,不用搞java上传执行。

6、数据产生的结果,怎么搞到线上提供服务的数据库中呢?

​ 分析结果有了,需要导入线上的数据库中,如果是mysql,直接执行load命令就能导进去,但是数据源可能很多,mysql、oracle、hbase、hdfs按照笛卡尔积的形式,这样会很麻烦。这个时候开源的datax出现,能够实现异构数据源的导入和导出,采用插件的形式设计,能够支持未来的数据源。如果需要导数据,配置一下datax的xml文件或者在web页面上点击设置就可以实现。

7、离线分析有时间差,实时怎么做?

构建实时的分析系统,如何在大并发海量数据流动的过程中进行自己的业务分析?

业务数据在写入数据库的时候,这里的数据库是mysql,在数据库的机器上安装一个程序,类似JMS的系统,用于监听binlog的变更,收到日志信息,将日志信息转换为具体的数据,然后以消息的形式发送出来。这个时候实现了解耦,这样的处理并不影响正常的业务流程。这个时候需要有个Storm集群,分析数据,这个集群来接收刚才提到的JMS系统发送出来的消息,然后按照指定的规则进行逻辑合并等计算,把计算结果保存在数据库中,这样,流动的数据就可以过一遍筛子了。

8、分析的结果数据特别大,在线请求这些结果数据服务器扛不住如何解决?

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

9、在线的数据库,除mysql、oracle之外,还有其他选择么?

nosql类的数据库也有很多,例如hbase。

如果数据离散分布比较强,且根据特定的key来查询,这个时候hbase其实是一个不错的选择。

10、空间的数据怎么分析?

​ 上面的分析大都是统计维度的,其实最简单的描述就是求和或者平均值等,那么大数据量的空间数据如何分析?

​ 对于我们电子商务而言,空间数据可能就是海量的收货地址数据。需要做分析,第一步就是先要把经纬度添加到数据中(如果添加经纬度,这个可以搞http的请求来通过地图服务提供商或者根据测回公司的基础数据来进行文本切割分析),之后空间数据是二维的,但是我们常见的代数是一维的,这个时候一个重要的算法出现了,geohash算法,一种将经纬度数据转换为一个可比较,可排序的字符串的算法。然后,这样就可以在空间距离方面进行分析,例如远近,方圆周边等数据的分析

11、若想搞算法或者数据挖掘之类,例如添加一个算法如何做?

逻辑回归算法,如果样本数据量不是很大,可以采用weka来做个回归,获得一个表达式,然后在线上系统中应用这个表达式,这种类似的表达式获取对于实时性要求不是很高,所以公式每天跑一次就行了。如果数据较大,单机weka无法满足需求了,可以将weka的jar包集成在系统中分析,当然也可以通过hadoop中的mahout来进行离线分析,获取这个表达式

12、离线分析数据,但受不了hive或者hadoop的速度?

可以使用spark。基于内存计算,速度快很多。底层介入hdfs的文件系统。

13、目前的无线和大数据啥关系?

无线的终端是数据的来源的消费端,中间需要大数据的分析,两者密不可分。

14、大数据是什么?

思维的变化,用数据来思考,用数据来做决定。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值