HDFS 文件系统,可以说是分布式数据库吧
结构是 目录树
适用场景:一次写入,多次读出.好像不太支持改删
优点:
1.高容错:
因为他会备份,所以一份出问题了,并不影响其他几份
如果副本丢失后,定时恢复.应该是定时检查然后恢复
每次启动,DN向NN汇报备份的存储情况.默认每个6个小时重新汇报
2.要求比较低
不需要对服务器有特定要求(如高级服务器有负载均衡功能1台20W多)
缺点:
1.不适合低延时数据访问,
2.无法高效对大量小文件进行存储.
NameNode的内存是固定的,也就是说,目录和块信息总有完的时候,如果全是小程序,就亏的很.
小文件存储的寻址超过读取,违反HDFS设计目标
总结: 不值得 占内存太大 找数据太麻烦 效率太低 消耗太高,性价比不足
3.不支持并发写入,文件随机修改
一个文件不能多个线程同时写入.
只支持数据append,不支持随机修改
其实还是快,如果要修改的话,有可能影响多个块,因为写多了,后面的块可能都会被改掉.有可能直接影响结构了.
设置块大小:
传输时间 = 寻址时间 / 0.01
所以看磁盘传输的秒速
要在shell使用hadoop命令,必须先输入 hadoop fs
合并下载getmerage就是,下载多个文件,内容合并到一个文件中
cp 和mv处理目录这里都不需要-r
rm 删除目录 -r
-f是免回答
du 统计文件夹大小
第一列 是单个大小
第二列 备份大小
setrep 设置副本数量
这个只能针对某个文件修改
设置之后,立刻生效
配置Window环境
- dll放入system32
- 配置环境变量(Hadoop)
流程: 连 用 关
1.创建客户端连接对象