(4)通過呼叫hadoop的java api實現本地檔案上傳到hadoop檔案系統上
(1)首先建立java project
選擇eclipse選單上File->New->Java Project。
並命名為UploadFile。
(2)新增必要的hadoop jar包
右鍵選擇JRE System Library,選擇Build Path下的Configure Build Path。
然後選擇Add External Jars,到你解壓的hadoop原始碼資料夾下新增jar包和lib下的所有jar包。
lib資料夾下的所有jar包。
(3)新增UploadFile類
程式碼如下:
import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; import java.io.OutputStream; import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IOUtils; import org.apache.hadoop.util.Progressable; public class UploadFile { public static void main(String[] args) { try { String localSrc = "C://Goagent.rar"; String dst = "hdfs://hadoop:9000/user/root/Goagent.rar"; InputStream in = new BufferedInputStream(new FileInputStream(localSrc)); Configuration conf = new Configuration(); FileSystem fs = FileSystem.get(URI.create(dst), conf); OutputStream out = fs.create(new Path(dst), new Progressable() { public void progress() { System.out.print("."); } }); IOUtils.copyBytes(in, out, 4096, true); System.out.println("success"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
然後執行程式,如果上傳成功會在控制檯下輸出success。
你也可以在網頁上檢視http://hadoop:50070/。
備註:我也是剛起步學習hadoop,可能文章有一些不完整或錯誤的地方,還請大家多多指教,也希望能交流學習,互相促進提高。
參考資料:
相關推薦
(4)通過呼叫hadoop的java api實現本地檔案上傳到hadoop檔案系統上
(1)首先建立java project 選擇eclipse選單上File->New->Java Project。 並命名為UploadFile。 (2)新增必要的hadoop jar包 右鍵選擇JRE System Library,選擇
python(4)- 簡單練習:python實現購物車的優化
list x11 int 退出 .html htm src keyword 結算 簡單版本,鏈接如下: http://www.cnblogs.com/c-x-m/p/7819220.html 購物車程序優化題目要求: 1. 用戶退出時打印商品列表時,按以下格式
從零寫分散式RPC框架 系列 1.0 (4)RPC-Client模組設計實現
RPC-Client模組負責建立 動態代理物件 供 服務消費者 使用,而動態代理物件的方法執行則是通過RPC呼叫RPC-Server的服務實現。即RPC-Client遮蔽了底層的通訊過程,使得服務消費者可以基於介面透明使用服務提供者的服務。 系列文章: 從零寫分散式RPC框架 系
經驗分享(4)Yarn ResourceManager頁面如何實現主被自動切換
hdfs、yarn、hbase這些元件的master支援多個,實現自動主備切換,其中hdfs、hbase無論訪問主master或者備master都可以正常訪問頁面,但是yarn比較特別,只有主master的頁面可以訪問,備master會返回Refresh,3s後重定向; 一種方式是提供兩個域名,分別對應兩個
leetcode(4)加一的js實現
一.題目描述: 給定一個由整陣列成的非空陣列所表示的非負整數,在該數的基礎上加一。 最高位數字存放在陣列的首位, 陣列中每個元素只儲存一個數字。 你可以假設除了整數 0 之外,這個整數不會以零開頭。 示例 1: 輸入: [1,2,3] 輸出: [1,2,4] 解釋: 輸入陣列
使用CEfSharp之旅(4)cefsharp 呼叫F12
Cefsharp 如何呼叫類似 F12的功能? private void button1_Click_1(object sender, EventArgs e) {
myeclipse實現Servlet例項(3) 通過繼承HttpServlet介面實現
(1) 在軟體公司 90%都是通過該方法開發. //在HttpServlet 中,設計者對post 提交和 get提交分別處理 //回憶 <form action="提交給?" method="post|get"/>,預設是get (2)小結 get 提交
異常(4)----通過throw、throws關鍵字寫帶有異常的方法
二、throws關鍵字 三、自己寫方法丟擲異常 四、舉例 一、throw關鍵字 關鍵字throw,用於在方法的內部丟擲異常。 throw丟擲的是異常的物件。throw後面,必須寫 new 物件(Exception或Exception
Elasticsearch(二):使用JAVA API實現簡單查詢、聚合查詢
ES版本:2.3.1 JDK:1.8 所需要的jar包請在ES安裝路徑下的jars包中獲得,不要使用其他的jar否則容易出現版本問題! 注意:程式碼中TransportClient client=ESLink.getTransportClient()
曹工說Redis原始碼(4)-- 通過redis server原始碼來理解 listen 函式中的 backlog 引數
文章導航 Redis原始碼系列的初衷,是幫助我們更好地理解Redis,更懂Redis,而怎麼才能懂,光看是不夠的,建議跟著下面的這一篇,把環境搭建起來,後續可以自己閱讀原始碼,或者跟著我這邊一起閱讀。由於我用c也是好幾年以前了,些許錯誤在所難免,希望讀者能不吝指出。 曹工說Redis原始碼(1)-- redi
Golang Web入門(4):如何設計API
## 摘要 在之前的幾篇文章中,我們從如何實現最簡單的HTTP伺服器,到如何對路由進行改進,到如何增加中介軟體。總的來講,我們已經把Web伺服器相關的內容大概梳理了一遍了。在這一篇文章中,我們將從最簡單的一個main函式開始,慢慢重構,來研究如何把API設計的更加規範和具有擴充套件性。 ## 1 構
(轉)通過Java SE 7自帶的監控服務(WatchService API)實現類似.NET FileWatcher的功能
thread new and mar chan col att 項目 chang 轉自:http://www.cnblogs.com/callwangxiang/archive/2011/08/04/JavaDirectoryWatcherFileWatcher.html
遷移桌面程式到MS Store(4)——桌面程式呼叫Win10 API
上一篇我們討論瞭如何在轉制的桌面程式中,通過StartupTask來實現轉製版本的開機自啟動。實際操作中,我們通過編輯Packaging工程中的Package.appxmanifest檔案,來新增自啟動的配置項。如果要在程式的UI中實現開啟和關閉自啟動的功能。那就需要通過程式碼來操作StartupTask物件
人臉識別(二)呼叫face++api實現人臉對比
上次部落格簡單講了一下呼叫face++的api來檢測人臉。當然,生產環境中要實現複雜的需求光靠這麼簡單的呼叫一下api肯定是不行的。這次先來講一講face++中實現人臉對比的api並實現一些相對較為複雜的需求。 首先來看一看呼叫的人臉對比的api需要的東西:
ABP開發框架前後端開發系列---(4)Web API呼叫類的封裝和使用
在前面隨筆介紹ABP應用框架的專案組織情況,以及專案中領域層各個類程式碼組織,以及簡化了ABP框架的各個層的內容,使得我們專案結構更加清晰。上篇隨筆已經介紹了字典模組中應用服務層介面的實現情況,並且通過執行Web API的宿主程式,可以在介面上進行介面測試了,本篇隨筆基於前面介紹的基礎上,介紹Web API呼
api-gateway實踐(4)網關服務集成驗證
pig server 服務集 blank 網關 ces ron ken localhost 原始服務地址: http://10.110.17.20:7070/spring-oauth-server/m/user_info?access_token=8d671613-da31
自己搭建自動化巡檢系統(三) 通過telnet實現遠程創建loopback
telnet loopback 我們在上一章完成了用代碼操作telnet,實現了遠程控制,分析前面的代碼會發現健壯性太低,需要進行優化,後續會通過開發一個交互式界面來完成人工介入操作網絡的過程。本次實驗目的:實現自動化創建環回口首先更新拓撲,拉出新的路由器和一臺交換機import telnetlibi
第23課 可變參數模板(4)_Optional和Lazy類的實現
opera -s 緩沖區 data emp 銷毀 由於 方便 lazy load 1. optional類的實現 (1)optional的功能 ①optional<T>的內部存儲空間可能存儲了T類型的值,也可能沒有。只有當optional被T初始化之後,這個
企業實戰(4)-實現基於Haproxy負載均衡集群的電子商務網站架構
haproxy keepalived 企業實戰:逐步實現企業各種情景下的需求企業情景四:隨著公司業務的發展,公司負載均衡服務已經實現四層負載均衡,但業務的復雜程度提升,公司要求把mobile手機站點作為單獨的服務提供,不在和pc站點一起提供服務,此時需要做7層規則負載均衡,運維總監要求,能否用一種服務
web服務器(LAMP)通過DNS輪詢功能和nfs共享實現負載均衡
hosts dir 通過 sts lvcreate etc update file fst web服務器(LAMP)通過DNS輪詢功能和nfs共享實現負載均衡,部署discuz論壇 拓撲思路: 服務器1:mariadb+nfs;172.20.120.40 服務器2:apac