【Hadoop入门】Hadoop文件操作指南:文件上传下载详解

1 Hadoop文件操作基础概念

Hadoop分布式文件系统(HDFS)是Hadoop生态的核心存储组件,专为大规模数据存储设计。
【Hadoop入门】Hadoop文件操作指南:文件上传下载详解_第1张图片

2 命令行操作指南

2.1 文件上传操作

hadoop fs -put <本地路径> 
# 示例:将本地文件上传到HDFS
hadoop fs -put /home/user/data.txt /user/hadoop/input/
  • 高级选项

参数

说明

示例

-f

强制覆盖已存在文件

hadoop fs -put -f local.txt /input

-p

保留访问时间等属性

hadoop fs -put -p log.txt /logs

-l

允许大文件(>2GB)上传

hadoop fs -put -l bigfile.zip /data

2.2 文件下载操作

hadoop fs -get  <本地路径>
# 示例:从HDFS下载文件到本地
hadoop fs -get /user/hadoop/output/result.csv ./results/
  • 实用技巧
# 下载多个文件到本地目录
hadoop fs -get /user/hadoop/logs/* ./local_logs/

# 只下载比本地新的文件
hadoop fs -get -ignoreCrc /data/newfile.txt

3 文件传输原理图解

【Hadoop入门】Hadoop文件操作指南:文件上传下载详解_第2张图片

4 性能优化技巧

4.1 大文件传输优化

技术

说明

配置参数

并行上传

分块并行上传

mapreduce.client.submit.file.replication

压缩传输

减少网络IO

io.compression.codecs

校验跳过

避免重复校验

dfs.client.read.shortcircuit.skip.checksum

4.2 小文件处理方案

# 合并小文件为HAR归档
hadoop archive -archiveName data.har -p /input/small_files /output

# 使用SequenceFile存储
hadoop jar hadoop-examples.jar sequencefilewriter /input /output

你可能感兴趣的:(大数据成长笔记,hadoop,大数据,分布式)