hadoop - 基础操作
查看文件;
[root@hadoop hadoop]# hadoop fs -lsr /
drwxr-xr-x - root supergroup 0 2016-12-27 10:49 /home
drwxr-xr-x - root supergroup 0 2016-12-27 10:49 /home/hadoop
drwxr-xr-x - root supergroup 0 2016-12-27 10:49 /home/hadoop/tmp
drwxr-xr-x - root supergroup 0 2016-12-27 10:49 /home/hadoop/tmp/mapred
drwx------ - root supergroup 0 2016-12-27 10:49 /home/hadoop/tmp/mapred/system
-rw------- 1 root supergroup 4 2016-12-27 10:49 /home/hadoop/tmp/mapred/system/jobtracker.info
[root@hadoop hadoop]# hadoop fs -ls /
Found 1 items
drwxr-xr-x - root supergroup 0 2016-12-27 10:49 /home
[root@hadoop hadoop]#
HDFS
HDFS 的web 接口访问
http://hadoop:50070
可以查看 namenode 状态;
http://hadoop:50075
可以查看 datanode 状态;
活动方式 体系结构
分布式文件管理系统 HDFS 一次写入 多次查询 不支持并发写/ 小文件不合适
容错 节点脱机 仍可以运作 (因为是多台节点 、分布式系统不会宕 数据不确定)
多机器多用户分享文件 和存储空间;
通透性 通过网络访问文件动作 由程序和用户访问;
hdsf 操作语法:操作方式 hadoop fs xxx
hadoop fs -ls hdfs://hadoop:9000/
### *** 查找目录
查询目录结构 :hadop fs -ls / 根目录
[root@hadoop ~]# hadoop fs -lsr /
Warning: $HADOOP_HOME is deprecated.
类别权限 副本 用户 组 大小
drwxr-xr-x - root supergroup 0 2016-12-12 14:04 /home
drwxr-xr-x - root supergroup 0 2016-12-12 14:04 /home/hadoop
drwxr-xr-x - root supergroup 0 2016-12-12 14:04 /home/hadoop/tmp
drwxr-xr-x - root supergroup 0 2016-12-12 14:39 /home/hadoop/tmp/mapred
drwx------ - root supergroup 0 2016-12-12 14:39 /home/hadoop/tmp/mapred/system
-rw------- 1 root supergroup 4 2016-12-12 14:39 /home/hadoop/tmp/mapred/system/jobtracker.info
[root@hadoop ~]#
-- ( 上面文件的 "1" 表示副本;而文件夹没有 、文件只是组织管理 。 )
创建文件 hadoop fs mkdir /
HDFS 主要是用于 上传数据 部署FTP 服务器上传文件;一次写多次读
(默认 不能重复;上传时目录不存在时 如果上传文件的目的目录不存在时则上传文件默认为目录名)
hadoop fs -text <hdfs > 查看文件内容
配置文件
hadoop 环境变量脚本
hadoop-env.sh
hadoop 核心配置文件
core-site.xml 配置hadoop 的运行临时文件的主目录 和 HDFS 的访问路径
fs.default.name
hdfs 核心配置文件 可以配置副本集数
hdfs-site.xml 存储的副本数
MapReduce 的配置文件
mapred-site.xml Jobtracker 的访问路径;
(源数据在运行时 是放在内存中)
*/tmp/dfs/name/in_use.lock 表示这个目录已经被 namenode 使用;
*/tmp/dfs/name/current namenode 写入文件;
HA 解决方案 冷备份;不支持热备
从 namenode 上下载元数据信息(fsimage、edits) 然后把二者合并生成新的fsimage;保存本地 并将其推送到namenode上;重置namenode和edits
Datanode 提供真实数据的存储服务
文件块 block 最基础的存储单位
HDFS 默认block大小是64M ,以一个256M文件 共有256/64=4个block
# stat / 和windows 系统文件 簇的一样是存储单位;(但当不到一个block大小,就会占用文件实际大小 )
.meta 校验文件;
-rw-r--r-- 1 root root 4 Dec 12 16:10 blk_1423469742724759577
-rw-r--r-- 1 root root 11 Dec 12 16:10 blk_1423469742724759577_1025.meta
hdfs 根目录: hadoop fs -ls/
文件block块的 位置设置文件主目录;
我默认设置的 /home/hadoop/tmp/dfs/data/current
" SQL 文件结构化数据 "
默认是3个副本 ;副本越多越好 但是 占用磁盘控件 ;
使用Java 操作hadoop 操作的是 fileSystem
单一节点namenode 备份block 文件 也会有一部分数据丢失 ;有一个是高可用行 HA
3、RPC (remote procedure call)
不同Java进程间的对象方法的调用 (不同Java进程间的对象调用;)
一方称作服务端 server 一方称作客户端 client (CS 模式)
server 端提供对象 供客户端调用 、被调用的对象的方法的执行发生在server 端;
RPC 是hadoop 框架运行的基础。运行在框架之上的 ;