Hadoop初探

天天研究iOS底层原理,容易出问题;对大数据垂涎已久,现在有时间正好了解一下,
记录安装及运行demo的一些点

1.安装

我的安装环境:Mac OS 10.13.3
主要参考的这篇文章『 Hadoop 』mac下Hadoop的安装与使用
有几个坑记录下:

  1. cask
brew install caskroom/cask/brew-cask 

这个命令直接运行会报错,在Stack Overflow上上找到答案,brew-cask已经默认装上了,直接运行brew install caskroom/cask就可以

  1. 配置ssh
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

当时忘记执行这一步了

  1. 配置Hadoop

3.1 配置环境变量

export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc="
export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home" #改为自己JDK目录

JAVA_HOME 要改成本机的jdk版本目录

3.2. 配置core-site.xml
configuration>原来该文件里的内容时空的,运行本机的demo时,查找目录是hadoop的根目录
修改之后,默认的运行目录就变了,会去找dfs://localhost:8020这个根目录,所以我在运行wordcount demo时会报找不到input目录找不到错误

  1. 启动服务
    默认的http://localhost:50070端口修改为http://localhost:9870端口
  2. 配置shell环境变量
export HADOOP_HOME=/usr/local/Cellar/hadoop/3.0.0/libexec

路径要多加一层libexec,现在这个路径看着有点儿醉

2. 运行demo

参考:【Hadoop】MAC下hadoop2.6安装以及执行wordcount
运行wordcount demo,实现统计文件中单词的词频功能,不需要写代码,只需要会用现成的库就可以了
步骤如下:

  1. 在hadoop根目录下创建input目录,将统计文件放入input(名字随机)


    Hadoop初探_第1张图片
    屏幕快照 2018-04-10 16.42.37.png
  2. 在input同级目录下不要有output目录,或者其他要指定输出的目录,因为运行时不会覆盖

  3. 执行如下命令即可

hadoop jar /usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.0.0.jar wordcount input output
  1. 运行结果使用cat命令输出:


    运行结果

ps:hadoop-mapreduce-examples-3.0.0.jar在/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/hdfs这个目录下


Hadoop初探_第2张图片
jar包目录
3. 一些随想
  • 大数据主要是从数据中找规律,找到大量数据中的隐含的信息,以帮助我们改进产品策略、投放策略等等任务,还是挺有用的
  • 现在技术发展确实越来越快了,各个技术解决的问题不一样,没有坏技术,实用的就是好技术
  • 需要反思,我对技术的理解还比较局限,总觉得iOS技术很水,只是请求数据、搭搭界面、没啥含量,单做这个确实没啥含量,听着就没有大数据高大上;从挣钱的角度理解,iOS是做应用的,是距离用户最近的产品,后端的所有一切,最终都要在App中呈现,所以这个技术肯定是整个生态中重要的一环,死不了;
  • 畅想一下,iOS的下一波崛起应该就是AI了,未来应用的交互应该不只是点击这种操作,应该有更高大上的,语音、脸部(各种动作)识别等等

你可能感兴趣的:(Hadoop初探)