Spark+HBase分布式批量上传海量本地图片
- 集群架构
3台PC机都是4G的内存,Master和一个Worker是i5处理器,一个Worker为i3处理器
218.199.92.225 fang-ubuntu(Master)
218.199.92.226 fei-ubuntu(Worker)
218.199.92.227 kun-ubuntu(Worker)
软件环境
Ubuntu1604
Hadoop-2.7.2
Spark-1.6.1
Scala-2.10.5
HBase-1.2.4
Java 1.8.0_77
由于有200G的图像数据放在本地数据库,需要上传的HBase数据库中进行处理,考虑到速度的影响,尝试使用Spark分布式批量上传图片数据。
- 集群搭建
由于需要用到HDFS,因此需要搭建Hadoop集群,需要搭建HBase集群,需要搭建Spark集群。可以参考我其余两篇博客
Spark on Yarn集群搭建
http://blog.csdn.net/u010638969/article/details/51283216
HBase-1.2.4分布式集群搭建
http://blog.csdn.net/u010638969/article/details/53257879 - 搭建开发环境
程序是在Intellij Idea中编写,因此需要搭建Spark的开发环境
- 安装scala,sbt插件
- Intellij Idea 中spark项目需要导入 spark-assembly-1.6.1-hadoop-2.6.0
- 导入HBase-1.2.4/lib目录中的jar包
- 编写本地测试程序
本地测试程序代码如下:
import org.apache.hadoop.hbase._
import o