第二周:HDFS简介,实验准备,第二周hdfs


HDFS简介
   HDFS(Hadoop Distributed File System)默认的最基本的存储单位是64M的数据块。    和普通文件系统相同的是,HDFS中的文件是被分成64M一块的数据块存储的。    不同于普通文件系统的是,HDFS中,如果一个文件小于一个数据块的大小,并不占用整个数据块存储空间。
为什么hadoop不适合存储小文件        因为Namenode把文件系统的元数据放置在内存中,所以文件系统所能容纳的文件数目是由Namenode的内存大小来决定。一般来说,每一个文件、文 件夹和Block需要占据150字节左右的空间,所以,如果你有100万个文件,每一个占据一个Block,你就至少需要300MB内存。当前来说,数百 万的文件还是可行的,当扩展到数十亿时,对于当前的硬件水平来说就没法实现了 `
夏老师 · 说
1. 在整个Hadoop提示中 必须要明白的:PageRank
2. Salve节点是有一套心跳机制的 ,定期的向NameNode提交节点信息。  (热备)
3.  我们默认使用  hadoop-core1.0.4 作为开发版本 (老夏的版本)
4.  在实际的集群搭建下,建议使用 NDS服务器来维护各个子节点的地址 
5. jps  实际上是jvm的命令 
6. hadoop不推荐使用root命令  记得不安全
7. openStack 虚拟云 也是大数据云计算的热门   Vcenter  (openStack的收费版本) --提供更加便利的图形界面操作
8.watch -n 3 -d jps 每隔三秒查看一次命令 
9. ./hadoop dfsadmin -safename get  关闭安全模式  

  • **** 第零章

作者:  道格 
发音的问题 :o(︶︿︶)o 唉  了解就行了。
参考书:权威指南。(不是道格写的)  这个书很重要
刘鹏(实战hadoop)写得比较浅  对于新手比较适合,有错误 ( 整理一份书单 )
        Hadoop实战  大学老师写的,说是抄权威指南的
   HDFS 深度实践 (源代码级别的)--要很懂JAVA
        hadoop 技术内幕 (源代码级别的)--要很懂JAVA

  • **** 第壹章

  面向企业机型选型配置 介绍
      普通 廉价 标准的 
      16-32G 内存 普通硬盘2Tor more 
      交换机选择比较高的带宽。 infinband 交换机(光交换机 --很贵的!)
      RAID是不需要(磁盘整列) hadoop本身就有冗余机制            可以考虑JBOD (把一堆硬盘组合成一个大的硬盘)

  • ****  第贰章

    1. 网络拓扑设计
       主流架构方案!局域网中!          2. Hadoop 是基于JAVA 因此只要运行jvm的平台 就能跑 Hadoop          3. hadoop 没有区分 32位和64位 
    4. window上要跑 Hadoop  需要安装模拟unix/linux的环境 Cygwin
    5. 有很多 apache 官方版本的Hadoop 发布版  ---了解
    6. JAVA是hadop的原生开发语言。 hadoop本身用hadoop开发, 主要开发语言也是java
    7. 世界上最小的电脑:树莓派

  • **** 第叁章

    课程实验准备        内存 1G  硬盘 20G   
    安装完linux 以后 要确认 iptables 和 selinux 等防火墙或者过滤策略软件关闭
    1. 怎么装 JDK  
     wget  *(url)  下载 
     tar -vxzf * (*.tar)        设置环境变量    (讲得很抽象)  
         2. 免密码登录
      ssh keygen -t rsn (生成公钥和私钥文件)       将公钥文件 拷贝到其他机器上。
      (循环往复的做每一台机器)

    3. 免密码的原因:
      早期:保密通讯。
      RSA  不对称加密   公钥私钥
    正常:
     A 客服端  B 服务器
 A  发起请求
         B  公钥给A 
         A  生成密码 用B公钥加密  传递给B    
         B  用私钥解密
         A B 有对称密码  
                     免密码:
         A  发起请求
         B  生成 challest  用 A 公钥 加密  发给 A 
         A  用私钥解密 challest   再次发给B
         B  核对 A 发过来的 challest 发现和本地一样   不用密码也通过验证
       
  • ****  第肆章

   1. 完全分布式安装         安装  hadoop
    hadoop-env.xml 脚本文件   修改环境变量   java 
    core-site.xml  指定名称节点的路径    存放数据的位置
    hdfs-site.xml  指定hdfs的复制因子
    mapred-site.xml  joktrack的监听端口
    修改 vi  etc/hosts 文件    将IP和主机名映射
    关闭防火墙
    format  nodename 节点
    start-all
   问题:  自己连自己要密码   公钥拷贝到 authori-keys !          JPS 命令 
   PS   第一版和现在的版本可以交替的看。要不可能会晕。
   常见错误:       百度 和 谷歌 dataguru  1000人参加过Hadoop
    chkconfig  iptables  off  (重启有用 ) 关闭防火墙     chkconfig (查看 各个级别的 启动项)
    查看所有端口开放情况: netstat -ntl    开放某个端口:nc -l 端口号 & 

   2. 伪分布式系统安装描述
      和完全分布式的基本一样




自动清除log文件
hadoop集群跑了很多的任务后
在hadoop.log.dir目录下会产生大量的日志文件。
可以通过配置core-site.xml文件让集群自动清除日志文件:

<property>
<name>hadoop.logfile.size</name>
<value>10000000</value>
<description>The max size of each log file</description>
</property>

<property>
<name>hadoop.logfile.count</name>
<value>10</value>
<description>The max number of log files</description>
</property>


ssh-keygen 创建公钥和密钥。 
ssh-copy-id 把本地主机的公钥复制到远程主机的authorized_keys文件上。
ssh-copy-id 也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限 。 



http://www.itpub.net/forum-214-1.html







相关内容

    暂无相关文章