windows上传文件到 linux的hdfs
一、windows上传文件到 linux的hdfs
1、先在 centos 上开启 hdfs, 用 jps 可以看到下面信息, 说明完成开启

2、在win上配置 hadoop (https://www.cnblogs.com/Jomini/p/11432484.html) 后,
要在 hadoop 的 bin 文件上放以下两个文件(网上找下载),

3、创建 maven 工程, 运行读写程序
pom 文件
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.8.2</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.7.2</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.7.2</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>2.7.2</version>
</dependency>
运行上传文件
import java.io.IOException;
import java.net.Socket;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path; public class Apptest {
public static void main(String[] args) throws Exception, IOException {
upload();
} public static void upload() throws IOException {
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "hdfs://192.168.121.133:9000");
FileSystem fs = FileSystem.get(conf);
Path src = new Path("d://test.txt");
Path dest = new Path("/");
fs.copyFromLocalFile(src, dest);
FileStatus[] fileStatus = fs.listStatus(dest);
for (FileStatus file : fileStatus) {
System.out.println(file.getPath());
}
System.out.println("上传成功");
} }
运行使用 Run configuration, 要 配置 linux 上的用户,不然抛出用户权限问题

console

hdfs

二、在 hdfs 创建路径创建路径
2.1 在 hdfs 创建路径
程序
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
public class Apptest {
public static void main(String[] args) throws Exception, IOException {
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "hdfs://192.168.121.133:9000");
//获取hdfs 客户端对象
FileSystem fs = FileSystem.get(conf);
//在hdfs 上创建路径
fs.mkdirs(new Path("/testPath"));
//关闭资源
fs.close(); System.out.println("end");
}
}
运行结果

2.2 在上面创建的路径 "/testPath" 下面 再创建路径 file
程序
import java.io.IOException;
import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path; public class Apptest {
public static void main(String[] args) throws Exception, IOException { Configuration conf = new Configuration(); //获取hdfs 客户端对象
FileSystem fs = FileSystem.get(new URI("hdfs://192.168.121.133:9000"),conf,"root"); //在 /testPath 下创建路径
fs.mkdirs(new Path("/testPath/file")); //关闭资源
fs.close(); System.out.println("end");
}
}
点击在hdfs上面的路径 /testPath 会出现 /file

windows上传文件到 linux的hdfs的更多相关文章
- Windows上传文件到linux 使用winscp
Windows上传文件到linux 使用winscp, winscp下载目录 https://sourceforge.net/projects/winscp/postdownload?source=d ...
- Xshell实现Windows上传文件到Linux主机
我是怎么操作的: 1.打开一台本地Linux虚拟机,使用mount 挂载Windows的共享文件夹到Linux上,然后拷贝数据到Linux虚拟机里面:(经常第一步都不顺利,无法挂载Windows的文件 ...
- linux安装lrzsz支持rz从windows上传文件到linux
1.下载lrzsz wget https://wangxuejin-data-1252194948.cos.ap-shanghai.myqcloud.com/lrzsz-0.12.20.tar.gz ...
- windows 上传文件到 Linux 服务器
方法一: pscp E:\javaWP\new11111.txt username@130.75.7.156:/home/
- windows上传文件到linux
1.在putty的网站上下载putty跟pscp 2.安装ssh跟putty sudo apt-get install openssh-server sudo apt-get install putt ...
- 使用FileZilla解决从Windows上传文件到Linux vsftpd的乱码问题!
日前将golang的开发环境从windows转移到了CentOS6上,为了把以前写得项目代码上传到centos,架设了vsftpd服务,设置为本地用户登录,然后用惯用的ftp软件flashfxp上传了 ...
- 利用Xshell从windows上传文件到linux
1.首先,打开你的xshell客户端. 2.我用的是ubuntu 所以用 apt-get install lrzsz 命令来安装这个上传软件. 安装成功以后,可以使用rz上传,sz下载. 然后等待上传 ...
- windows上传文件到linux云服务器上
安装putty,将pscp.exe移到 C:\Windows\System32 目录下. 在cmd 中执行,pscp -l rot -pw [password] -ls [ip]:/opt 查看目录 ...
- python 从windows上传文件到linux脚本
import paramiko import datetime import os hostname = '192.168.112.132' username = 'root' password = ...
随机推荐
- Paper | U-Net: Convolutional Networks for Biomedical Image Segmentation
目录 故事背景 U-Net 具体结构 损失 数据扩充 发表在2015 MICCAI.原本是一篇医学图像分割的论文,但由于U-Net杰出的网络设计,得到了8k+的引用. 摘要 There is larg ...
- 删除cookie的封装
remove cookie(key,options){ options=options||{}; options.expires=-1; 删除cookie,其实就是修改cookie,将之前设置好的co ...
- Image-transpose
import Image im=Image.open('test.jpg') #out = im.resize((128, 128),Image.BILINEAR) #改变大小 #out = im.r ...
- 十二、深入理解Java内存模型
深入理解Java内存模型 [1]CPU和缓存的一致性 我们应该都知道,计算机在执行程序的时候,每条指令都是在CPU中执行的,而执行的时候,又免不了要和数据打交道.而计算机上面的数据,是存放在主存当 ...
- Linux安装部署jdk+tomcat+mysql
Linux安装部署测试环境 1. JDK安装下载 安装 yum search jdk 找到合适的jdk版本,以下图中的版本为例 yum install java-1.8.0-openjdk.x86_6 ...
- Spring Boot整合Mybatis配置详解
首先,你得有个Spring Boot项目. 平时开发常用的repository包在mybatis里被替换成了mapper. 配置: 1.引入依赖: <dependency> <gro ...
- SqlBulkCopy将DataTable中的数据批量插入数据库中
#region 使用SqlBulkCopy将DataTable中的数据批量插入数据库中 /// <summary> /// 注意:DataTable中的列需要与数据库表中的列完全一致.// ...
- [Flutter] Windows桌面程序开发
在今年5月的谷歌I/O 2019大会时, 谷歌就宣布了flutter已经支持全平台开发, 包括 android, ios, mac, linux, windows, web 等 . Flutter桌面 ...
- 时间复杂度o(1), o(n), o(logn), o(nlogn)
1.时间复杂度o(1), o(n), o(logn), o(nlogn).算法时间复杂度的时候有说o(1), o(n), o(logn), o(nlogn),这是算法的时空复杂度的表示.不仅仅用于表示 ...
- 解决 Windows Server 2008 R2 上 Windows Update 无法失败,提示 8024402F
1.同步服务器时间 2.打开 services.msc,停止 Windows Update Service 3.手动下载 KB3138615 补丁:https://support.microsoft. ...