hadoop学习记录(一)HDFS

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

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

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

本节并不大算为大家讲接什么是hadoop,或者hadoop的基础知识因为这些知识在网上有很多详细的介绍,在这里想说的是关于hdfs的相关内容.或许大家都知道hdfs是hadoop底层存储模块,专门用于存放数据,那么在进行文件上传的时候hdfs是如何进行的呢?我们按照宏观和微观来进行相关解析工作. 首先需要向大家解释如下几个概念: (1) secondaryNamenode: 其实起初我对SN的理解也和大部分人相同,认为SN是NN(nameNode)的一个实时热备份实现HA,并且在一次笔试的过程中

hadoop学习记录(二)HDFS java api

FSDateinputStream 对象 FileSystem对象中的open()方法返回的是FSDateInputStream对象,改类继承了java.io.DateInoutStream接口.支持随机访问 Seekable接口 支持在文件中找到指定位置,并提供一个查询当前位置相对于文件起始位置偏移量的查询方法. public interface Seekable{ //seek()可以移到文件中任意一个绝对位置 void seek(long pos); long getPos(); bool

hadoop学习笔记之--- HDFS原理学习

HDFS HDFS设计基础与目标: 冗余:硬件错误是常态 流式数据访问.即数据比量读取而非随机读写,Hadoop擅长做的是数据分析而不是事务处理. 大规模数据集 简单一致性模型.为了降低系统复杂程度,对文件采用一次性写多多次读的逻辑设置,即是文件一经写入,关闭,再也不能修改. 程序采用"数据京近"原则分配节点执行. OLTP:偶尔随机性德读写 HDFS体系架构: NameNode: 管理文件系统的命名空间: 记录每个文件数据块在各个Datanode上的位置和副本信息: 协调客户端对文件

hadoop学习记录(三)HBase基本概念

这一次开始学习HBase数据库. 我用的是VMWare + ubuntu16.04 +Hbase1.1.5 +hadoop2.6.0的组合. 经过亲自安装验证,版本间没有发生冲突,可以进行学习和开发. 具体的安装过程参照了厦门大学数据实验室的安装教程,个人感觉这里面的安装步骤非常详细,非常少适合新人上手,只要懂得基本的java和linux基础即可. 下面是厦大数据实验室的链接:http://dblab.xmu.edu.cn/blog/588-2/#more-588 Hbase即hadoop da

Hadoop学习笔记(三) ——HDFS

参考书籍:<Hadoop实战>第二版 第9章:HDFS详解 1. HDFS基本操作 @ 出现的bug信息 @[email protected] WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable @[email protected] WARN hdfs.DFSClient: DFSInpu

hadoop学习记录(四)hadoop2.6 hive配置

一.安装mysql 1安装服务器 sudo apt-get install mysql-server 2安装mysql客户端 sudo apt-get install mysql-client sudo apt-get install libmysqlclient-dev 3检查是否有mysql服务开启如果出现第二行则成功开启 netstat -tap|grep mysql tcp 0 0 *:mysql *:* LISTEN 6153/mysqld 4开启mysql服务命令 service m

Hadoop学习笔记0002——HDFS文件操作

  说明:Hadoop之HDFS文件操作常有两种方式,命令行方式和JavaAPI方式. 方式一:命令行方式 Hadoop文件操作命令形式为:hadoop fs -cmd <args> 说明:cmd是具体的文件操作命令,<args>是一组数目可变的参数. Hadoop最常用的文件操作命令,包括添加文件和目录.获取文件.删除文件等. 1 添加文件和目录 HDFS有一个默认工作目录/usr/$USER,其中$USER是你的登录用户名,作者的用户名是root.该目录不能自动创建,需要执行m

hadoop 学习记录

1.运行spark报出如下错误: org.apache.hadoop.security.AccessControlException: Permission denied: 解决方法,添加用户:如下 sudo -u hdfs hadoop fs -mkdir /user/stat sudo -u hdfs hadoop fs -chown root:root /user/stat

大数据-hadoop学习记录

hadoop 创始人 DogCutting 高效,可扩展性,高容错性,价格低廉的大数据软件处理架构 主要应用于数据分析.数据实时查询.数据挖掘领域 HDFS(HadoopDistributeFileSystem 分布式文件系统) 总结:从字面意思我们可以简单理解为:hadoop是用来处理大数据的,HDFS是用来存储大数据的. -*-hadoop项目结构-*- MapReduce 主要用于离线计算 Tez (DAG计算)基于YAN之上生成无向循环图,优化计算 Spark 和Mapreduce相似在