數(shù)據(jù)分散并發(fā)方法和裝置制造方法
【專利摘要】本發(fā)明涉及一種數(shù)據(jù)分散并發(fā)方法和裝置。該數(shù)據(jù)分散并發(fā)方法,包括:獲取數(shù)據(jù)及所述數(shù)據(jù)的主鍵;根據(jù)所述主鍵分配相應(yīng)的子鍵;根據(jù)所述子鍵將所述數(shù)據(jù)路由至相應(yīng)的隊列,并對所述隊列中的數(shù)據(jù)進行寫操作。上述數(shù)據(jù)分散并發(fā)方法和裝置,通過數(shù)據(jù)的主鍵分配相應(yīng)的子鍵,然后對將每個子鍵的數(shù)據(jù)路由至相應(yīng)的隊列,對隊列中的數(shù)據(jù)進行寫操作,因同一主鍵下存在多個子鍵,每個子鍵只有一個寫操作的地方,多個子鍵同時寫操作,各子鍵不影響,提高了數(shù)據(jù)并發(fā)寫的成功率,且保證了數(shù)據(jù)的及時性。
【專利說明】數(shù)據(jù)分散并發(fā)方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)應(yīng)用技術(shù),特別是涉及一種數(shù)據(jù)分散并發(fā)方法和裝置。
【背景技術(shù)】
[0002]事件提醒是一種全方位的生活提醒應(yīng)用,包括游戲提醒、生日提醒、資訊提醒等。提醒的數(shù)據(jù)是以時間點為主鍵,假設(shè)某主鍵是T,即在T時間發(fā)生的提醒都會往T這個記錄中寫數(shù)據(jù),但存儲設(shè)備為了一致性做了防并發(fā)保護,同時只能一個數(shù)據(jù)寫成功,其余都失敗。然而同時提醒數(shù)據(jù)有及時性的要求,所以不會失敗后重試。
[0003]發(fā)明人經(jīng)過研究發(fā)現(xiàn),傳統(tǒng)的事件提醒因存儲設(shè)備的防并發(fā)保護,導(dǎo)致并發(fā)時寫數(shù)據(jù)成功率低。
【發(fā)明內(nèi)容】
[0004]基于此,有必要針對并發(fā)時寫數(shù)據(jù)成功率低的問題,提供一種能提高并發(fā)時寫數(shù)據(jù)成功率的數(shù)據(jù)分散并發(fā)方法。
[0005]此外,還有必要提供一種能提高并發(fā)時寫數(shù)據(jù)成功率的數(shù)據(jù)分散并發(fā)裝置。
[0006]一種數(shù)據(jù)分散并發(fā)方法,包括:
[0007]獲取數(shù)據(jù)及所述數(shù)據(jù)的主鍵;
[0008]根據(jù)所述主鍵分配相應(yīng)的子鍵;
[0009]根據(jù)所述子鍵將所述數(shù)據(jù)路由至相應(yīng)的隊列,并對所述隊列中的數(shù)據(jù)進行寫操作。
[0010]一種數(shù)據(jù)分散并發(fā)裝置,包括:
[0011]獲取模塊,用于獲取數(shù)據(jù)及所述數(shù)據(jù)的主鍵;
[0012]分配模塊,用于根據(jù)所述主鍵分配相應(yīng)的子鍵;
[0013]寫存儲模塊,用于根據(jù)所述子鍵將所述數(shù)據(jù)路由至相應(yīng)的隊列,并將所述隊列中的數(shù)據(jù)進行寫操作。
[0014]上述數(shù)據(jù)分散并發(fā)方法和裝置,通過數(shù)據(jù)的主鍵分配相應(yīng)的子鍵,然后對將每個子鍵的數(shù)據(jù)路由至相應(yīng)的隊列,對隊列中的數(shù)據(jù)進行寫操作,因同一主鍵下存在多個子鍵,每個子鍵只有一個寫操作的地方,多個子鍵同時寫操作,各子鍵不影響,提高了數(shù)據(jù)并發(fā)寫的成功率,且保證了數(shù)據(jù)的及時性。
【專利附圖】
【附圖說明】
[0015]圖1為一個實施例中數(shù)據(jù)分散并發(fā)方法的流程圖;
[0016]圖2為該根據(jù)主鍵分配相應(yīng)的子鍵的步驟的流程圖;
[0017]圖3為對該隊列中的數(shù)據(jù)進行寫操作的步驟的流程圖;
[0018]圖4為另一個實施例中數(shù)據(jù)分散并發(fā)方法的流程圖;
[0019]圖5為一個實施例中數(shù)據(jù)分散并發(fā)裝置的結(jié)構(gòu)框圖;
[0020]圖6為圖5中分配模塊的內(nèi)部結(jié)構(gòu)框圖;
[0021]圖7為圖5中寫存儲模塊的內(nèi)部結(jié)構(gòu)框圖;
[0022]圖8為另一個實施例中數(shù)據(jù)分散并發(fā)裝置的結(jié)構(gòu)框圖。
【具體實施方式】
[0023]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0024]如圖1所示,為一個實施例中數(shù)據(jù)分散并發(fā)方法的流程圖。該數(shù)據(jù)分散并發(fā)方法,包括:
[0025]步驟102,獲取數(shù)據(jù)及該數(shù)據(jù)的主鍵。
[0026]具體的,該數(shù)據(jù)為各種需要發(fā)出提醒的數(shù)據(jù),如生日提醒、資訊提醒等。數(shù)據(jù)的主鍵是指具體的提醒的時間,如2013年8月13日10時10分。
[0027]步驟104,根據(jù)該主鍵分配相應(yīng)的子鍵。
[0028]具體的,將主鍵細化分成多個子鍵,為數(shù)據(jù)分配相應(yīng)的子鍵。主鍵是提醒數(shù)據(jù)存儲系統(tǒng)的索引,用于管理子鍵。
[0029]在一個實施例中,如圖2所示,該根據(jù)主鍵分配相應(yīng)的子鍵的步驟包括:
[0030]步驟202,判斷是否存在該主鍵的分組標識,若存在,執(zhí)行步驟204,若不存在,執(zhí)行步驟206。
[0031]具體的,根據(jù)主鍵申請請求,無狀態(tài)路由到服務(wù)器,判斷服務(wù)器上是否存在該主鍵的分組標識。無狀態(tài)路由到服務(wù)器是指按照每臺服務(wù)器的負載及連接成功率均衡分配網(wǎng)絡(luò)請求到相應(yīng)的服務(wù)器。分組標識可為分組號,該分組標識是唯一的。
[0032]步驟204,判斷是否有該分組標識下的子鍵,若有,執(zhí)行步驟210,若否,執(zhí)行步驟208。
[0033]步驟206,為該主鍵分配分組標識,再執(zhí)行步驟208。
[0034]步驟208,生成該分組標識下的子鍵,再執(zhí)行步驟214。
[0035]步驟210,判斷該子鍵的數(shù)據(jù)記錄數(shù)是否大于或等于預(yù)設(shè)值,若是,執(zhí)行步驟212,若否,執(zhí)行步驟214。
[0036]具體的,該子鍵下可預(yù)先設(shè)置最大數(shù)據(jù)記錄數(shù)即預(yù)設(shè)值。該預(yù)設(shè)值可根據(jù)存儲設(shè)備的大小和一個子鍵的內(nèi)數(shù)據(jù)的檢索效率確定。
[0037]步驟212,在該分組標識下將該子鍵數(shù)增加1,然后執(zhí)行步驟214。
[0038]步驟214,將該子鍵下的數(shù)據(jù)記錄數(shù)增加1,并返回該子鍵。
[0039]具體的,若在分組標識下將子鍵數(shù)增加I后,在該更新后的子鍵下的數(shù)據(jù)記錄數(shù)增加1,并返回該更新后的子鍵。若判斷出子鍵的數(shù)據(jù)記錄數(shù)小于預(yù)設(shè)值時,將該子鍵下的數(shù)據(jù)記錄數(shù)增加1,并返回該子鍵。
[0040]此外,在判斷出該子鍵的數(shù)據(jù)記錄數(shù)大于或等于預(yù)設(shè)值時,可重新為該主鍵分配相應(yīng)的子鍵。
[0041]步驟106,根據(jù)該子鍵將該數(shù)據(jù)路由至相應(yīng)的隊列,并對該隊列中的數(shù)據(jù)進行寫操作。
[0042]具體的,將具有相同子鍵的數(shù)據(jù)路由至相同的隊列中??砂凑兆渔I的哈希算法將一些子鍵的隊列放置到同一臺機器完成,保證一個子鍵只有一個寫操作的地方。
[0043]在一個實施例中,如圖3所示,對該隊列中的數(shù)據(jù)進行寫操作的步驟包括:
[0044]步驟302,啟動寫進程。
[0045]步驟304,鎖定一個隊列。
[0046]具體的,將一個隊列鎖定,只能對該隊列進行寫操作。
[0047]步驟306,從該鎖定的隊列中讀數(shù)據(jù)。
[0048]具體的,按照隊列中的順序?qū)?shù)據(jù)進行讀取。
[0049]步驟308,判斷該隊列是否為空,若是,則執(zhí)行步驟310,如否,執(zhí)行步驟312。
[0050]步驟310,遍歷下一個隊列,返回步驟304。
[0051 ] 具體的,可按照次序依次訪問每個隊列。
[0052]步驟312,將該隊列中的數(shù)據(jù)進行寫操作。
[0053]通過對隊列逐一遍歷讀取其中數(shù)據(jù),然后進行寫操作。
[0054]上述數(shù)據(jù)分散并發(fā)方法,通過數(shù)據(jù)的主鍵分配相應(yīng)的子鍵,然后對將每個子鍵的數(shù)據(jù)路由至相應(yīng)的隊列,對隊列中的數(shù)據(jù)進行寫操作,因同一主鍵下存在多個子鍵,每個子鍵只有一個寫操作的地方,多個子鍵同時寫操作,各子鍵不影響,提高了數(shù)據(jù)并發(fā)寫的成功率,且保證了數(shù)據(jù)的及時性。
[0055]如圖4所示,為另一個實施例中數(shù)據(jù)分散并發(fā)方法的流程圖。該數(shù)據(jù)分散并發(fā)方法,包括:
[0056]步驟402,獲取數(shù)據(jù)及該數(shù)據(jù)的主鍵。
[0057]步驟404,判斷該數(shù)據(jù)是否為新增數(shù)據(jù),若是,執(zhí)行步驟410,若否,執(zhí)行步驟406。
[0058]具體的,可通過調(diào)用新增數(shù)據(jù)接口判斷該數(shù)據(jù)是否為新增數(shù)據(jù)。此外,可通過數(shù)據(jù)的哈希值比較,判斷數(shù)據(jù)是否為新增數(shù)據(jù)。
[0059]步驟406,判斷該數(shù)據(jù)是否為修改數(shù)據(jù),若是,則執(zhí)行步驟408,若否,執(zhí)行步驟412。
[0060]具體的,可通過調(diào)用修改數(shù)據(jù)接口判斷該數(shù)據(jù)是否為修改數(shù)據(jù)。
[0061]步驟408,更新提醒,然后執(zhí)行步驟410。
[0062]具體的,更新提醒包括刪除舊提醒和增加新提醒。
[0063]步驟410,根據(jù)該主鍵分配相應(yīng)的子鍵,然后執(zhí)行步驟414。
[0064]步驟412,刪除該數(shù)據(jù),然后執(zhí)行步驟414。
[0065]步驟414,根據(jù)該子鍵將該數(shù)據(jù)路由至相應(yīng)的隊列,并對該隊列中的數(shù)據(jù)進行寫操作。
[0066]上述數(shù)據(jù)分散并發(fā)方法,對獲取的數(shù)據(jù)進行判斷,可區(qū)分出新增數(shù)據(jù)、修改數(shù)據(jù)等,若不為新增數(shù)據(jù)和修改數(shù)據(jù),不需分配子鍵,節(jié)省系統(tǒng)資源。
[0067]如圖5所示,為一個實施例中數(shù)據(jù)分散并發(fā)裝置的結(jié)構(gòu)框圖。該數(shù)據(jù)分散并發(fā)裝置,包括獲取模塊520、分配模塊540和寫存儲模塊560。
[0068]其中,獲取模塊520用于獲取數(shù)據(jù)及該數(shù)據(jù)的主鍵。具體的,該數(shù)據(jù)為各種需要發(fā)出提醒的數(shù)據(jù),如生日提醒、資訊提醒等。數(shù)據(jù)的主鍵是指具體的提醒的時間,如2013年8月13日10時10分。
[0069]分配模塊540用于根據(jù)該主鍵分配相應(yīng)的子鍵。具體的,將主鍵細化分成多個子鍵,為數(shù)據(jù)分配相應(yīng)的子鍵。主鍵是提醒數(shù)據(jù)存儲系統(tǒng)的索引,用于管理子鍵。
[0070]如圖6所示,該分配模塊540包括判斷子模塊541、自增子模塊542、分配子模塊543、生成子模塊544。
[0071]其中,判斷子模塊541用于判斷是否存在該主鍵的分組標識,若存在,則進一步判斷是否有該分組標識下的子鍵。
[0072]自增子模塊542用于在該分組標識下有子鍵時,將該子鍵下的記錄數(shù)增加I。
[0073]分配子模塊543用于返回該子鍵。
[0074]生成子模塊544用于在該分組標識下無子鍵時,生成該分組標識下的子鍵。
[0075]該自增子模塊542還用于在生成該分組標識下的子鍵后,將該子鍵下的記錄數(shù)增加I ;該分配子模塊543還用于返回該生成的子鍵。
[0076]該生成子模塊544還用于在判斷不存在該主鍵的分組標識,為該主鍵分配分組標識,并生成該分組標識下的子鍵;該自增子模塊542還用于將該生成的子鍵下的數(shù)據(jù)記錄數(shù)增加I ;該分配子模塊543還用于返回該生成的子鍵。
[0077]該判斷子模塊541還用于在該判斷該分組標識下有子鍵的步驟之后,判斷該子鍵的數(shù)據(jù)記錄數(shù)是否大于或等于預(yù)設(shè)值;該自增子模塊542還用于在該數(shù)據(jù)記錄數(shù)大于或等于預(yù)設(shè)值時,在該分組標識下將該子鍵數(shù)增加1,并在該更新后的子鍵下的數(shù)據(jù)記錄數(shù)增加I ;該分配子模塊543還用于返回該更新后的子鍵;該自增子模塊542還用于在該數(shù)據(jù)記錄數(shù)小于預(yù)設(shè)值時,將該子鍵下的數(shù)據(jù)記錄數(shù)增加1,該分配子模塊543還用于返回該子鍵。
[0078]寫存儲模塊560用于根據(jù)該子鍵將該數(shù)據(jù)路由至相應(yīng)的隊列,并將該隊列中的數(shù)據(jù)進行寫操作。
[0079]如圖7所示,該寫存儲模塊560包括啟動子模塊561、鎖定子模塊562、讀取子模塊563、檢測子模塊564、遍歷子模塊565和寫子模塊566。
[0080]其中,啟動子模塊561用于啟動寫進程;
[0081]鎖定子模塊562用于鎖定一個隊列;
[0082]讀取子模塊563用于從該鎖定的隊列中讀數(shù)據(jù);
[0083]檢測子模塊564用于判斷該隊列是否為空;
[0084]遍歷子模塊565用于在判斷出該隊列為空時,遍歷下一個隊列;
[0085]該鎖定子模塊562還用于重新鎖定該遍歷的隊列;
[0086]寫子模塊566用于在該隊列不為空時,將該隊列中的數(shù)據(jù)進行寫操作。
[0087]上述數(shù)據(jù)分散并發(fā)裝置,通過數(shù)據(jù)的主鍵分配相應(yīng)的子鍵,然后對將每個子鍵的數(shù)據(jù)路由至相應(yīng)的隊列,對隊列中的數(shù)據(jù)進行寫操作,因同一主鍵下存在多個子鍵,每個子鍵只有一個寫操作的地方,多個子鍵同時寫操作,各子鍵不影響,提高了數(shù)據(jù)并發(fā)寫的成功率,且保證了數(shù)據(jù)的及時性。
[0088]如圖8所示,為另一個實施例中數(shù)據(jù)分散并發(fā)裝置的結(jié)構(gòu)框圖。該數(shù)據(jù)分散并發(fā)裝置,除了包括獲取模塊520、分配模塊540和寫存儲模塊560,還包括判斷模塊530、更新模塊532和刪除模塊534。
[0089]其中,判斷模塊530用于在該獲取數(shù)據(jù)及該數(shù)據(jù)的主鍵之后,判斷該數(shù)據(jù)是否為新增數(shù)據(jù);
[0090]分配模塊540還用于在該數(shù)據(jù)為新增數(shù)據(jù)時根據(jù)該主鍵分配相應(yīng)的子鍵;
[0091]判斷模塊530還用于在該數(shù)據(jù)不為新增數(shù)據(jù)時,進一步判斷該數(shù)據(jù)是否為修改數(shù)據(jù);
[0092]更新模塊532用于在該數(shù)據(jù)為修改數(shù)據(jù)時,更新提醒;
[0093]該分配模540還用于在該數(shù)據(jù)為修改數(shù)據(jù)時,根據(jù)該主鍵分配相應(yīng)的子鍵;
[0094]刪除模塊534用于在該數(shù)據(jù)不為修改數(shù)據(jù)時,刪除該數(shù)據(jù)。
[0095]上述數(shù)據(jù)分散并發(fā)裝置,對獲取的數(shù)據(jù)進行判斷,可區(qū)分出新增數(shù)據(jù)、修改數(shù)據(jù)等,若不為新增數(shù)據(jù)和修改數(shù)據(jù),不需分配子鍵,節(jié)省系統(tǒng)資源。
[0096]本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。
[0097]以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應(yīng)以所附權(quán)利要求為準。
【權(quán)利要求】
1.一種數(shù)據(jù)分散并發(fā)方法,包括: 獲取數(shù)據(jù)及所述數(shù)據(jù)的主鍵; 根據(jù)所述主鍵分配相應(yīng)的子鍵; 根據(jù)所述子鍵將所述數(shù)據(jù)路由至相應(yīng)的隊列,并對所述隊列中的數(shù)據(jù)進行寫操作。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)分散并發(fā)方法,其特征在于,所述根據(jù)主鍵分配相應(yīng)的子鍵的步驟包括: 判斷是否存在所述主鍵的分組標識,若存在,則進一步判斷是否有所述分組標識下的子鍵,若有,則將所述子鍵下的記錄數(shù)增加1,并返回所述子鍵,若無,則生成所述分組標識下的子鍵,將所述生成的子鍵下的記錄數(shù)增加1,并返回所述生成的子鍵。
3.根據(jù)權(quán)利要求2所述的數(shù)據(jù)分散并發(fā)方法,其特征在于,所述根據(jù)主鍵分配相應(yīng)的子鍵的步驟還包括: 判斷不存在所述主鍵的分組標識,則為所述主鍵分配分組標識,并生成所述分組標識下的子鍵,將所述子鍵下的數(shù)據(jù)記錄數(shù)增加1,并返回所述生成的子鍵。
4.根據(jù)權(quán)利要求2所述的數(shù)據(jù)分散并發(fā)方法,其特征在于,在所述判斷所述分組標識下有子鍵的步驟之后,還包括: 判斷所述子鍵的數(shù)據(jù)記錄數(shù)是否大于或等于預(yù)設(shè)值,若是,則在所述分組標識下將所述子鍵數(shù)增加1,并在所述更新后的子鍵下的數(shù)據(jù)記錄數(shù)增加1,并返回所述更新后的子鍵,若否,則將所述子鍵下的數(shù)據(jù)記錄數(shù)增加1,并返回所述子鍵。
5.根據(jù)權(quán)利要求1所述的數(shù)據(jù)分散并發(fā)方法,其特征在于,對所述隊列中的數(shù)據(jù)進行寫操作的步驟包括: 啟動寫進程; 鎖定一個隊列; 從所述鎖定的隊列中讀數(shù)據(jù); 判斷所述隊列是否為空,若是,則遍歷下一個隊列,并重新鎖定所述遍歷的隊列,若否,則將所述隊列中的數(shù)據(jù)進行寫操作。
6.根據(jù)權(quán)利要求1所述的數(shù)據(jù)分散并發(fā)方法,其特征在于,在所述獲取數(shù)據(jù)及所述數(shù)據(jù)的主鍵之后,所述根據(jù)所述主鍵分配相應(yīng)的子鍵之前,還包括: 判斷所述數(shù)據(jù)是否為新增數(shù)據(jù),若是,則根據(jù)所述主鍵分配相應(yīng)的子鍵,若否,則進一步判斷所述數(shù)據(jù)是否為修改數(shù)據(jù),若是,則更新提醒,并根據(jù)所述主鍵分配相應(yīng)的子鍵,若否,則刪除所述數(shù)據(jù)。
7.一種數(shù)據(jù)分散并發(fā)裝置,其特征在于,包括: 獲取模塊,用于獲取數(shù)據(jù)及所述數(shù)據(jù)的主鍵; 分配模塊,用于根據(jù)所述主鍵分配相應(yīng)的子鍵; 寫存儲模塊,用于根據(jù)所述子鍵將所述數(shù)據(jù)路由至相應(yīng)的隊列,并將所述隊列中的數(shù)據(jù)進行寫操作。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)分散并發(fā)裝置,其特征在于,所述分配模塊包括: 判斷子模塊,用于判斷是否存在所述主鍵的分組標識,若存在,則進一步判斷是否有所述分組標識下的子鍵; 自增子模塊,用于在所述分組標識下有子鍵時,將所述子鍵下的記錄數(shù)增加1, 分配子模塊,用于返回所述子鍵; 生成子模塊,用于在所述分組標識下無子鍵時,生成所述分組標識下的子鍵; 所述自增子模塊還用于在生成所述分組標識下的子鍵后,將所述子鍵下的記錄數(shù)增加1,所述分配子模塊還用于返回所述生成的子鍵。
9.根據(jù)權(quán)利要求8所述的數(shù)據(jù)分散并發(fā)裝置,其特征在于,所述生成子模塊還用于在判斷不存在所述主鍵的分組標識,為所述主鍵分配分組標識,并生成所述分組標識下的子鍵;所述自增子模塊還用于將所述生成的子鍵下的數(shù)據(jù)記錄數(shù)增加I ;所述分配子模塊還用于返回所述生成的子鍵。
10.根據(jù)權(quán)利要求8所述的數(shù)據(jù)分散并發(fā)裝置,其特征在于,所述判斷子模塊還用于在所述判斷所述分組標識下有子鍵的步驟之后,判斷所述子鍵的數(shù)據(jù)記錄數(shù)是否大于或等于預(yù)設(shè)值;所述自增子模塊還用于在所述數(shù)據(jù)記錄數(shù)大于或等于預(yù)設(shè)值時,在所述分組標識下將所述子鍵數(shù)增加1,并在所述更新后的子鍵下的數(shù)據(jù)記錄數(shù)增加I;所述分配子模塊還用于返回所述更新后的子鍵;所述自增子模塊還用于在所述數(shù)據(jù)記錄數(shù)小于預(yù)設(shè)值時,將所述子鍵下的數(shù)據(jù)記錄數(shù)增加I,所述分配子模塊還用于返回所述子鍵。
11.根據(jù)權(quán)利要求7所述的數(shù)據(jù)分散并發(fā)裝置,其特征在于,所述寫存儲模塊包括: 啟動子模塊,用于啟動寫進程; 鎖定子模塊,用于鎖定一個隊列; 讀取子模塊,用于從所述鎖定的隊列中讀數(shù)據(jù); 檢測子模塊,用于判斷所述隊列是否為空; 遍歷子模塊,用于在判斷出所述隊列為空時,遍歷下一個隊列; 所述鎖定子模塊還用于重新鎖定所述遍歷的隊列; 寫子模塊,用于在所述隊列不為空時,將所述隊列中的數(shù)據(jù)進行寫操作。
12.根據(jù)權(quán)利要求7所述的數(shù)據(jù)分散并發(fā)裝置,其特征在于,所述裝置還包括: 判斷模塊,用于在所述獲取數(shù)據(jù)及所述數(shù)據(jù)的主鍵之后,判斷所述數(shù)據(jù)是否為新增數(shù)據(jù); 所述分配模塊還用于在所述數(shù)據(jù)為新增數(shù)據(jù)時根據(jù)所述主鍵分配相應(yīng)的子鍵; 所述判斷模塊還用于在所述數(shù)據(jù)不為新增數(shù)據(jù)時,進一步判斷所述數(shù)據(jù)是否為修改數(shù)據(jù); 更新模塊,用于在所述數(shù)據(jù)為修改數(shù)據(jù)時,更新提醒; 所述分配模塊還用于在所述數(shù)據(jù)為修改數(shù)據(jù)時,根據(jù)所述主鍵分配相應(yīng)的子鍵; 刪除模塊,用于在所述數(shù)據(jù)不為修改數(shù)據(jù)時,刪除所述數(shù)據(jù)。
【文檔編號】G06F9/44GK104378400SQ201310357205
【公開日】2015年2月25日 申請日期:2013年8月15日 優(yōu)先權(quán)日:2013年8月15日
【發(fā)明者】林潔文, 蔡曉鵬, 祝雄鋒, 胡戊, 劉洋 申請人:騰訊科技(深圳)有限公司