• hadoop的灵感源于谷歌,最初目的是解决传统数据库处理数据成本高和速度慢的问题。
  • hadoop两个核心项目是HDFS(hadoop分布式文件系统)和MapReduce。
  • HDFS用来实现数据的存储,它有别于传统关系型数据库的数据存储方式,不需要很强的数据完整性,以流式数据访问模式来存储超大文件。当数据集的大小超过一  台独立的物理机的存储能力是。就有必要对它进行分区并存储到若干台单独的计算机上。管理网络中跨多台计算机存储的文件系统称为分布式文件系统。  HDFS上运用到了一个块的概念,即将其上的文件划分为块大小的多个分块作为独立的存储单元,一般每个磁盘默认数据块的大小是512字节,而HDFS块则默认为64MB,比磁盘块的目的是为了最小化寻址开销。用块作为存储单元可以存储大于任意磁盘大小的文件,同时还能简化存储子系统的设计。在多台机器上存储相同的块可以保证当一个块损坏时能够执行处理另一台机器上的块数据。
  • HDFS集群上有两种节点。一个是namenode,另一个则是datanode。namenode起到了管理者的作用,管理着整个文件系统的命名空间,没有namenode,文件系统将无法使用。一旦存储namenode的机器损坏,那么所有文件也将丢失,因此需要采取一定的应急措施来防止这种情况带来的无法挽回的影响。第一种便是备份那些组成文件系统元数据持久状态的文件,将namenode在多个文件系统上保持持久状态。第二种则是运行一个辅助的namenode。
  • 未完待续

hadoop学习记录(一)HDFS的更多相关文章

  1. hadoop学习记录1 初始hadoop

    起因 因为工作需要用到,所以需要学习hadoop,所以记录这篇文章,主要分享自己快速搭建hadoop环境与运行一个demo 搭建环境 网上搭建hadoop环境的例子我看蛮多的.但是我看都比较复杂,要求 ...

  2. Hadoop学习记录(4)|MapReduce原理|API操作使用

    MapReduce概念 MapReduce是一种分布式计算模型,由谷歌提出,主要用于搜索领域,解决海量数据计算问题. MR由两个阶段组成:Map和Reduce,用户只需要实现map()和reduce( ...

  3. 【Hadoop学习之四】HDFS HA搭建(QJM)

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 由于NameNode对于整个HDF ...

  4. Hadoop学习笔记: HDFS

    注:该文内容部分来源于ChinaHadoop.cn上的hadoop视频教程. 一. HDFS概述 HDFS即Hadoop Distributed File System, 源于Google发表于200 ...

  5. Hadoop学习记录(5)|集群搭建|节点动态添加删除

    集群概念 计算机集群是一种计算机系统,通过一组松散继承的计算机软件或硬件连接连接起来高度紧密地协作完成计算工作. 集群系统中的单个计算机通常称为节点,通过局域网连接. 集群特点: 1.效率高,通过多态 ...

  6. Hadoop学习笔记(2)-HDFS的基本操作(Shell命令)

    在这里我给大家继续分享一些关于HDFS分布式文件的经验哈,其中包括一些hdfs的基本的shell命令的操作,再加上hdfs java程序设计.在前面我已经写了关于如何去搭建hadoop这样一个大数据平 ...

  7. Hadoop学习记录(2)|HDFS shell命令|体系结构

    HDFS的shell 调用文件系统(FS)shell命令使用hadoop fs的形式 所有的FS shell命令使用URI路径作为参数. URI格式是scheme://authority/path.H ...

  8. hadoop学习记录--hdfs文件上传过程源码解析

    本节并不大算为大家讲接什么是hadoop,或者hadoop的基础知识因为这些知识在网上有很多详细的介绍,在这里想说的是关于hdfs的相关内容.或许大家都知道hdfs是hadoop底层存储模块,专门用于 ...

  9. Hadoop学习记录(3)|HDFS API 操作|RPC调用

    HDFS的API操作 URL方式访问 package hdfs; import java.io.IOException; import java.io.InputStream; import java ...

随机推荐

  1. [算法] 插入排序 Insertion Sort

    插入排序(Insertion Sort)是一种简单直观的排序算法.它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入.插入排序在实现上,通常采用in-pla ...

  2. [HIve - LanguageManual] Subqueries

    Subqueries in the FROM Clause Subqueries in the WHERE Clause Subqueries in the FROM Clause SELECT .. ...

  3. java计时代码

    public class Test{ public static void main(String[] args) { long startMili=System.currentTimeMillis( ...

  4. spring-boot系列:初试spring-boot

    部署父工程 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http: ...

  5. 对JDK,JRE,JVM的理解

    JAVA用到现在还是分不太清楚JDK,JRE,JVM这三者的区别与联系,一直都是模模糊糊的.所以今天整理下此中的关系. 简单说明:我们编写的.java文件经过JDK(JDK的bin目录下javac.e ...

  6. 信息图:iOS 7开发者需要知道的事

      如果你想为iOS 设备开发app,你需要知道如何与软件交互,如何设计,你还要知道苹果独特的开发理念和开发工具.真正的能力还需要成功地从其他行业领域借鉴核心概念.最后把所有这些东西糅合进你的信息库中 ...

  7. (转)在iOS中使用icon font

    http://ued.taobao.org/blog/?p=8579 在开发阿里数据iOS版客户端的时候,由于项目进度很紧,项目里的所有图标都是用最平常的背景图片方案来实现.而为了要兼容普通屏与Ret ...

  8. poj 2349 Arctic Network

    http://poj.org/problem?id=2349 Arctic Network Time Limit: 2000MS   Memory Limit: 65536K Total Submis ...

  9. UVaLive 7361 Immortal Porpoises (矩阵快速幂)

    题意:求Fibonacci的第 n 项. 析:矩阵快速幂,如果不懂请看http://www.cnblogs.com/dwtfukgv/articles/5595078.html 是不是很好懂呢. 代码 ...

  10. AfxGetMainWnd()函数用法

    CWnd* AfxGetMainWnd( ); 使用AfxGetMainWnd函数获取MFC程序中的主框架类指针是一个常用作法. 就是获得应用程序主窗口的指针,AfxGetMainWnd()-> ...