• [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
  • 相关阅读:
    性能测试的概念
    位运算和逻辑与运算
    09年~16年上午题题型分布
    复习建议
    软件评测师下午题笔记
    php 数据库 操作
    mysqli_query($conn, "set names utf8"); //**设置字符集*** 不设置插入数据库就是乱码
    iview admin template 基础模板架子
    iview-admin里面的 axios 给包装了一层数据 libs/axios.js 数据做了一层拦截
    mysql 如果没有密码 就不能远程连接
  • 原文地址:https://www.cnblogs.com/kirai/p/5661628.html
Copyright © 2020-2023  润新知