[2016/7/11]白山云科技实习第一天

  今天实习第一天,还是蛮激动的。一定要把握住这么好的机会,好好锻炼一下自己。今天就写一篇博客纪念一下吧。

  因为第一天,我不敢迟到。昨晚HR告诉我今天要九点到。于是根据上次的单程时间(大概一个半小时),心想这次七点十分出发一定不会晚,而且在线路上我也是精心策划过,上次公交坐到黑,这次公交加地铁,地铁各种倒,坐了有3条线的地铁,两头还需要公交车连接,哎,学校公司两边都是太不方便啊。结果早上起晚了,七点多点儿才起来,吓得我没吃早饭就跑出去了…不过幸好,公司管三餐。

  路上很热也很挤,不过心情很激动,这是我人生中第一次去公司上班啊,在路上感慨了一下后,脑补了一道DP一个小时就过去了,比上次早了大概半个小时(窃喜。

  到了公司给HR打电话,进去以后坐在一个高桌旁边,最近厦门有人过来,所以工位少了,新定的几套桌椅过几天才会到,让我先凑合一下(其实还有一个也坐在这儿)。被带去吃早餐,早餐的时候遇到了一个从南邮来实习的朋友,聊着聊着就吃完了。吃完造餐复印身份证、银行卡,录完门禁指纹后默默坐下等九点开工…

  结果一早上仍然不开工,都开始怀疑人生了。于是我看了一早上numpy的文档,期间见到了组里第一个人,是个北邮的本硕,毕业来工作一年。聊了一会儿leader就来了,简单自我介绍过后,他随手给了我一个和硕士小哥一起写一个网络协议,我一想卧曹这跟我的路子不太符合啊,于是默默和小哥表达了自己的观点,小哥支持我和leader聊一下,看看能不能换换。于是我抱着肯定可以换的心态继续看我的numpy,顺便把pycharm和idea搞下来了…结果等来了午饭,吃午饭的时候一桌四个人,另外的人都感慨我年纪小……

  午休过后我和leader说了我的想法,问了一下是否有数据处理的工作需要做,他想了一下,告诉我还真有这么个需求。说是一组日志,记录了balabala…问要统计top100,我弱弱地问了一下数据量,他说4TB(还是40TB来着)…那这肯定是要分布式框架了,可是我除了知道小黄象、星火这种名词的拼写以外,别的就不懂了啊,他还说这个东西简单…哎不做这个就要去写网络协议,比起小哥做的那个,我还是觉得这个比较适合我…于是咬咬牙接下了。leader人还是不错的,告诉我选择自己喜欢的会提高效率。我问这个有没有工期限制。他讲没有,做不出来也没关系,不过要尽力做。我听到这个就放心了,leader拍了拍我的肩膀我好好干吧(好狗血)。过了一会儿leader却又过来跟我说,这不是搞科研,这东西还是要做成产品,我又开始慌了…随后leader扔给我了一个1GB的小样本…

  这咋办啊,我以前也就是本机配过个hadoop还是单机的,就跑了个wordcount以外别的啥都不会啊。然后这一下还给我整这么大的,我接受不了啊,哎…

  一点一点来吧,我可是带着觉悟来实习的,不是混子。况且招我的时候仅仅通过了一个比赛,技术我肯定是有问题的,而且我才大二,懂的东西又不多,只能尽力做到最好吧。

  这时候就已经快三点了,我先把leader给的数据样本搞下来,打开看了一眼,粘出来100条,心想这东西应该是要用正则来匹配了,这个先不着急写。当务之急是先补补技术短板,于是打开了spark官网,开始看文档,顺便把环境在本机上配置了,以便自己调试用。

  一个下午过得很快,对我来说也就是只能配个生产环境,没办法谁让我这么弱…

  由于spark需要hadoop的支持,所以配置前还需要配hadoop(我发现我的ubuntu里java没有配…),贡献一下脚本吧(hadoop的脚本是之前的,写博客太重要辣!)。

 1 ###ubuntu 14.04 LTS
 2 
 3 ##make hadoop account
 4 sudo addgroup hadoop    #make a group named hadoop
 5 sudo adduser -ingroup hadoop hadoop    #add an user named hadoop
 6 sudo vi /etc/sudoers    #add hadoop into sudoers(hadoop=root)
 7 
 8 ##change your account
 9 sudo su hadoop
10 
11 ##install ssh
12 sudo apt-get install openssh-server    #install openssh-server
13 sudo /etc/init.d/ssh start    #start ssh server
14 ps -e | grep ssh    #check whether ssh is started or not
15 
16 ##log in without password
17 ssh-keygen -t rsa -P ""    #log in without password generate rsa & rsa.pub
18 cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys    #add authorized_keys to realize 'log in without password'
19 ssh localhost    #check
20 exit    #check
21 
22 ##install java environment
23 sudo apt-get install openjdk-7-jdk    #install jdk
24 java -version    #check whether java is installed or not
25 
26 ##get & install hadoop 2.6.0    (under user : hadoop)
27 cd ~
28 mkdir hadoop
29 
30 sudo wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.6.0/hadoop-2.6.0.tar.gz    #get hadoop2.6.0
31 sudo tar xzf hadoop-2.6.0.tar.gz    #unzip the hadoop-*.*.*.tar.gz
32 sudo rm hadoop-2.6.0.tar.gz    #remove the zip
33 sudo mv hadoop-2.6.0 /usr/local/    #install hadoop at local
34 sudo chmod 774 /usr/local/hadoop     #granted permissions to users (r&w)
35 
36 ##configure ~/.bashrc
37 update-alternatives --config java    #get java's path (stared one. such as '/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java'. but we just need '/usr/lib/jvm/java-7-openjdk-amd64' this shorter path to set up JAVA_HOME environment variables)
38 sudo vi ~/.bashrc    #edit bashrc file
39 
40 ##add the content below to the end of bashrc
41 #--------------------------------------------------------------#
42 
43 #HADOOP VARIABLES START
44 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
45 export HADOOP_INSTALL=/usr/local/hadoop-2.6.0
46 export PATH=$PATH:$HADOOP_INSTALL/bin
47 export PATH=$PATH:$HADOOP_INSTALL/sbin
48 export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
49 export HADOOP_COMMON_HOME=$HADOOP_INSTALL
50 export HADOOP_HDFS_HOME=$HADOOP_INSTALL
51 export YARN_HOME=$HADOOP_INSTALL
52 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
53 export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"
54 #HADOOP VARIABLES END
55 
56 #--------------------------------------------------------------#
57 source ~/.bashrc    #make the environment variables come into effect
58 
59 ##configure hadoop
60 sudo vi /usr/local/hadoop-2.6.0/etc/hadoop/hadoop-env.sh     #edit hadoop-env.sh
61 ?JAVA_HOME    #(in vim) locate JAVA_HOME
62 #change 'export JAVA_HOME=${JAVA_HOME}' into 'export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64'
63 source /usr/local/hadoop-2.6.0/etc/hadoop/hadoop-env.sh #update
64 
65 ##input
66 cd /usr/local/hadoop-2.6.0/    #go there
67 sudo mkdir input
68 sudo cp README.txt input
69 bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.6.0-sources.jar org.apache.hadoop.examples.WordCount input output
Hadoop configure script
 1 ### install scala
 2 cd scala
 3 wget http://www.scala-lang.org/files/archive/scala-2.10.4.tgz
 4 tar -zxvf scala-2.10.4.tgz
 5 rm scala-2.10.4.tgz
 6 sudo mkdir /usr/local/scala
 7 mv scala-2.10.4 /usr/local/scala
 8 
 9 sudo vi ~/.bashrc
10 #-------------------------------------#
11 export SCALA_HOME=/usr/local/scala/scala-2.10.4
12 export PATH=${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${SCALA_HOME}/bin:$PATH
13 #-------------------------------------#
14 
15 ### install spark
16 mkdir spark
17 cd spark
18 wget http://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-1.6.2/spark-1.6.2-bin-hadoop2.6.tgz
19 tar -zxvf spark-1.6.2-bin-hadoop2.6.tgz
20 rm spark-1.6.2-bin-hadoop2.6.tgz # cd spark-1.6.2-bin-hadoop2.6
21 sudo mkdir /usr/local/spark
22 sudo mv spark-1.6.2-bin-hadoop2.6 /usr/local/spark
23 
24 sudo vi ~/.bashrc
25 #-------------------------------------#
26 export SPARK_HOME=/usr/local/spark/spark-1.6.2-bin-hadoop2.6
27 export PATH=${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${SCALA_HOME}/bin:${SPARK_HOME}/bin:$PATH
28 #-------------------------------------#
29 
30 cd /usr/local/spark/spark-1.6.2-bin-hadoop2.6/conf
31 cp spark-env.sh.template spark-env.sh
32 vi spark-env.sh
33 #-------------------------------------#
34 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
35 export SCALA_HOME=/usr/local/scala/scala-2.10.4
36 export SPARK_MASTER_IP=Kirai
37 export SPARK_WORKER_CORES=2
38 export SPARK_WORKER_MEMORY=1g
39 export HADOOP_CONF_DIR=/usr/local/hadoop-2.6.0/etc/hadoop/
40 #-------------------------------------#
41 
42 cp slaves.template slaves
43 vi slaves
44 #-------------------------------------#
45 # localhost --> Kirai
46 #-------------------------------------#
47 
48 
49 #------------------Test------------------#
50 cd /usr/local/spark/spark-1.6.2-bin-hadoop2.6
51 ./start-all.sh
52 jps # look Master and Worker
53 spark-shell
54 #----------------------------------------#
Spark configure script
原文地址:https://www.cnblogs.com/kirai/p/5661628.html