[toc]

hadoop学习笔记

Bigdata


结构化数据: 约束
半结构化数据:
非结构化数据: 没有元数据;
搜索引擎:搜索组件、索引组件共同组成
        蜘蛛程序:
        存储:
        分析处理:
2003年: The Google File System
2004年:  MapReduce:  Simplified Data Processing On large Cluster
2006年: BigTable: A Distributed Strorage System for Structure Data
HDFS + MapReduce  = Hadoop
HBase
Nutch
MapRduce 是批处理程序:
DN: Data Node   NN: Name Node SNN: Secondary Name Node
函数式编程:
    Lisp, ML函数式编程语言;高阶函数;
        map, fold
        map: 一个任务映射为多个map(f())
        map: 接受一个函数为参数,并将其应用于列表中的所有元素,从而生成一个结果列表;
        fold: 接受两个能数:函数,初始值fold(g(), init)
    mapreduce:  mapper, reducer
    mapper:统计、排序 k-v(键值数据)
统计一本书每个单词出现的次数:
    mapper:每100页一个单位, 5 mappers
        用于拆分成为单词:10000000
    reducer:
        reducer1, reducer2
    mapper: this 1, is 1 ,this1 ,how1
    同一个键的数据只能发往同一个reducer
    reducer: this 500 is
    MRv1(Hadoop2) --> MRv2(Hadoop2)
        MRv1: Cluster resource manager,Data processing
        MRv2: 
            YARN: Cluster resource manager
            MRv2: Data processing
                MR: batch
                Tez: execution engine 
                RM: Resource Manager
                NM: Node Manager
                AM: Application Master
                container: mr任务
                Ambari 
            Hadoop Distribution:
            Cloudera: CDH
            Hortonworks: HDP
            Intel: IDH
            MapR:

安装使用Hadoop

单机模型: 测试使用;
伪分布式模型: 运行于单机;
分布式模型: 集群模型;
Hadoop,基于Java语言;
需要配置jvm和jvm home环境;
jdk: 1.6, 1.7, 1.8
hadoop-2.6.2 jdk 1.6+

1
2
3
4
5
6
# yum -y install java-1.7.0-openjdk.x86_64
# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr
# chmod +x /etc/profile.d/java.sh
# source /etc/profile.d/java.sh
# yum -y install java-1.7.0-openjdk-devel
1
2
# cd /usr/local/src && # wget https://archive.apache.org/dist/hadoop/core/hadoop-2.6.1/hadoop-2.6.1.tar.gz
#

评论