大数据计算

实时计算:flume+kafka+storm/sparkstreaming+redis/hbase
离线计算:flume/ftp/sqoop(获取数据)+hdfs(存储数据)+hive(数据仓库)+SparkSQL(进行数据离线计算)+sqoop+mysql/hbase/redis(计算后的数据存储)

Flume采集实现
1、在若干个服务器上部署agent节点,修改配置文件
2、启动agent节点,将采集到的数据汇聚到指定的HDFS目录中

 

使用pyspark进行spark-submit

实验环境:

1.pyspark 1.6.0

2.python 2.7

本次主要写的是用pyspark提交任务时,需要注意的地方及遇到的问题的解决。

 

Step 1. 提交python工程

在提交spark的时候,我们往往python工程是多个python文件,彼此之间有调用关系。

那如何提交python工程呢?

./bin/spark-submit –py-files XXXX.zip aaa.py即可

 

XXXX是你将你所有需要用到的python文件打包成一个zip文件

aaa是你的python文件的main函数所在的py文件。

 

Step 2. python 版本问题不一致

提交以后,我遇到了cannot different version python 2.6 in driver and python 2.7….

大概是这样的错误,是说不同节点的python版本不一致,导致的运行错误。

解决方法:

import os

os.environ['PYTHONPATH']='python2'

 

Step 3. 提交任务以后,遇到ascii编码问题

其实我们是想要utf-8默认运行python的,但是就算你在文件里指定了

#coding:utf-8

 

依然没用。

解决方法:

import sys

reload(sys)

sys.setdefaultencoding('utf-8')

 

数据处理流程:

1.数据采集

  Flume:web日志写入到HDFS

2.数据清洗

  脏数据

  Spark,Hive,MapReduce或者其他一些分布式计算框架,清洗完之后的数据可以存放在HDFS(Hive,Spark SQL)

3.数据处理

  按照需求进行相应业务的统计和分析

  Spark,Hive,MapReduce或者其他一些分布式计算框架

4.处理结果入库

  结果可以存放到RDBMS,NoSQL,调用相应的API就可以实现。

5.数据的可视化

  通过图形化展示的方式展现出来:饼图,柱状图,地图,折线图(ECharts,HUE,Zeppelin)

开发环境版本:

Anaconda2-4.2.0(Windows 64和Linux 64位)
pycharm-community-2016.2.3
Python-2.7.9
spark-1.6.1-bin-2.5.0-cdh5.3.6
hadoop-2.5.0-cdh5.3.6
hive-0.13.1-chd5.3.6

转载于:https://www.cnblogs.com/fenghuoliancheng/p/10675635.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值