美文网首页
初识Hive和Hadoop 2020-04-11

初识Hive和Hadoop 2020-04-11

作者: 9_SooHyun | 来源:发表于2020-04-11 16:13 被阅读0次

    Hive数据仓库 -- 基于Hadoop(一个分布式系统架构) -- HDFS(Hadoop Distributed Filesystem,是管理网络中跨多台计算机存储的文件系统)

    Hive

    与MySQL/Oracle等关系型数据库相似,Hive也是用来存放数据的软件

    但它是基于Hadoop的分布式大数据仓库。顾名思义,仓库就意味着它并不用于与用户的交互而是做数据仓储,设计用于OLAP(联机分析处理)而不是用于OLTP(联机事务处理)。与用户直接打交道的数据库体量不可过大,否则影响效率

    Hadoop

    啥是Hadoop?通俗地说,Hadoop就是用于【分布式存储海量数据+分布式计算海量数据】的软件工具

    从核心组成上来看,【Hadoop = HDFS + MapReduce】

    • HDFS是Hadoop分布式文件系统,用于存储海量数据;
    • MapReduce是计算框架,包括Map计算和Reduce计算,用于计算海量数据
      其中Map是指将大任务Map到一台台的单机上,完成任务分解的工作,而Reduce则是将多台单机的结果汇总,返回大任务的最终结果

    HDFS(Hadoop分布式文件系统)

    HDFS架构由HDFSClient、NameNode名字结点、SecondaryNameNode第二名字结点 和DataNode数据结点 4 部分组成

    HDFS设计为主/从(Mater/Slave)结构,拥有一个NameNode也就是Master和若干DataNode也就是Slave
    其中,NameNode负责管理文件系统的元数据,并承担类似路由的角色,通过元数据映射数据块的位置然后处理客户端读写请求;DataNode负责存储实际的数据。而一旦NameNode挂了,则无法进行对数据块的映射,无法实现文件数据的重组,很危险,因此搞了一个SecondaryNameNode第二名字结点做备用的
    在HDFS中存放数据,Client会将文件切分成多个Block块,然后进行存储,分为两部分:元数据在基于内存的NameNode上;内容数据形成block块,存在基于硬盘的DataNode上

    HDFS架构图 HDFS写文件流程
    上面的流程图步骤1-7顺序描述了HDFS中写文件的全过程
    简单来说,就是:
    • 1.客户端调用DistributedFileSystem的create方法,首先为元数据创建一个NameNode
    • 2.NameNode创建成功后,再创建一个个DataNode,写入内容数据。写入内容数据完成后,向客户端返回close
    • 3.最后通知NameNode文件写完了,写在了哪些DataNode的哪些块上面
      注意:HDFS对文件操作是base在一次写多次读的模式下。一个文件一旦创建、写入、关闭之后就没有二次修改的必要了

    相关文章

      网友评论

          本文标题:初识Hive和Hadoop 2020-04-11

          本文链接:https://www.haomeiwen.com/subject/xyuymhtx.html