已经自学了好几个月的大数据了,第一个月里自己通过看书、看视频、网上查资料也把hadoop(1.x、2.x)、spark单机、伪分布式、集群都部署了一遍,但经历短暂的兴奋后,还是觉得不得门而入。

  只有深入大数据开发才能逐步掌握大数据。而首先要搭开发环境,对于一个像我这样之前只做过plsql开发的人来说,确实走了很多弯路。一开始目标设得很高,直接下源代码编译成jar包进行使用,后来发现其实没什么必要,受到一些非技术因素尤其是天朝特色社会主义网络的影响,sbt基本无法使用,直接下官方编译好的版本就行了。

注:我在搭建开发环境的过程中,在网上查阅了无数资料,也在《hadoop权威指南》等书里找过,但几乎找不到满意的,要不就是过程本身就有问题,要不就是提供的方法在天朝无法实践,还有就是写得过于简略或过于深奥。严重影响了搭建进度。看到本文的朋友们有福了,除去下载软件的时间,基本一个小时之内可以全部搞定。大道至简,很多东西要是不说清楚,写一万句废话也是没用的。

  • IDE:eclipse-Scala-Ide
  • hadoop:hadoop-2.6.2
  • spark:spark-1.2.0

一、hadoop开发环境

第一种方法:

直接用hadoop eclipse插件,再进行简单的配置就可以了。

第二种方法:

直接导入hadoop的jar包,可使用maven工程实现自动导入,也可手动导入
手动导入:
hdfs和mapred:
C:\Software\hadoop\hadoop-2.6.2\share\hadoop\common\
C:\Software\hadoop\hadoop-2.6.2\share\hadoop\common\lib\
C:\Software\hadoop\hadoop-2.6.2\share\hadoop\hdfs\
hive:
C:\Software\hadoop\apache-hive-2.1.0-bin\lib\
hbase:
E:\Hadoop\hbase-0.94.2-security\hbase-0.94.2-security.jar
E:\Hadoop\hbase-0.94.2-security\hbase-0.94.2-security-tests.jar
E:\Hadoop\hbase-0.94.2-security\lib\
其实不用导入那么多包,以后用maven来自动导入。
导入后,选中这些jar包,Build Path->Add to Build Path
 

二、spark开发环境

下载scala-ide。位数需要与本地jdk版本位数一致,直接解压即可作为eclipse使用

新建scala project

在工程名处右击点Properties->Java Builder Path->Libraries->Add External JARs->添加编译后spark assembly包(可以直接从官网下载编译后的版本里找出来)
有很多时候需要配置Run Configurations,重点关注Main和Arguments两项里的内容。如果没有部署spark,可以直接在VM arguments里添加-Dspark.master=local,或者直接在代码里添加conf.setMaster("local")
so easy!

【原创干货】大数据Hadoop/Spark开发环境搭建的更多相关文章

  1. 大数据 -- Hadoop集群环境搭建

    首先我们来认识一下HDFS, HDFS(Hadoop Distributed File System )Hadoop分布式文件系统.它其实是将一个大文件分成若干块保存在不同服务器的多个节点中.通过联网 ...

  2. 搭建大数据hadoop完全分布式环境遇到的坑

    搭建大数据hadoop完全分布式环境,遇到很多问题,这里记录一部分,以备以后查看. 1.在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  3. HBase、Hive、MapReduce、Hadoop、Spark 开发环境搭建后的一些步骤(export导出jar包方式 或 Ant 方式)

    步骤一 若是,不会HBase开发环境搭建的博文们,见我下面的这篇博客. HBase 开发环境搭建(Eclipse\MyEclipse + Maven) 步骤一里的,需要补充的.如下: 在项目名,右键, ...

  4. 我搭建大数据Hadoop完全分布式环境遇到的坑---hadoop: command not found

    搭建大数据hadoop环境,遇到很多问题,这里记录一部分,以备以后查看. [遇到问题].在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  5. Spark编译及spark开发环境搭建

    最近需要将生产环境的spark1.3版本升级到spark1.6(尽管spark2.0已经发布一段时间了,稳定可靠起见,还是选择了spark1.6),同时需要基于spark开发一些中间件,因此需要搭建一 ...

  6. Spark开发环境搭建和作业提交

    Spark高可用集群搭建 在所有节点上下载或上传spark文件,解压缩安装,建立软连接 配置所有节点spark安装目录下的spark-evn.sh文件 配置slaves 配置spark-default ...

  7. 《OD大数据实战》Hive环境搭建

    一.搭建hadoop环境 <OD大数据实战>hadoop伪分布式环境搭建 二.Hive环境搭建 1. 准备安装文件 下载地址: http://archive.cloudera.com/cd ...

  8. Hadoop项目开发环境搭建(Eclipse\MyEclipse + Maven)

    写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...

  9. Hadoop Eclipse开发环境搭建

        This document is from my evernote, when I was still at baidu, I have a complete hadoop developme ...

随机推荐

  1. webpack打包es6代码

    1.简单描述一下es6的模块导入和导出的语法: //导出:export var aa = 10;export function demo(){} //不能写成:var aa = 10;export a ...

  2. Java并发包下锁学习第一篇:介绍及学习安排

    Java并发包下锁学习第一篇:介绍及学习安排 在Java并发编程中,实现锁的方式有两种,分别是:可以使用同步锁(synchronized关键字的锁),还有lock接口下的锁.从今天起,凯哥将带领大家一 ...

  3. 了解1D和3D卷积神经网络 | Keras

    当我们说卷积神经网络(CNN)时,通常是指用于图像分类的2维CNN.但是,现实世界中还使用了其他两种类型的卷积神经网络,即1维CNN和3维CNN.在本指南中,我们将介绍1D和3D CNN及其在现实世界 ...

  4. 干货 | Python进阶之学习笔记(一)

    认识Python Python应用场景 Python基础语法 一.认识Python Python 是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell) ...

  5. 简单理解vertical-align属性和基线问题

    vertical-align属性主要用于改变行内元素的对齐方式,对于行内布局影响很大,如果不了解的话,我们开发调整样式的时候很容易出错. 网上关于这个属性的原理说得很是复杂,看一眼就让人觉得望而生畏, ...

  6. mongodb服务器启动

    以配置文件启动服务器: mongod --config /usr/local/mongodata/config/mongodb.conf(配置文件路径) 客户端启动: mango 关闭mongodb的 ...

  7. 17.用cmd创建maven web工程

    1.跳转到需要创建maven工程的目录,输入 mvn archetype:generate 2.找到webapp的那一项,输入它的序号(这里是10) 3.输入groupId,artifactId,ve ...

  8. 学习笔记-EL

    仅作为学习过程中笔记作用,若有不正确的地方欢迎指正 目标 理解El的作用,熟练使用EL EL表达式与Jsp表达式对比来记 EL表达式的概念,作用,语法 Jsp作用主要是用来实现动态网页的,而动态网页中 ...

  9. iOS 13DarkMode暗黑模式

    iOS 13系统的iPhone 在设置-->显示与亮度 -->选择深色 即开启暗黑模式 1.暗黑模式关闭 1.1 APP开发未进行暗黑适配,出现顶部通知栏字体颜色无法改变始终为白色.可以全 ...

  10. 使用 nodejs 对文件进行批量重命名

    0. 前言 从B站下载了一点视频,硕鼠自动将标题添加到了每个文件名的前面,导致文件名过长,不方面查看文件的具体内容. 虽然只有二十几个文件,但是手动删除前缀还是个不小的工作量,还有可能删除错误.考虑到 ...