本地上傳檔案到hadoop的hdfs檔案系統裡
引言:通過Java本地把windows裡的檔案資源上傳到centOs環境下的 hdfs檔案系統裡,中間遇到了很多問題,不過最終還是把檔案上傳到了hdfs裡了
環境:centos-7.0,hadoop.2.8.5.gz,jdk1.8,eclipse
1、下載hadoop.2.8.5.tar.gz和jdk1.8的linux版本安裝包,上傳到linux的根目錄下並配置環境變數,useradd hadoop一個使用者,這點就不再詳細說了,自己百度一下,隨便把hadoop.tar.gz解壓到一目錄裡,比如/opt/hadoop/hadoop.2.8.5,配置好以後可以看到版本。
2、我們進入到/opt/hadoop/hadoop.2.8.5/etc/裡面又很多配置檔案,我們修改hdfs.site.xml檔案跟core.site.xml檔案
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.rpc-bind-host</name>
<value>0.0.0.0</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
core.site.xml 192.168.159.134是我本機的ip,通過ip add可以進行檢視,每個人都不一樣。
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.159.134:9000</value>
</property>
</configuration>
3、一些常用命令:
cd /opt/hadoop/hadoop.2.8.5/etc/ service iptables stop// 要把防火牆關掉,不然無法進行網路連線
cd /opt/hadoop/hadoop.2.8.5/bin/ hdfs namenode -format //格式化名稱節點
cd /opt/hadoop/hadoop.2.8.5/sbin/ start-dfs.sh//重啟hadoop
cd /opt/hadoop/hadoop.2.8.5/sbin/ start-dfs.sh//stop hadoop
hadoop fs -ls hdfs://192.168.159.134:9000/ //檢視上傳的檔案
hadoop fs -put /a hdfs:192.168.159.134:9000 //centos環境下本地上傳檔案到hdfs
netstat -lnp//檢視網路埠
4、編寫Java 程式碼
package edu.jmi.hdfsclient;
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;
/**
* Hello world!
*
*/
public class AppTest
{
public static void main( String[] args ) throws Exception, IOException
{
upload();
}
public static void download() throws IOException {
Configuration conf = new Configuration();
conf.set("fs.defaultFS","hdfs://192.168.159.134:9000");
FileSystem fs = FileSystem.newInstance(conf);
fs.copyToLocalFile(new Path("/start-all.sh"),new Path("e://"));
}
public static void upload() throws IOException {
Configuration conf = new Configuration();
conf.set("fs.defaultFS","hdfs://192.168.159.134:9000");
FileSystem fs = FileSystem.get(conf);
Path src=new Path("d://my.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("上傳成功");
}
public static void test()throws Exception{
Socket socket=new Socket("192.168.159.134",9000);
System.out.println(socket);//檢視網路是否相同,拒絕說明防火牆開了,外界無法訪問到網路。關一下就好了
}
}
5、效果圖
相關推薦
本地上傳檔案到hadoop的hdfs檔案系統裡
引言:通過Java本地把windows裡的檔案資源上傳到centOs環境下的 hdfs檔案系統裡,中間遇到了很多問題,不過最終還是把檔案上傳到了hdfs裡了 環境:centos-7.0,hadoop.2.8.5.gz,jdk1.8,eclipse 1、下載hadoop.2
Linux本地上傳檔案到HDFS檔案系統
上傳 切換使用者 su hdfs 檢視hdfs檔案系統目錄檔案 hdfs dfs -ls /user/tgm 上傳檔案 hdfs dfs -put 本地檔案目錄 HDFS檔案目錄 刪除檔案
(4)通過呼叫hadoop的java api實現本地檔案上傳到hadoop檔案系統上
(1)首先建立java project 選擇eclipse選單上File->New->Java Project。 並命名為UploadFile。 (2)新增必要的hadoop jar包 右鍵選擇JRE System Library,選擇
Hadoop:本地檔案(window系統)定時獲取檔案並上傳至HDFS檔案(兩個虛擬機器)系統 Java 實現
實現功能:定時日誌採集並上傳至HDFS檔案系統的Java API實現 環境+工具:windows + 虛擬機器Centos * 2 + eclipse + windows下編譯的Hadoop jar包 + Hadoop叢集 一、流程 1)啟
藍鯨平臺本地上傳大檔案ERR_CONNECTION_RESE報錯處理client intended to send too large body:,server: paas.blueking.com
[[email protected] etc]# pwd /data/bkce/etc [[email protected] etc]# vim nginx.conf [[email protected] nginx]# pw
github 本地git上傳和刪除檔案
提交程式碼 $ git init # 初始化 git 專案 $ git
Centos安裝lrzsz與本地終端上傳、下載檔案
一、首先安裝lrzsz yum -y install lrzsz 二、命令 1.上傳檔案,執行命令rz,會跳出檔案選擇視窗,選擇好檔案,點選確認即可。 rz 執行rz命令後彈出選擇檔案視窗,找到要上傳的檔案後確認,檔案會被上傳到Centos當前目錄下 2.下載檔案,執行命令sz sz 檔名 執
Linux伺服器檔案和windows本機檔案互傳方法(本地檔案上傳Linux,Linux檔案下載到本機)
1、windows系統中下載XShell安裝檔案。下載地址:https://www.newasp.net/soft/384562.html 2、安裝之後,新建會話輸入遠端linux的賬號和密碼。 3、上傳檔案:在shell終端模擬器中輸入命令rz,即可從本機選擇檔案利用Zmodem上傳到伺服器
linux系統上傳和下載檔案(命令列)
SecureCRT與linux互相上傳和下載檔案(命令列) 在scrt中檔案的上傳或者下載除了使用命令列以後可以通過ftp,今天咋們就用命令列rz實現檔案的上傳, 上傳 1. 檔案的上傳
SecureCRT 6.5從本地上傳檔案到linux虛擬機器
前提:你的電腦已經安裝虛擬機器,我安裝的是VMware;並且在你的虛擬機器上面已經安裝linux,我安裝的是CentOS,建議安裝CentOS或者 Red Hat,尤其是紅帽,你遇到問題,在網上可以很快查到解決方法; 1,配置SecureCRT:選項-->會話選項--
XShell本地上傳檔案到Ubuntu上及從Ubuntu下載檔案到本地
使用XShell本地上傳檔案到Ubuntu上及從Ubuntu下載檔案到本地。 1.第一種方法是最常用的 :如果下載了Xshell和Xftp,Ctrl+Alt+F就可以選擇檔案的互傳了!(虛擬機器/雲伺服器通用)--只要相互間能ping得通。 2.第二種方法 :
解決Moodle自定義form的檔案上傳,會被系統自動刪除
解決Moodle自定義form的檔案上傳,會被系統自動刪除 問題: 二次開發Moodle的時候,在繼承系統自帶moodleform類來實現表單提交時,通過使用系統自帶的檔案上傳(filemanager、filepicker)會出現檔案上傳一段時間後會自動被系統刪除(丟失
本地上傳檔案,資料夾 到gitlab 專案分支
檔案上傳一般都是上傳到master分支如何上傳到別的分支1. git init 生成本地./git 檔案git init2. 新增需要上傳的檔案git add * #需要上傳的檔案 資料夾3. 對上傳的檔案進行說明 git commit -m "**"
windows本地上傳檔案到遠端windows伺服器
步驟: 1.“開始”--“執行”--輸入“mstsc”或者“windows鍵+R 組合鍵,再輸入mstsc. 2.連線之前點“選項”->“本地資源”,再在“本地裝置”中選中“磁碟驅動器”(win8上是驅動器,一樣),然後連線到遠端計算機後,在左側的目錄樹中找到
Centos 與本地終端 上傳、下載 檔案
首先安裝lrzsz # yum -y install lrzsz 1.上傳檔案,執行命令rz,會跳出檔案選擇視窗,選擇好檔案,點選確認即可。 # rz 執行rz命令後彈出選擇檔案視窗,找到要上傳的檔案後確認,檔案會被上傳到Centos當前目錄下 2.下載檔案,執行命令sz # sz 檔名 執行 sz命
關於在一個form表單裡同時上傳多個檔案和文字資訊的解決方案。。。
執行環境:tomcat5.0.30+springframework步驟:1。定義一個form表單index.jsp和error.jsp**************************************index.jsp************************
通過javaApi 從本地上傳檔案到叢集
獲取本地檔案工具類import java.io.*; public class GetLocalFile { public static String getLocalFile(String
SpringBoot圖片上傳(三)——呼叫檔案上傳專案的方法(同時啟動兩個專案)
簡單說明:圖片上傳有一個專門的工程A,提供了圖片的上傳和下載預覽,工程B涉及到圖片上傳以及回顯,都是呼叫的工程A的方法,言外之意就是要同時啟動兩個專案。 程式碼: //工程B的html程式碼 <div class="col-md-12"> <label class="cont
MySQL修改預設Blob資料型別大小(解決上傳1M以上檔案失敗的問題)
如果需要在MySQL中儲存二進位制資料,那麼肯定會用到 BLOB 型別的欄位。MySQL中,BLOB是個型別系列,包括:TinyBlob、Blob、MediumBlob、LongBlob,這幾個型別之間的唯一區別是在儲存檔案的最大大小的不同。 MySQL的四種 BLOB 型別: (單位:位元
PHP中curl模擬post上傳及接收檔案
public function Action_Upload(){ $this->path_config(); exit(); $furl="@d:\develop\JMFrameworkWithDemo.rar"; $url= "http://localh