TWI740884B - 分散式檔案系統中的資料寫入方法和裝置 - Google Patents

分散式檔案系統中的資料寫入方法和裝置 Download PDF

Info

Publication number
TWI740884B
TWI740884B TW106102240A TW106102240A TWI740884B TW I740884 B TWI740884 B TW I740884B TW 106102240 A TW106102240 A TW 106102240A TW 106102240 A TW106102240 A TW 106102240A TW I740884 B TWI740884 B TW I740884B
Authority
TW
Taiwan
Prior art keywords
disk
load
score
remaining capacity
magnetic sheet
Prior art date
Application number
TW106102240A
Other languages
English (en)
Other versions
TW201828036A (zh
Inventor
董乘宇
朱家稷
張海勇
曹鋒
王勇
姚文輝
吳均平
吳洋
董元元
吳冬政
陸靖
Original Assignee
香港商阿里巴巴集團服務有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 香港商阿里巴巴集團服務有限公司 filed Critical 香港商阿里巴巴集團服務有限公司
Priority to TW106102240A priority Critical patent/TWI740884B/zh
Publication of TW201828036A publication Critical patent/TW201828036A/zh
Application granted granted Critical
Publication of TWI740884B publication Critical patent/TWI740884B/zh

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申請實施例提供了一種分散式檔案系統中的資料寫入方法和裝置。該分散式檔案系統中的資料寫入方法包括:在中繼資料伺服器所管理的多個副本伺服器中,根據所述多個副本伺服器的剩餘容量選擇目標副本伺服器;在所述目標副本伺服器中,根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片;透過所述目標副本伺服器將寫入資料儲存在所述寫入磁片中。本申請實施例透過中繼資料伺服器和副本伺服器兩級選盤方式,綜合考慮磁片剩餘容量以及磁片負載來確定寫入資料的儲存磁片,既避免了磁片寫滿,也不會造成磁片的熱點訪問。

Description

分散式檔案系統中的資料寫入方法和裝置
本申請關於資料處理技術領域,特別是關於一種分散式檔案系統中的資料寫入方法和一種分散式檔案系統中的資料寫入裝置。
大型線上分散式儲存系統中,單台伺服器內有很多塊磁片,不同磁片可能不同,且在一台伺服器內部也可能出現異構的情況,即兩種不同容量的磁片混合。分散式儲存系統解決資料儲存的問題,當有資料到來時如何選擇一塊磁片寫入資料是一個需要考慮的問題。
傳統的分散式檔案系統在選擇磁片時採用一致性雜湊演算法。該方法是事先根據資料分區做雜湊來選定磁片,是一種固定的選盤策略。雜湊演算法本身保證了平衡性,通常情況下不會造成熱點,但是在異常情況,當同一資料分區有集中的資料,被選中的磁片往往不能躲開大量的寫入,可能會寫滿磁片,造成寫入失敗,同時密集的流量會產生熱點訪問,造成寫入時間變長。
因此,目前需要本領域技術人員迫切解決的一個技術 問題就是:如何可以避免磁片寫滿,且不會造成熱點訪問。
本申請實施例的發明目的在於提供一種分散式檔案系統中的資料寫入方法,可以避免磁片寫滿,且不會造成熱點訪問。
相應的,本申請實施例還提供了一種分散式檔案系統中的資料寫入裝置,用以保證上述方法的實現及應用。
為了解決上述問題,本申請公開了一種分散式檔案系統中的資料寫入方法,包括:在中繼資料伺服器所管理的多個副本伺服器中,根據所述多個副本伺服器的剩餘容量選擇至少一個目標副本伺服器;在所述目標副本伺服器中,根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片;透過所述目標副本伺服器將寫入資料儲存在所述寫入磁片中。
較佳地,在所述目標副本伺服器中,根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片的步驟包括:根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率;根據所述各磁片被選中的機率及預設條件確定所述寫 入磁片。
較佳地,所述根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率,包括:根據所述磁片的剩餘容量和總容量之間的比例及其權重,以及所述磁片的負載及其權重,計算所述磁片的得分;對各所述磁片的得分進行歸一化,獲得各所述磁片被選中的機率。
較佳地,所述根據所述磁片的剩餘容量和總容量之間的比例及其權重,以及所述磁片的負載及其權重,計算所述磁片的得分,包括:分別計算所述磁片的剩餘容量和總容量之間的比例的得分,以及所述磁片的負載的得分,其中,所述比例的得分與所述比例之間以及所述負載的得分與所述負載之間均滿足單調遞增函數關係;根據所述比例的得分及所述比例的權重,以及所述負載的得分及所述負載的權重,計算所述磁片的得分。
較佳地,所述磁片的負載為所述磁片IO佇列的長度。
較佳地,所述根據所述各磁片被選中的機率及預設條件確定所述寫入磁片,包括:根據所述各磁片被選中的機率計算所述各磁片的累加機率值;對所述各磁片的累加機率值進行二分查找,將查找到 的滿足預設條件的磁片的累加機率值對應的磁片作為所述寫入磁片。
本申請還公開了一種分散式檔案系統中的資料寫入裝置,包括:第一選擇單元,被配置為在中繼資料伺服器所管理的多個副本伺服器中,根據所述多個副本伺服器的剩餘容量選擇至少一個目標副本伺服器;第二選擇單元,被配置為在所述目標副本伺服器中,根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片;儲存單元,被配置為透過所述目標副本伺服器將寫入資料儲存在所述寫入磁片中。
較佳地,所述第二選擇單元包括:機率計算子單元,被配置為根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率;確定子單元,被配置為根據所述各磁片被選中的機率及預設條件確定所述寫入磁片。
較佳地,所述機率計算子單元包括:得分計算子單元,被配置為根據所述磁片的剩餘容量和總容量之間的比例及其權重,以及所述磁片的負載及其權重,計算所述磁片的得分;機率獲得子單元,被配置為對各所述磁片的得分進行歸一化,獲得各所述磁片被選中的機率。
較佳地,所述得分計算子單元包括:第一計算子單元,被配置為分別計算所述磁片的剩餘容量和總容量之間的比例的得分,以及所述磁片的負載的得分,其中,所述比例的得分與所述比例之間以及所述負載的得分與所述負載之間均滿足單調遞增函數關係;第二計算子單元,被配置為根據所述比例的得分及所述比例的權重,以及所述負載的得分及所述負載的權重,計算所述磁片的得分。
較佳地,所述磁片的負載為所述磁片IO佇列的長度。
較佳地,所述確定子單元包括:累加子單元,被配置為根據所述各磁片被選中的機率計算所述各磁片的累加機率值;查找子單元,被配置為對所述各磁片的累加機率值進行二分查找,將查找到的滿足預設條件的磁片的累加機率值對應的磁片作為所述寫入磁片。
與現有技術相比,本申請實施例包括以下優點:本申請實施例透過中繼資料伺服器和副本伺服器兩級選盤方式,綜合考慮磁片剩餘容量以及磁片負載來確定寫入資料的儲存磁片,既避免了磁片寫滿,也不會造成磁片的熱點訪問。當各磁片負載基本相同時,可以優先選擇剩餘容量較高的磁片作為寫入磁片,從而可以避免磁片寫滿;當剩餘容量基本相同時,可以優先選擇磁片負載較低的磁片作為寫入磁片,從而可以避免造成磁片的熱點訪 問。
101‧‧‧步驟
102‧‧‧步驟
103‧‧‧步驟
201‧‧‧步驟
202‧‧‧步驟
301‧‧‧步驟
302‧‧‧步驟
401‧‧‧步驟
402‧‧‧步驟
501‧‧‧步驟
502‧‧‧步驟
601‧‧‧第一選擇單元
602‧‧‧第二選擇單元
603‧‧‧儲存單元
701‧‧‧機率計算子單元
702‧‧‧確定子單元
801‧‧‧得分計算子單元
802‧‧‧機率獲得子單元
901‧‧‧第一計算子單元
902‧‧‧第二計算子單元
1001‧‧‧累加子單元
1002‧‧‧查找子單元
圖1是本申請的一種分散式檔案系統中的資料寫入方法實施例的步驟流程圖;圖2是本申請的一種根據目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片方法實施例的步驟流程圖;圖3是本申請的一種計算各磁片被選中的機率的方法實施例的步驟流程圖;圖4是本申請的一種計算磁片得分的方法實施例的步驟流程圖;圖5是本申請的一種根據各磁片被選中的機率及預設條件確定寫入磁片的方法實施例的步驟流程圖;圖6是本申請的一種分散式檔案系統中的資料寫入裝置實施例的結構框圖;圖7是本申請的一種第二選擇單元實施例的結構框圖;圖8是本申請的一種機率計算子單元實施例的結構框圖;圖9是本申請的一種得分計算子單元實施例的結構框圖;圖10是本申請的一種確定子單元實施例的結構框圖。
為使本申請的上述目的、特徵和優點能夠更加明顯易懂,下面結合附圖和具體實施方式對本申請作進一步詳細的說明。
參照圖1,示出了本申請的一種分散式檔案系統中的資料寫入方法實施例的步驟流程圖,具體可以包括如下步驟:
步驟101,在中繼資料伺服器所管理的多個副本伺服器中,根據所述多個副本伺服器的剩餘容量選擇至少一個目標副本伺服器。
本申請實施例中,首先在分散式檔案系統中設置中繼資料伺服器和副本伺服器,其中,中繼資料伺服器用於管理名字空間、資料塊的副本資訊和副本伺服器位址資訊;副本伺服器用於管理資料塊的本機複本,提供對所管理資料塊副本的讀寫操作。
本實施例採取兩級選盤機制,該分散式檔案系統中的資料寫入裝置(以下簡稱裝置)首先在中繼資料伺服器所管理的副本伺服器中選擇副本伺服器來進行寫入資料,具體可以選擇剩餘容量大的副本伺服器,記為目標副本伺服器。
步驟102,在目標副本伺服器中,根據目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片。
本步驟中,在該裝置確定出目標副本伺服器後,進一步在該目標副本伺服器中選擇進行寫入資料儲存的磁片, 記為寫入磁片。該裝置綜合考慮了剩餘容量和負載兩方面來確定寫入磁片,具體的,該裝置可以對各磁片的剩餘容量及磁片負載進行評分,然後結合剩餘容量和負載各自的權重獲得該磁片被選中的機率,進而根據該機率確定出寫入磁片。具體請參見後續實施例的描述。
步驟103,透過目標副本伺服器將寫入資料儲存在寫入磁片中。
在該裝置確定出寫入磁片後,即可透過該目標副本伺服器將用戶端寫入的資料儲存到上步驟確定的寫入磁片上了。
本申請實施例透過中繼資料伺服器和副本伺服器兩級選盤方式,綜合考慮磁片剩餘容量以及磁片負載來確定寫入資料的儲存磁片,既避免了磁片寫滿,也不會造成磁片的熱點訪問。當各磁片負載基本相同時,可以優先選擇剩餘容量較高的磁片作為寫入磁片,從而可以避免磁片寫滿;當剩餘容量基本相同時,可以優先選擇磁片負載較低的磁片作為寫入磁片,從而可以避免造成磁片的熱點訪問。
在本申請的另一實施例中,在目標副本伺服器中,根據目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片的過程,如圖2所示,可以包括:
步驟201,根據目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率。
本步驟中,首先獲得目標副本伺服器所管理的各磁片 的剩餘容量及各磁片的負載,然後根據剩餘容量和負載計算各磁片被選中的機率。具體計算方法有多種,以下僅為舉例。
其中一種計算各磁片被選中的機率的方法,可以如圖3所示,包括:
步驟301,根據磁片的剩餘容量和總容量之間的比例及其權重,以及磁片的負載及其權重,計算磁片的得分。
目標副本伺服器中的各磁片採用相同方法計算獲得磁片的得分。可以先根據比例及其權重計算比例的得分,根據負載及其權重計算負載的得分,然後綜合兩個得分獲得磁片的得分,或者綜合兩個得分並引入指定函數關係式獲得磁片的得分;還可以先計算比例的得分以及負載的得分,然後根據各自的權重計算獲得磁片的得分,其中也可以引入指定的函數關係式計算磁片得分,具體請參見後續實施例的描述。
其中,磁片的負載為可以用磁片IO佇列的長度來衡量,磁片IO佇列長度越大表示該磁片的負載越高。
步驟302,對各磁片的得分進行歸一化,獲得各磁片被選中的機率。
在獲得各磁片的得分後,對得分進行歸一化,進而可獲得各磁片被選中的機率。
步驟202,根據各磁片被選中的機率及預設條件確定寫入磁片。
在獲得各磁片被選中的機率後,即可將機率滿足預設 條件的磁片確定為寫入磁片。該預設條件可以是用戶自主設定等。
在本申請的另一實施例中,一種計算磁片得分的方法,如圖4所示,具體可以包括:
步驟401,分別計算磁片的剩餘容量和總容量之間的比例的得分,以及磁片的負載的得分。
其中,比例的得分與比例之間以及負載的得分與負載之間均滿足單調遞增函數關係,此處的單調遞增函數的定義域從負無窮到正無窮,值域範圍為從0到1,形狀為S型,多存在於分類評定模型、邏輯回歸模型,屬於多重變數分析範疇,例如arctan函數等。本實施例中,磁片的負載為用磁片IO佇列的長度來衡量。
假設目標副本伺服器中包含N塊磁片,各磁片的剩餘容量和N塊磁片的總容量之間的比例依次為R1,R2,……,RN。N塊磁片當前磁片IO佇列的長度(也即磁片負載)依次為Q1,Q2,……,QN。
則磁片的剩餘容量和總容量之間的比例的得分S i (R i )及磁片的負載的得分S i (Q i ),i=1,……,N,可以透過以下公式獲得:
Figure 106102240-A0202-12-0010-20
c=-arctan(a×bottom+b)
x可以是R或Q。也即比例的得分與比例之間以及負 載的得分與負載之間均滿足單調遞增函數關係。該單調遞增函數可以為arctan函數。
其中highlow和bottom是實驗確定的值。x i 取值需要保證在(low,high)之間,因此ax i +b保證了取值範圍保證是在(-3,3)之間。bottom保證了當一個很低的x i 時,P i =0。
由於arctan函數是一個單調遞增函數,其特點是,較高的得分表示磁片剩餘容量比例高或者負載較低,而反之則表示磁片剩餘容量比例低或者負載較高。
步驟402,根據比例的得分及比例的權重,以及負載的得分及負載的權重,計算磁片的得分。
在獲得各磁片的剩餘容量和總容量之間的比例的得分,以及各磁片的負載的得分後,在本步驟中,即可結合磁片剩餘容量的權重及磁片負載的權重計算各磁片的得分了。
S i =S i (R i ) w ×S i (Q i )1-w
其中,w是磁片剩餘容量對應的權重,1-w即為磁片負載的權重,該權重值可以根據經驗值等自主設定。
在按照上述步驟401~402獲得各磁片的得分後,即可執行前述步驟302,對各磁片的得分進行歸一化,獲得各磁片被選中的機率。
對N塊磁片的得分做歸一化,用Si來表示第i塊磁片的得分,則:
Figure 106102240-A0202-12-0011-2
因此,第i塊磁片被選中的機率Pi是,如下所示:
Figure 106102240-A0202-12-0012-3
在本申請的另一實施例中,根據各磁片被選中的機率及預設條件確定寫入磁片的方法,如圖5所示,可以包括:
步驟501,根據各磁片被選中的機率計算各磁片的累加機率值。
以第i塊磁片被選中的機率為Pi為例:
Figure 106102240-A0202-12-0012-4
所有磁片被選中的機率累加等於1。
定義各磁片的累加機率值依次為A1,A2,……,AN,
Figure 106102240-A0202-12-0012-5
i=1,……N。
因此A i 是從小到大排序的,取值範圍是[0,1],定義A 0=0。
步驟502,對各磁片的累加機率值進行二分查找,將查找到的滿足預設條件的磁片的累加機率值對應的磁片作為寫入磁片。
本實施例中,可以生成一個[0,1]亂數發生器,產生一個亂數r,該預設條件即為磁片i需滿足A i-1<r
Figure 106102240-A0202-12-0012-17
A i
該裝置對排序後的各磁片的累加機率值進行二分查找,在查找到磁片i滿足A i-1<r
Figure 106102240-A0202-12-0012-18
A i 時,該磁片i即確定為寫入磁片。其中,二分查找又稱折半查找,優點是比較次數 少,查找速度快,平均性能好,透過二分查找方式可以在排序後的累加機率值中很快找到滿足預設條件的磁片。
在確定出寫入磁片後,即可執行前述步驟103進行寫入資料的儲存。
需要說明的是,對於方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請實施例並不受所描述的動作順序的限制,因為依據本申請實施例,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於較佳實施例,所涉及的動作並不一定是本申請實施例所必須的。
參照圖6,示出了本申請一種分散式檔案系統中的資料寫入裝置實施例的結構框圖,具體可以包括如下單元:第一選擇單元601,被配置為在中繼資料伺服器所管理的多個副本伺服器中,根據多個副本伺服器的剩餘容量選擇至少一個目標副本伺服器。
第二選擇單元602,被配置為在所述目標副本伺服器中,根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片。
儲存單元603,被配置為透過所述目標副本伺服器將寫入資料儲存在所述寫入磁片中。
本申請實施例透過上述單元綜合考慮磁片剩餘容量以及磁片負載來確定寫入資料的儲存磁片,既避免了磁片寫滿,也不會造成磁片的熱點訪問。當各磁片負載基本相同 時,可以優先選擇剩餘容量較高的磁片作為寫入磁片,從而可以避免磁片寫滿;當剩餘容量基本相同時,可以優先選擇磁片負載較低的磁片作為寫入磁片,從而可以避免造成磁片的熱點訪問。
在另一實施例中,如圖7所示,第二選擇單元602可以進一步包括:機率計算子單元701,被配置為根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率。
確定子單元702,被配置為根據所述各磁片被選中的機率及預設條件確定所述寫入磁片。
其中,如圖8所示,機率計算子單元701又可以進一步包括:得分計算子單元801,被配置為根據所述磁片的剩餘容量和總容量之間的比例及其權重,以及所述磁片的負載及其權重,計算所述磁片的得分。
機率獲得子單元802,被配置為對各所述磁片的得分進行歸一化,獲得各所述磁片被選中的機率。
如圖9所示,得分計算子單元801又可以進一步包括:第一計算子單元901,被配置為分別計算所述磁片的剩餘容量和總容量之間的比例的得分,以及所述磁片的負載的得分,其中,所述比例的得分與所述比例之間以及所述負載的得分與所述負載之間均滿足單調遞增函數關係。
第二計算子單元902,被配置為根據所述比例的得分及所述比例的權重,以及所述負載的得分及所述負載的權重,計算所述磁片的得分。
其中,磁片的負載為所述磁片IO佇列的長度。
在另一實施例中,如圖10所示,確定子單元702可以包括:累加子單元1001,被配置為根據所述各磁片被選中的機率計算所述各磁片的累加機率值。
查找子單元1002,被配置為對所述各磁片的累加機率值進行二分查找,將查找到的滿足預設條件的磁片的累加機率值對應的磁片作為所述寫入磁片。
本申請實施例還提供了一種電子設備,包括記憶體和處理器。
處理器與記憶體透過匯流排相互連接;匯流排可以是ISA匯流排、PCI匯流排或EISA匯流排等。所述匯流排可以分為位址匯流排、資料匯流排、控制匯流排等。
其中,記憶體用於儲存一段程式,具體地,程式可以包括程式碼,所述程式碼包括電腦操作指令。記憶體可能包含高速RAM記憶體,也可能還包括非揮發性記憶體(non-volatile memory),例如至少一個磁碟記憶體。
處理器用於讀取記憶體中的程式碼,執行以下步驟:在中繼資料伺服器所管理的多個副本伺服器中,根據多個副本伺服器的剩餘容量選擇至少一個目標副本伺服器; 在所述目標副本伺服器中,根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片;透過所述目標副本伺服器將寫入資料儲存在所述記憶體的所述寫入磁片中。
對於裝置實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
本領域內的技術人員應明白,本申請實施例的實施例可提供為方法、裝置、或電腦程式產品。因此,本申請實施例可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本申請實施例可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
在一個典型的配置中,所述電腦設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。記憶體可能包括電腦可讀介質中的非永久性記憶體,隨機存取記憶體(RAM)和/或非揮發性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。電腦可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲 存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可程式設計唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性存放裝置或任何其他非傳輸媒體,可用於儲存可以被計算設備訪間的資訊。按照本文中的界定,電腦可讀媒體不包括非持續性的電腦可讀媒體(transitory media),如調製的資料信號和載波。
本申請實施例是參照根據本申請實施例的方法、終端設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理終端設備的處理器以產生一個機器,使得透過電腦或其他可程式設計資料處理終端設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些電腦程式指令也可儲存在能引導電腦或其他可程式設計資料處理終端設備以特定方式工作的電腦可讀記憶 體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理終端設備上,使得在電腦或其他可程式設計終端設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計終端設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
儘管已描述了本申請實施例的較佳實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括較佳實施例以及落入本申請實施例範圍的所有變更和修改。
最後,還需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個......”限定的要素,並不排除在包括所述要素的 過程、方法、物品或者終端設備中還存在另外的相同要素。
以上對本申請所提供的一種分散式檔案系統中的資料寫入方法和一種分散式檔案系統中的資料寫入裝置,進行了詳細介紹,本文中應用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本申請的方法及其核心思想;同時,對於本領域的一般技術人員,依據本申請的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本申請的限制。

Claims (8)

  1. 一種分散式檔案系統中的資料寫入方法,其特徵在於,包括:在中繼資料伺服器所管理的多個副本伺服器中,根據該多個副本伺服器的剩餘容量選擇至少一個目標副本伺服器;在該目標副本伺服器中,根據該目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片;透過所述目標副本伺服器將寫入資料儲存在該寫入磁片中,其中,在該目標副本伺服器中,根據該目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片的步驟包括:根據該目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率;根據該各磁片被選中的機率及預設條件確定該寫入磁片,其中,該根據該各磁片被選中的機率及預設條件確定該寫入磁片,包括:根據該各磁片被選中的機率計算該各磁片的累加機率值;對該各磁片的累加機率值進行二分查找,將查找到的滿足預設條件的磁片的累加機率值對應的磁片作為該寫入磁片。
  2. 根據申請專利範圍第1項所述的方法,其中,該根據該目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率,包括:根據該磁片的剩餘容量和總容量之間的比例及其權重,以及該磁片的負載及其權重,計算該磁片的得分;對各該磁片的得分進行歸一化,獲得各該磁片被選中的機率。
  3. 根據申請專利範圍第2項所述的方法,其中,該根據該磁片的剩餘容量和總容量之間的比例及其權重,以及該磁片的負載及其權重,計算該磁片的得分,包括:分別計算該磁片的剩餘容量和總容量之間的比例的得分,以及該磁片的負載的得分,其中,該比例的得分與該比例之間以及該負載的得分與該負載之間均滿足單調遞增函數關係;根據該比例的得分及該比例的權重,以及該負載的得分及該負載的權重,計算該磁片的得分。
  4. 根據申請專利範圍第2項所述的方法,其中,該磁片的負載為該磁片IO佇列的長度。
  5. 一種分散式檔案系統中的資料寫入裝置,其特徵在於,包括:第一選擇單元,被配置為在中繼資料伺服器所管理的多個副本伺服器中,根據所述多個副本伺服器的剩餘容量選擇至少一個目標副本伺服器;第二選擇單元,被配置為在所述目標副本伺服器中, 根據所述目標副本伺服器所管理的磁片的剩餘容量及磁片負載選擇寫入磁片;儲存單元,被配置為透過所述目標副本伺服器將寫入資料儲存在所述寫入磁片中,其中,該第二選擇單元包括:機率計算子單元,被配置為根據該目標副本伺服器所管理的磁片的剩餘容量及磁片負載計算各磁片被選中的機率;確定子單元,被配置為根據該各磁片被選中的機率及預設條件確定該寫入磁片,其中,該確定子單元包括:累加子單元,被配置為根據該各磁片被選中的機率計算該各磁片的累加機率值;查找子單元,被配置為對該各磁片的累加機率值進行二分查找,將查找到的滿足預設條件的磁片的累加機率值對應的磁片作為該寫入磁片。
  6. 根據申請專利範圍第5項所述的裝置,其中,該機率計算子單元包括:得分計算子單元,被配置為根據該磁片的剩餘容量和總容量之間的比例及其權重,以及該磁片的負載及其權重,計算該磁片的得分;機率獲得子單元,被配置為對各該磁片的得分進行歸一化,獲得各該磁片被選中的機率。
  7. 根據申請專利範圍第6項所述的裝置,其中,該 得分計算子單元包括:第一計算子單元,被配置為分別計算該磁片的剩餘容量和總容量之間的比例的得分,以及該磁片的負載的得分,其中,該比例的得分與該比例之間以及該負載的得分與該負載之間均滿足單調遞增函數關係;第二計算子單元,被配置為根據該比例的得分及該比例的權重,以及該負載的得分及該負載的權重,計算該磁片的得分。
  8. 根據申請專利範圍第5項所述的裝置,其中,該磁片的負載為該磁片IO佇列的長度。
TW106102240A 2017-01-20 2017-01-20 分散式檔案系統中的資料寫入方法和裝置 TWI740884B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW106102240A TWI740884B (zh) 2017-01-20 2017-01-20 分散式檔案系統中的資料寫入方法和裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106102240A TWI740884B (zh) 2017-01-20 2017-01-20 分散式檔案系統中的資料寫入方法和裝置

Publications (2)

Publication Number Publication Date
TW201828036A TW201828036A (zh) 2018-08-01
TWI740884B true TWI740884B (zh) 2021-10-01

Family

ID=63960474

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106102240A TWI740884B (zh) 2017-01-20 2017-01-20 分散式檔案系統中的資料寫入方法和裝置

Country Status (1)

Country Link
TW (1) TWI740884B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080126451A1 (en) * 2000-07-18 2008-05-29 International Business Machines Corporation Allocating space on data storage devices in proportion to weights associated with the devices
TW201328236A (zh) * 2011-12-26 2013-07-01 Ind Tech Res Inst 應用在分散式分時多工系統的資源分配方法與系統
TW201447601A (zh) * 2013-01-08 2014-12-16 Lyve Minds Inc 儲存網路之資料配置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080126451A1 (en) * 2000-07-18 2008-05-29 International Business Machines Corporation Allocating space on data storage devices in proportion to weights associated with the devices
TW201328236A (zh) * 2011-12-26 2013-07-01 Ind Tech Res Inst 應用在分散式分時多工系統的資源分配方法與系統
TW201447601A (zh) * 2013-01-08 2014-12-16 Lyve Minds Inc 儲存網路之資料配置

Also Published As

Publication number Publication date
TW201828036A (zh) 2018-08-01

Similar Documents

Publication Publication Date Title
WO2017076184A1 (zh) 分布式文件系统中的数据写入方法和装置
CN108389118B (zh) 资产管理系统、方法及装置、电子设备
CN107346326B (zh) 用于信息检索的方法和系统
CN106484875B (zh) 基于molap的数据处理方法及装置
CN104239351B (zh) 一种用户行为的机器学习模型的训练方法及装置
EP3432157B1 (en) Data table joining mode processing method and apparatus
US20120158623A1 (en) Visualizing machine learning accuracy
CN103455531B (zh) 一种支持高维数据实时有偏查询的并行索引方法
US11200466B2 (en) Machine learning classifiers
CN109032803B (zh) 数据处理方法和装置、客户端
WO2016177279A1 (zh) 数据处理的方法及系统
CN104021161A (zh) 一种聚簇存储方法及装置
JP2013534334A (ja) 照会結果をソートするための方法および装置
CN106033420A (zh) 哈希表的处理方法及装置
CN112286459A (zh) 一种数据处理方法、装置、设备及介质
CN114356893A (zh) 基于机器学习的元数据调优方法、装置、设备及存储介质
WO2023179433A1 (zh) 流表存储及报文转发方法、装置、计算设备及介质
US11496562B1 (en) Method and system for accessing digital object in human-cyber-physical environment
CN109460406A (zh) 一种数据处理方法及装置
TWI665568B (zh) 資料流的分群方法和裝置
TWI740884B (zh) 分散式檔案系統中的資料寫入方法和裝置
WO2024000897A1 (zh) 一种基于区块链的数字资产合成方法及装置
JP6189266B2 (ja) データ処理装置、データ処理方法及びデータ処理プログラム
CN108229572B (zh) 一种参数寻优方法及计算设备
CN109634914B (zh) 一种对讲语音小文件整存散分和分叉检索的优化方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees