一種數(shù)據(jù)存儲方法、裝置及電子設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,特別涉及一種數(shù)據(jù)存儲方法、裝置及電子設(shè)備。
【背景技術(shù)】
[0002] 隨著互聯(lián)網(wǎng)的發(fā)展,用戶使用終端時產(chǎn)生的數(shù)據(jù)越來越多。但終端的存儲空間很 小,特別是移動終端的存儲空間更小,因此,用戶常常將數(shù)據(jù)上傳到網(wǎng)絡(luò)側(cè)的區(qū)域服務(wù)器 中。這里,區(qū)域服務(wù)器為用戶所在區(qū)域的存儲服務(wù)器,其用于存儲本區(qū)域內(nèi)用戶上傳的數(shù) 據(jù)。
[0003] 目前,區(qū)域服務(wù)器在接收到用戶的待存儲數(shù)據(jù)的數(shù)據(jù)信息后,均會對用戶上傳的 數(shù)據(jù)信息進行排重處理,即檢測所在區(qū)域的區(qū)域服務(wù)器中是否已存儲了與該數(shù)據(jù)信息相同 的目標數(shù)據(jù),若已存儲了該目標數(shù)據(jù),則無需用戶再次上傳該待存儲數(shù)據(jù),從而用戶不必花 費時間重復(fù)上傳同一數(shù)據(jù),并且節(jié)約了用戶的網(wǎng)絡(luò)流量,節(jié)省了用戶的存儲成本。
[0004] 現(xiàn)有技術(shù)中,數(shù)據(jù)存儲的方法僅能針對本區(qū)域的區(qū)域服務(wù)器中的數(shù)據(jù)進行排重存 儲,無法實現(xiàn)跨區(qū)域數(shù)據(jù)的排重存儲,例如:待存儲的某一數(shù)據(jù)在本區(qū)域的區(qū)域服務(wù)器中未 存儲,在其他區(qū)域的區(qū)域服務(wù)器中存儲了該數(shù)據(jù),此時仍然需要用戶將數(shù)據(jù)上傳,并存儲在 本區(qū)域的區(qū)域服務(wù)器中。對此,用戶需要花費很多時間去存儲本區(qū)域的區(qū)域服務(wù)器中未存 儲但在其他區(qū)域的區(qū)域服務(wù)器中已存儲的數(shù)據(jù),增加了用戶的存儲成本,使得用戶的體驗 不佳。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實施例的目的在于提供一種數(shù)據(jù)存儲方法、裝置及電子設(shè)備,以解決浪費 用戶的網(wǎng)絡(luò)流量和存儲數(shù)據(jù)的時間的問題。
[0006] 為達到上述目的,本發(fā)明實施例公開了一種數(shù)據(jù)存儲方法,應(yīng)用于數(shù)據(jù)存儲系統(tǒng) 中的第一區(qū)域服務(wù)器,所述數(shù)據(jù)存儲系統(tǒng)包括:一個全局服務(wù)器和多個區(qū)域服務(wù)器,其中, 所述全局服務(wù)器,用于存儲各個區(qū)域服務(wù)器中已存儲數(shù)據(jù)與存儲已存儲數(shù)據(jù)的區(qū)域服務(wù)器 之間的對應(yīng)關(guān)系,所述方法包括步驟:
[0007]獲得終端發(fā)送的針對目標存儲數(shù)據(jù)的特征信息?\;
[0008] 根據(jù)所述特征信息Ti,判斷所述第一區(qū)域服務(wù)器中是否已存儲所述目標存儲數(shù) 據(jù);
[0009] 若為否,則向所述全局服務(wù)器發(fā)送數(shù)據(jù)查詢請求,其中,所述數(shù)據(jù)查詢請求中包含 所述特征信息T1;
[0010] 接收所述全局服務(wù)器根據(jù)所述數(shù)據(jù)查詢請求中包含的所述特征信息^進行數(shù)據(jù) 查詢的查詢結(jié)果;
[0011] 根據(jù)所述查詢結(jié)果,按照預(yù)設(shè)的數(shù)據(jù)獲得規(guī)則,獲得所述目標存儲數(shù)據(jù),并存儲所 述目標存儲數(shù)據(jù)。
[0012] 本發(fā)明的一種具體實現(xiàn)方式中,所述根據(jù)所述特征信息h,判斷所述第一區(qū)域服 務(wù)器中是否已存儲所述目標存儲數(shù)據(jù),包括:
[0013] 根據(jù)所述特征信息Ti,判斷預(yù)設(shè)的區(qū)域數(shù)據(jù)信息表中是否包含所述特征信息?\,其 中,所述預(yù)設(shè)的區(qū)域數(shù)據(jù)信息表存儲于所述第一區(qū)域服務(wù)器中,所述區(qū)域數(shù)據(jù)信息表用于 存儲所述第一區(qū)域服務(wù)器中已存儲的每一數(shù)據(jù)的特征信息;
[0014] 若不包含,則判定所述第一區(qū)域服務(wù)器中未存儲所述目標存儲數(shù)據(jù)。
[0015] 本發(fā)明的一種具體實現(xiàn)方式中,所述區(qū)域數(shù)據(jù)信息表還用于存儲所述第一區(qū)域服 務(wù)器中已存儲的每一數(shù)據(jù)的引用次數(shù);
[0016] 所述方法還包括:
[0017] 在判定所述第一區(qū)域服務(wù)器中已存儲所述目標存儲數(shù)據(jù)的情況下,拒絕所述終端 上傳所述目標存儲數(shù)據(jù),并累計記錄已存儲的所述目標存儲數(shù)據(jù)的引用次數(shù)。
[0018] 本發(fā)明的一種具體實現(xiàn)方式中,所述根據(jù)所述查詢結(jié)果,按照預(yù)設(shè)的數(shù)據(jù)獲得規(guī) 貝1J,獲得所述目標存儲數(shù)據(jù),并存儲所述目標存儲數(shù)據(jù)之后,還包括:
[0019] 根據(jù)所述特征信息Tl,更新所述區(qū)域數(shù)據(jù)信息表。
[0020] 本發(fā)明的一種具體實現(xiàn)方式中,所述根據(jù)所述查詢結(jié)果,按照預(yù)設(shè)的數(shù)據(jù)獲得規(guī) 貝1J,獲得所述目標存儲數(shù)據(jù),并存儲所述目標存儲數(shù)據(jù),包括:
[0021 ]在所述查詢結(jié)果表明不存在已存儲所述目標存儲數(shù)據(jù)的區(qū)域服務(wù)器的情況下,向 所述終端發(fā)送針對所述目標存儲數(shù)據(jù)的數(shù)據(jù)上傳指令;
[0022] 接收所述終端根據(jù)所述數(shù)據(jù)上傳指令上傳的所述目標存儲數(shù)據(jù),并存儲所述目標 存儲數(shù)據(jù)。
[0023] 本發(fā)明的一種具體實現(xiàn)方式中,所述根據(jù)所述查詢結(jié)果,按照預(yù)設(shè)的數(shù)據(jù)獲得規(guī) 貝1J,獲得所述目標存儲數(shù)據(jù),并存儲所述目標存儲數(shù)據(jù),包括:
[0024] 在查詢結(jié)果表明存在已存儲所述目標存儲數(shù)據(jù)的區(qū)域服務(wù)器的情況下,根據(jù)所述 查詢結(jié)果,獲得已存儲所述目標存儲數(shù)據(jù)的區(qū)域服務(wù)器的標識;
[0025] 根據(jù)預(yù)設(shè)的標識選擇條件,從所獲得的標識中選擇一個區(qū)域服務(wù)器的標識;
[0026] 從所選擇的標識對應(yīng)的區(qū)域服務(wù)器中獲得所述目標存儲數(shù)據(jù),并存儲所述目標存 儲數(shù)據(jù)。
[0027] 本發(fā)明的一種具體實現(xiàn)方式中,所述根據(jù)預(yù)設(shè)的標識選擇條件,從所獲得的標識 中選擇一個區(qū)域服務(wù)器的標識,包括:
[0028] 獲得所述目標存儲數(shù)據(jù)的引用總次數(shù);
[0029] 判斷所述引用總次數(shù)是否大于預(yù)設(shè)次數(shù);
[0030] 若為是,則從所獲得的標識中選擇一個區(qū)域服務(wù)器的標識。
[0031] 為達到上述目的,本發(fā)明實施例還公開了一種數(shù)據(jù)存儲裝置,應(yīng)用于數(shù)據(jù)存儲系 統(tǒng)中的第一區(qū)域服務(wù)器,所述數(shù)據(jù)存儲系統(tǒng)包括:一個全局服務(wù)器和多個區(qū)域服務(wù)器,其 中,所述全局服務(wù)器,用于存儲各個區(qū)域服務(wù)器中已存儲數(shù)據(jù)與存儲已存儲數(shù)據(jù)的區(qū)域服 務(wù)器之間的對應(yīng)關(guān)系,所述裝置包括:特征信息獲得模塊、數(shù)據(jù)判斷模塊、查詢請求發(fā)送模 塊、查詢結(jié)果接收模塊和數(shù)據(jù)存儲模塊;
[0032] 其中,所述特征信息獲得模塊,用于獲得終端發(fā)送的針對目標存儲數(shù)據(jù)的特征信 息Τι;
[0033] 所述數(shù)據(jù)判斷模塊,用于根據(jù)所述特征信息h,判斷所述第一區(qū)域服務(wù)器中是否 已存儲所述目標存儲數(shù)據(jù),若為否,則觸發(fā)所述查詢請求發(fā)送模塊;
[0034] 所述查詢請求發(fā)送模塊,用于向所述全局服務(wù)器發(fā)送數(shù)據(jù)查詢請求,其中,所述數(shù) 據(jù)查詢請求中包含所述特征信息Τι;
[0035] 所述查詢結(jié)果接收模塊,用于接收所述全局服務(wù)器根據(jù)所述數(shù)據(jù)查詢請求中包含 的所述特征信息!^進行數(shù)據(jù)查詢的查詢結(jié)果;
[0036] 所述數(shù)據(jù)存儲模塊,用于根據(jù)所述查詢結(jié)果,按照預(yù)設(shè)的數(shù)據(jù)獲得規(guī)則,獲得所述 目標存儲數(shù)據(jù),并存儲所述目標存儲數(shù)據(jù)。
[0037] 本發(fā)明的一種具體實現(xiàn)方式中,所述數(shù)據(jù)判斷模塊,包括:特征信息判斷子模塊和 數(shù)據(jù)判定子模塊;
[0038] 其中,所述特征信息判斷子模塊,用于根據(jù)所述特征信息Ti,判斷預(yù)設(shè)的區(qū)域數(shù)據(jù) 信息表中是否包含所述特征信息Ti,若不包含,則觸發(fā)所述數(shù)據(jù)判定子模塊,其中,所述預(yù) 設(shè)的區(qū)域數(shù)據(jù)信息表存儲于所述第一區(qū)域服務(wù)器中,所述區(qū)域數(shù)據(jù)信息表用于存儲所述第 一區(qū)域服務(wù)器中已存儲的每一數(shù)據(jù)的特征信息;
[0039] 所述數(shù)據(jù)判定子模塊,用于判定所述第一區(qū)域服務(wù)器中未存儲所述目標存儲數(shù) 據(jù)。
[0040] 本發(fā)明的一種具體實現(xiàn)方式中,所述區(qū)域數(shù)據(jù)信息表還用于存儲所述第一區(qū)域服 務(wù)器中已存儲的每一數(shù)據(jù)的引用次數(shù);
[0041 ]所述裝置還包括:引用次數(shù)累計模塊,
[0042]用于,在判定所述第一區(qū)域服務(wù)器中已存儲所述目標存儲數(shù)據(jù)的情況下,拒絕所 述終端上傳所述目標存儲數(shù)據(jù),并累計記錄已存儲的所述目標存儲數(shù)據(jù)的引用次數(shù)。
[0043] 本發(fā)明的一種具體實現(xiàn)方式中,所述裝置還包括:信息表更新模塊,用于根據(jù)所述 特征信息!^,更新所述區(qū)域數(shù)據(jù)信息表。
[0044] 本發(fā)明的一種具體實現(xiàn)方式中,所述數(shù)據(jù)存儲模塊,包括:上傳指令發(fā)送子模塊和 第一數(shù)據(jù)存儲子模塊;
[0045] 其中,所述上傳指令發(fā)送子模塊,用于在所述查詢結(jié)果表明不存在已存儲所述目 標存儲數(shù)據(jù)的區(qū)域服務(wù)器的情況下,向所述終端發(fā)送針對所述目標存儲數(shù)據(jù)的數(shù)據(jù)上傳指 令;
[0046]所述第一數(shù)據(jù)存儲子模塊,用于接收所述終端根據(jù)所述數(shù)據(jù)上傳指令上傳的所述 目標存儲數(shù)據(jù),并存儲所述目標存儲數(shù)據(jù)。
[0047]本發(fā)明的一種具體實現(xiàn)方式中,所述數(shù)據(jù)存儲模塊,包括:標識獲得子模塊、標識 選擇子模塊和第二數(shù)據(jù)存儲子模塊;
[0048]其中,所述標識獲得子模塊,用于在查詢結(jié)果表明存在已存儲所述目標存儲數(shù)據(jù) 的區(qū)域服務(wù)器的情況下,根據(jù)所述查詢結(jié)果,獲得已存儲所述目標存儲數(shù)據(jù)的區(qū)域服務(wù)器 的標識;
[0049] 所述標識選擇子模塊,用于根據(jù)預(yù)設(shè)的標識選擇條件,從所獲得的標識中選擇一 個區(qū)域服務(wù)器的標識;
[0050] 所述第二數(shù)據(jù)存儲子模塊,用于從所選擇的標識對應(yīng)的區(qū)域服務(wù)器中獲得所述目 標存儲數(shù)據(jù),并存儲所述目標存儲數(shù)據(jù)。
[0051 ]本發(fā)明的一種具體實現(xiàn)方式中,所述標識選擇子模塊,包括:引用總次數(shù)獲得單 元、次數(shù)判斷單元和標識選擇單元;
[0052]其中,所述引用總次數(shù)獲得單元,用于獲得所述目標存儲數(shù)據(jù)的引用總次數(shù);
[0053]所述次數(shù)判斷單元,用于判斷所述引用總次數(shù)是否大于預(yù)設(shè)次數(shù),若為是,則觸發(fā) 所述標識選擇單元;
[0054]所述標識選擇單元,用于從所獲得的標識中選擇一個區(qū)域服務(wù)器的標識。
[0055] 為達到上述目的,本發(fā)明實施例還公開了一種電子設(shè)備,所述電子設(shè)備包括:殼 體、處理器、存儲器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內(nèi)部,處理器 和存儲器設(shè)置在電路板上;電源電路,用于為電子設(shè)備的各個電路或器件供電;存儲器用于 存儲可執(zhí)行程序代碼;處理器通過讀取存儲器中存儲的可執(zhí)行程序代碼來運行與可執(zhí)行程 序代碼對應(yīng)的程序,以用于執(zhí)行以下步驟:
[0056] 獲得終端發(fā)送的針對目標存儲數(shù)據(jù)的特征信息?\;
[0057] 根據(jù)所述特征信息Ti,判斷所述第一區(qū)域服務(wù)器中是否已存儲所述目標存儲數(shù) 據(jù);
[0058] 若為否,則向所述全局服務(wù)器發(fā)送數(shù)據(jù)查詢請求,其中,所述數(shù)據(jù)查詢請求中包 含:所述特征信息T1;
[0059] 接收所述全局服務(wù)器根據(jù)所述數(shù)據(jù)查詢請求中包含的所述特征信息^進行數(shù)據(jù) 查詢的查詢結(jié)果;
[0060] 根據(jù)所述查詢結(jié)果,按照預(yù)設(shè)的數(shù)據(jù)獲得規(guī)則,獲得所述目標存儲數(shù)據(jù),并存儲所 述目標存儲數(shù)據(jù)。
[0061] 為達到上述目的,本發(fā)明實施例還公開了一種存儲介質(zhì),其中,該存儲介質(zhì)用于存 儲應(yīng)用程序,所述應(yīng)用程序用于在運行時執(zhí)行本發(fā)明實施例所述的一種數(shù)據(jù)存儲方法。
[0062] 為達到上述目的,本發(fā)明實施例公開了一種應(yīng)用程序,其中,該應(yīng)用程序用于在運 行時執(zhí)行本發(fā)明實施例所述的一種數(shù)據(jù)存儲方法。
[0063] 由上可見,本發(fā)明實施例中,第一區(qū)域服務(wù)器獲得