HDFS基本命令及上传文件API

简介: HDFS基本命令及上传文件API

一、HDFS基本命令行操作:

1.HDFS集群修改SecondaryNameNode位置到hd09-2

   (1)修改hdfs-site.xml

<configuration>
            //配置元数据存储位置
            <property>
                <name>dfs.namenode.name.dir</name>
                <value>/root/hd/dfs/name</value>
            </property>
            //配置数据存储位置
            <property>
                <name>dfs.datanode.data.dir</name>
                <value>/root/hd/dfs/data</value>
            </property>
            <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>hd09-2:50090</value>
            </property>    
        </configuration>

       注意上面的第三个<property>不是

<property>
                <name>dfs.namenode.secondary.https-address</name>
                <value>hd09-2:50090</value>
            </property>

 

       

   (2)分发hdfs-site.xml到其他服务器

cd /root/hd/hadoop-2.8.4/etc/hadoop
        scp hdfs-site.xml hd09-2:$PWD
        scp hdfs-site.xml hd09-3:$PWD

   (3)hdfs启动命令

 

start-dfs.sh

   (4)hdfs停止命令

 

stop-dfs.sh

2.HDFS集群修改replication(副本数)

       修改hdfs-site.xml 在<configuration>中加入

 

<property>
                <name>dfs.replication</name>
                <value>3</value>
            </property>

       其中<value>中的值就是副本数


3.HDFS集群修改blocksize(块大小)                

       修改hdfs-site.xml 在<configuration>中加入

     

<property>
                <name>dfs.blocksize</name>
                <value>134217728</value>
            </property>

       其中<value>中的值就是块大小,单位是字节(byte)

       

4.hdfs命令行

   (1)查看帮助

       hdfs dfs -help

       

   (2)查看当前目录信息

       hdfs dfs -ls /

       

   (3)上传文件

       hdfs dfs -put /本地路径 /hdfs路径

       

   (4)剪切文件

       hdfs dfs -moveFromLocal a.txt /aa.txt

       

   (5)下载文件到本地

       hdfs dfs -get /hdfs路径 /本地路径

       

   (6)合并下载

       hdfs dfs -getmerge /hdfs路径文件夹 /合并后的文件

       

   (7)创建文件夹

       hdfs dfs -mkdir /hello

       

   (8)创建多级文件夹

       hdfs dfs -mkdir -p /hello/world

       

   (9)移动hdfs文件

       hdfs dfs -mv /hdfs路径 /hdfs路径

       

   (10)复制hdfs文件

       hdfs dfs -cp /hdfs路径 /hdfs路径

       

   (11)删除hdfs文件

       hdfs dfs -rm /aa.txt

       

   (12)删除hdfs文件夹

       hdfs dfs -rm -r /hello

       

   (13)查看hdfs中的文件

       hdfs dfs -cat /文件

       hdfs dfs -tail -f /文件

       

   (14)查看文件夹中有多少个文件

       hdfs dfs -count /文件夹

       

   (15)查看hdfs的总空间

       hdfs dfs -df /

       hdfs dfs -df -h /

       

   (16)修改副本数    

       hdfs dfs -setrep 1 /a.txt

 

二、上传文件的简单API:

package com.css.hdfs01;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
public class HdfsClientDemo01 {
    public static void main(String[] args) throws IOException, InterruptedException, URISyntaxException {
        //1.客户端加载配置文件
        Configuration conf = new Configuration();
        //2.指定配置(设置成2个副本数)
        conf.set("dfs.replication", "2");
        //3.指定块大小
        conf.set("dfs.blocksize", "64m");
        //4.构造客户端
        FileSystem fs = FileSystem.get(new URI("hdfs://192.168.146.132:9000"), conf, "root");
        //5.上传文件
        fs.copyFromLocalFile(new Path("c:/words.txt"), new Path("/words.txt"));
        //6.关闭资源
        fs.close();
    }
}
相关文章
|
1月前
|
Java API Maven
HDFS的API操作
HDFS的API操作
26 0
|
2月前
|
API
uniapp上传文件时用到的api是什么?格式是什么?
uniapp上传文件时用到的api是什么?格式是什么?
|
4月前
|
分布式计算 Java 大数据
【大数据技术Hadoop+Spark】HDFS Shell常用命令及HDFS Java API详解及实战(超详细 附源码)
【大数据技术Hadoop+Spark】HDFS Shell常用命令及HDFS Java API详解及实战(超详细 附源码)
229 0
|
15天前
|
分布式计算 Hadoop Shell
Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
【4月更文挑战第4天】Hadoop【基础知识 04】【HDFS常用shell命令】(hadoop fs + hadoop dfs + hdfs dfs 使用举例)
28 5
|
1月前
|
分布式计算 Hadoop Linux
HDFS的常用命令
HDFS的常用命令
18 0
|
4月前
|
分布式计算 Hadoop Java
[hadoop3.x系列]HDFS REST HTTP API的使用(二)HttpFS
[hadoop3.x系列]HDFS REST HTTP API的使用(二)HttpFS
54 1
|
4月前
|
分布式计算 Hadoop API
✨[hadoop3.x系列]HDFS REST HTTP API的使用(一)WebHDFS
✨[hadoop3.x系列]HDFS REST HTTP API的使用(一)WebHDFS
63 1
|
19天前
|
缓存 前端开发 API
API接口封装系列
API(Application Programming Interface)接口封装是将系统内部的功能封装成可复用的程序接口并向外部提供,以便其他系统调用和使用这些功能,通过这种方式实现系统之间的通信和协作。下面将介绍API接口封装的一些关键步骤和注意事项。
|
26天前
|
监控 前端开发 JavaScript
实战篇:商品API接口在跨平台销售中的有效运用与案例解析
随着电子商务的蓬勃发展,企业为了扩大市场覆盖面,经常需要在多个在线平台上展示和销售产品。然而,手工管理多个平台的库存、价格、商品描述等信息既耗时又容易出错。商品API接口在这一背景下显得尤为重要,它能够帮助企业在不同的销售平台之间实现商品信息的高效同步和管理。本文将通过具体的淘宝API接口使用案例,展示如何在跨平台销售中有效利用商品API接口,以及如何通过代码实现数据的统一管理。
|
2天前
|
前端开发 Java 测试技术
IDEA 版 API 接口神器来了,一键生成文档,贼香!
IDEA 版 API 接口神器来了,一键生成文档,贼香!
8 0