国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種上傳文件的方法與裝置與流程

      文檔序號(hào):11199380閱讀:465來源:國知局
      一種上傳文件的方法與裝置與流程

      本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,特別是涉及一種上傳文件的方法與裝置。



      背景技術(shù):

      分布式系統(tǒng)基本架構(gòu)(hadoop)是一個(gè)由apache基金會(huì)所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序,充分利用集群的威力進(jìn)行高速運(yùn)算和存儲(chǔ)。hadoop的體系結(jié)構(gòu)主要是通過分布式存儲(chǔ)系統(tǒng)(hdfs)來實(shí)現(xiàn)分布式存儲(chǔ)的底層支持,通過mapreduce實(shí)現(xiàn)分布或并行任務(wù)處理的程序支持。

      亞馬遜對(duì)象存儲(chǔ)系統(tǒng)(amazons3)是一個(gè)公開的服務(wù),web應(yīng)用程序開發(fā)人員可以使用它存儲(chǔ)數(shù)字資產(chǎn),包括圖片、視頻、音樂和文檔。amazons3提供一個(gè)restfulapi以編程方式實(shí)現(xiàn)與該服務(wù)的交互。

      hadoop+amazons3對(duì)接,將amazons3對(duì)象存儲(chǔ)系統(tǒng)高穩(wěn)定性、高擴(kuò)展性、高冗余性的存儲(chǔ)特點(diǎn)與hadoop中mapreduce強(qiáng)大的并行任務(wù)處理能力相融合,搭建出更加高效、快捷、易用的大數(shù)據(jù)平臺(tái)。

      目前hadoop+amazons3對(duì)接框架下上傳文件的流程是:1、hadoop調(diào)用put命令上傳本地文件到amazons3對(duì)象存儲(chǔ)系統(tǒng)對(duì)應(yīng)bucket中的臨時(shí)文件。2、文件上傳成功后,amazons3調(diào)用rename機(jī)制,將數(shù)據(jù)從臨時(shí)文件讀出,并重新寫入到和hadoop上傳文件同名的文件里。從以上上傳文件流程可以看出,上傳成功一個(gè)文件實(shí)際上要讀取文件數(shù)據(jù)兩次,效率自然不高。

      可見,如何提升上傳文件的速率,是本領(lǐng)域技術(shù)人員亟待解決的問題。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明實(shí)施例的目的是提供一種上傳文件的方法與裝置,可以提升上傳文件的速率。

      為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供一種上傳文件的方法,包括:

      amazons3對(duì)象存儲(chǔ)系統(tǒng)接收客戶端發(fā)送的目標(biāo)文件;所述目標(biāo)文件有其對(duì)應(yīng)的文件名稱;

      將所述目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件;

      當(dāng)完成所述數(shù)據(jù)的寫入后,利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。

      可選的,還包括:

      所述amazons3對(duì)象存儲(chǔ)系統(tǒng)向所述客戶端發(fā)送上傳成功的響應(yīng)信息。

      可選的,還包括:

      判斷接收的所述目標(biāo)文件是否完整;

      若否,則向所述客戶端發(fā)送獲取所述目標(biāo)文件的請求信息。

      本發(fā)明實(shí)施例還提供了一種上傳文件的裝置,包括接收單元、寫入單元和重命名單元,

      所述接收單元,用于接收客戶端發(fā)送的目標(biāo)文件;所述目標(biāo)文件有其對(duì)應(yīng)的文件名稱;

      所述寫入單元,用于將所述目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件;

      當(dāng)完成所述數(shù)據(jù)的寫入后,則觸發(fā)所述重命名單元,所述重命名單元,用于利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。

      可選的,還包括發(fā)送單元,

      所述發(fā)送單元,用于向所述客戶端發(fā)送上傳成功的響應(yīng)信息。

      可選的,還包括判斷單元,

      所述判斷單元,用于判斷接收的所述目標(biāo)文件是否完整;

      若否,則觸發(fā)所述發(fā)送單元,所述發(fā)送單元還用于向所述客戶端發(fā)送獲取所述目標(biāo)文件的請求信息。

      由上述技術(shù)方案可以看出,amazons3對(duì)象存儲(chǔ)系統(tǒng)在接收客戶端發(fā)送的目標(biāo)文件后,將所述目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件;其中,所述目標(biāo)文件有其對(duì)應(yīng)的文件名稱;當(dāng)完成所述數(shù)據(jù)的寫入后,利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。該操作過程無需再從臨時(shí)文件讀取數(shù)據(jù)重新寫入新文件,而是通過直接修改臨時(shí)文件的名稱,更新元數(shù)據(jù)信息的方式,實(shí)現(xiàn)目標(biāo)文件的上傳,提高了上傳文件的效率。

      附圖說明

      為了更清楚地說明本發(fā)明實(shí)施例,下面將對(duì)實(shí)施例中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

      圖1為本發(fā)明實(shí)施例提供的一種上傳文件的方法的流程圖;

      圖2為本發(fā)明實(shí)施例提供的一種上傳文件的裝置的結(jié)構(gòu)示意圖。

      具體實(shí)施方式

      下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下,所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)范圍。

      為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。

      傳統(tǒng)方式中,hadoop+amazons3對(duì)接框架下上傳文件時(shí),amazons3對(duì)象存儲(chǔ)系統(tǒng)首先將接收到的本地文件的數(shù)據(jù)寫入到臨時(shí)文件中,然后再將臨時(shí)文件中的數(shù)據(jù)讀取到一個(gè)新文件中,該新文件是與本地文件同名的一個(gè)文件,當(dāng)完成數(shù)據(jù)的寫入后,即將臨時(shí)文件中的數(shù)據(jù)完全寫入到新文件后,該臨時(shí)文件會(huì)被刪除。該過程需要讀取文件數(shù)據(jù)兩次,導(dǎo)致文件上傳的效率較低。

      為此,本發(fā)明實(shí)施例提供了一種上傳文件的方法與裝置,amazons3對(duì)象存儲(chǔ)系統(tǒng)接收客戶端發(fā)送的目標(biāo)文件,將該目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件。當(dāng)完成所述數(shù)據(jù)的寫入后,利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。通過直接修改臨時(shí)文件的名稱,更新元數(shù)據(jù)信息的方式,實(shí)現(xiàn)目標(biāo)文件的上傳,提高了上傳文件的效率。

      接下來,詳細(xì)介紹本發(fā)明實(shí)施例所提供的一種上傳文件的方法。圖1為本發(fā)明實(shí)施例提供的一種上傳文件的方法的流程圖,該方法包括:

      s101:amazons3對(duì)象存儲(chǔ)系統(tǒng)接收客戶端發(fā)送的目標(biāo)文件。

      客戶端接收到用戶輸入的hadoopput命令后,會(huì)將對(duì)應(yīng)的目標(biāo)文件上傳至amazons3對(duì)象存儲(chǔ)系統(tǒng)。

      其中,所述目標(biāo)文件有其對(duì)應(yīng)的文件名稱。

      s102:將所述目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件。

      客戶端在向amazons3對(duì)象存儲(chǔ)系統(tǒng)傳輸目標(biāo)文件時(shí),amazons3對(duì)象存儲(chǔ)系統(tǒng)會(huì)將目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件中。

      其中,該臨時(shí)文件的名稱與目標(biāo)文件的名稱不相同。在具體實(shí)現(xiàn)中,往往會(huì)以目標(biāo)文件的名稱加上特定后綴作為臨時(shí)文件的名稱,例如,目標(biāo)文件的名稱為“file”,相應(yīng)的,amazons3對(duì)象存儲(chǔ)系統(tǒng)會(huì)將臨時(shí)文件的名稱命名為“file.copying”。

      s103:當(dāng)完成所述數(shù)據(jù)的寫入后,利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。

      當(dāng)目標(biāo)文件中的數(shù)據(jù)完全寫入到臨時(shí)文件后,amazons3對(duì)象存儲(chǔ)系統(tǒng)將臨時(shí)文件的名稱修改成目標(biāo)文件原本對(duì)應(yīng)的文件名稱。并且系統(tǒng)會(huì)自動(dòng)更新對(duì)應(yīng)的元數(shù)據(jù)信息,從而完成臨時(shí)文件的重命名。

      由上述技術(shù)方案可以看出,amazons3對(duì)象存儲(chǔ)系統(tǒng)在接收客戶端發(fā)送的目標(biāo)文件后,將所述目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件;其中,所述目標(biāo)文件有其對(duì)應(yīng)的文件名稱;當(dāng)完成所述數(shù)據(jù)的寫入后,利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。該操作過程無需再從臨時(shí)文件讀取數(shù)據(jù)重新寫入新文件,而是直接修改臨時(shí)文件的名稱,更新元數(shù)據(jù)信息的方式,實(shí)現(xiàn)目標(biāo)文件的上傳,提高了上傳文件的效率。

      當(dāng)amazons3對(duì)象存儲(chǔ)系統(tǒng)完成對(duì)臨時(shí)文件的重命名后,則說明該目標(biāo)文件已經(jīng)成功上傳至amazons3對(duì)象存儲(chǔ)系統(tǒng),此時(shí),所述amazons3對(duì)象存儲(chǔ)系統(tǒng)可以向所述客戶端發(fā)送上傳成功的響應(yīng)信息。以便于使用該客戶端的用戶可以及時(shí)獲知目標(biāo)文件已經(jīng)成功上傳。

      考慮到受網(wǎng)絡(luò)等因素的影響,可能會(huì)存在amazons3對(duì)象存儲(chǔ)系統(tǒng)接收的目標(biāo)文件數(shù)據(jù)不完整的現(xiàn)象。為了避免該種情況的發(fā)生,amazons3對(duì)象存儲(chǔ)系統(tǒng)可以判斷接收的所述目標(biāo)文件是否完整;若否,則向所述客戶端發(fā)送獲取所述目標(biāo)文件的請求信息。通過該判斷過程可以有效的保證文件上傳的順利進(jìn)行。

      圖2為本發(fā)明實(shí)施例提供的一種上傳文件的裝置的結(jié)構(gòu)示意圖,包括接收單元21、寫入單元22和重命名單元23,

      所述接收單元21,用于接收客戶端發(fā)送的目標(biāo)文件;所述目標(biāo)文件有其對(duì)應(yīng)的文件名稱;

      所述寫入單元22,用于將所述目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件;

      當(dāng)完成所述數(shù)據(jù)的寫入后,則觸發(fā)所述重命名單元23,所述重命名單元23,用于利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。

      可選的,還包括發(fā)送單元,

      所述發(fā)送單元,用于向所述客戶端發(fā)送上傳成功的響應(yīng)信息。

      可選的,還包括判斷單元,

      所述判斷單元,用于判斷接收的所述目標(biāo)文件是否完整;

      若否,則觸發(fā)所述發(fā)送單元,所述發(fā)送單元還用于向所述客戶端發(fā)送獲取所述目標(biāo)文件的請求信息。

      圖2所對(duì)應(yīng)實(shí)施例中特征的說明可以參見圖1所對(duì)應(yīng)實(shí)施例的相關(guān)說明,這里不再一一贅述。

      由上述技術(shù)方案可以看出,amazons3對(duì)象存儲(chǔ)系統(tǒng)在接收客戶端發(fā)送的目標(biāo)文件后,將所述目標(biāo)文件中的數(shù)據(jù)寫入到臨時(shí)文件;其中,所述目標(biāo)文件有其對(duì)應(yīng)的文件名稱;當(dāng)完成所述數(shù)據(jù)的寫入后,利用rename機(jī)制,將所述臨時(shí)文件重命名為所述目標(biāo)文件對(duì)應(yīng)的文件名稱,并更新amazons3相關(guān)的元數(shù)據(jù)信息。該操作過程無需再從臨時(shí)文件讀取數(shù)據(jù)重新寫入新文件,而是直接修改臨時(shí)文件的名稱,更新元數(shù)據(jù)信息的方式,實(shí)現(xiàn)目標(biāo)文件的上傳,提高了上傳文件的效率。

      以上對(duì)本發(fā)明實(shí)施例所提供的一種上傳文件的方法與裝置進(jìn)行了詳細(xì)介紹。說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對(duì)于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對(duì)本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。

      專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。

      結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(ram)、內(nèi)存、只讀存儲(chǔ)器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動(dòng)磁盤、cd-rom、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1