Spark 手册一:初识
- 知道Spark这个项目是一年前,在阿里的技术沙龙里面第一次知道了Spark,同时专题还讨论了storm。一年之后,处理了各种杂事,在Hadoop上折腾许久和投奔Python决心让我真正开始尝试使用Spark做一些数据分析的事情。记录点滴,供以后参考。
入门和基础知识
在下载jdk(227mb)的同时花了大概两个小时阅读相关的基础资料。包括如下
选的Spark 1.3.0 因为关注的一个开源项目SparkSpatial 是用1.3做的test
搭建集群
brew 是装不了idk的。而使用zsh和iterm 敲击jps 命令的话,是可以直接打开下载地址。awesome.
无意之间,使用sudo chmod -R 777 /usr命令修改了usr文件的所有者 然后就毁了一个节点,这样的错误肯定有人翻过,所以当然有解决方案。
跑集群一定要有scala,
下个新版本就可以了。记一些配置
export JAVA_HOME=/usr/java export JRE_HOME=/usr/java/jre export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/jt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib export HADOOP_HOME=/usr/hadoop export PATH=$PATH:$HADOOP_HOME/bin export HBASE_HOME=/usr/hbase export PATH=$PATH:$HBASE_HOME/bin export HIVE_HOME=/usr/hive export PATH=$PATH:$HIVE_HOME/bin export OOZIE_HOME=/usr/oozie/oozie-4.0.0-cdh5.2.0 export OOZIE_CONFIG=$OOZIE_HOME/conf export CLASSPATH=$CLASSPATH:$OOZIE_HOME/bin export SPARK_HOME=/usr/spark export PATH=$SPARK_HOME/bin:$PATH export SCALA_HOME=/usr/scala export PATH=$PATH:$SCALA_HOME/bin
scp 复制集群配置
配置参考这篇文章
sudo scp /etc/profile slave4:/etc/profile vi spark-env.sh export SPARK_MASTER_IP=master export SPARK_MASTER_PORT=7077 export SPARK_WORKER_CORES=1 export SPARK_WORKER_INSTANCES=1 export SPARK_WORKER_MEMORY=1g export JAVA_HOME=/usr/java
test 一个小程序
// 从hdfs读文件
scala> val file=sc.textFile("hdfs://172.16.48.202:9000/user/root/input/README.txt")
// 根据空格分词
scala> val count=file.flatMap(line => line.split(" ")).map(word => (word,1)).reduceByKey(_+_)
//统计输出
scala> count.collect()