一種具高傳輸性與正確性的數(shù)據(jù)快取方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及叢集式網(wǎng)絡(luò)服務(wù)器的數(shù)據(jù)傳輸處理方法,尤其涉及一種應(yīng)用于各類金融交易系統(tǒng),可快速擷取與更新數(shù)據(jù),同時(shí)確保數(shù)據(jù)正確性與一致性的具高傳輸性與正確性的數(shù)據(jù)快取方法。
【背景技術(shù)】
[0002]目前網(wǎng)絡(luò)技術(shù)漸趨成熟與普及,因此許多行為模式也逐漸網(wǎng)絡(luò)化,如網(wǎng)絡(luò)實(shí)時(shí)交易系統(tǒng)或買賣系統(tǒng)等,以提供民眾更為便利的生活方式。
[0003]現(xiàn)今常見的網(wǎng)絡(luò)交易系統(tǒng)由多個(gè)主服務(wù)器及多個(gè)輸入端構(gòu)成,且該等主服務(wù)器內(nèi)分別設(shè)有一數(shù)據(jù)庫(Database),用戶通過該等輸入端直接連接至該等主服務(wù)器執(zhí)行存取數(shù)據(jù)動(dòng)作。而應(yīng)用于交易系統(tǒng)的數(shù)據(jù)庫特別著重于事務(wù)數(shù)據(jù)的一致性與正確性,并且為求實(shí)時(shí)更新數(shù)據(jù)內(nèi)容,因此對于數(shù)據(jù)的傳輸速度亦具有一定的要求,為了解決傳統(tǒng)交易(Transact1n)數(shù)據(jù)庫于數(shù)據(jù)量大量增長時(shí)擴(kuò)充機(jī)器以及數(shù)據(jù)異動(dòng)時(shí)的困難,因此目前市面出現(xiàn)運(yùn)用Key/Value概念來建立數(shù)據(jù)庫,如NoSQL (Not Only SQL)數(shù)據(jù)庫,藉此降低擴(kuò)充服務(wù)器節(jié)點(diǎn)的成本并可輕易將數(shù)據(jù)分散備份,以求解決上述問題。
[0004]然而,為了解決傳統(tǒng)事務(wù)數(shù)據(jù)庫數(shù)據(jù)訪問速度不夠快且擴(kuò)充困難的問題,雖后以Key/Value概念的數(shù)據(jù)庫取代傳統(tǒng)事務(wù)數(shù)據(jù)庫而有些微改善,但由于如上述數(shù)據(jù)庫類型,其核心功能尚未穩(wěn)定,因此若升級對應(yīng)的應(yīng)用程序編程接口(Applicat1n ProgrammingInterface, API),容易影響到整體運(yùn)行與數(shù)據(jù)儲(chǔ)存整合功能,且用戶于請求數(shù)據(jù)時(shí)仍須直接進(jìn)入數(shù)據(jù)庫檢索,并由硬件進(jìn)行相關(guān)處理,在數(shù)據(jù)傳輸與更改速度上仍未見顯著改善。再者,數(shù)據(jù)庫為了保持分布式的架構(gòu)以便于增設(shè)節(jié)點(diǎn),因此只于最終端保證數(shù)據(jù)會(huì)達(dá)到一致,而在數(shù)據(jù)庫內(nèi)的數(shù)據(jù)尚未同步存取更新的時(shí)間內(nèi),需要開發(fā)者或建立者自行處理數(shù)據(jù)沖突或遺失的問題,因此如上述所提及的交易系統(tǒng)因涉及金額等精確性數(shù)據(jù),容易產(chǎn)生數(shù)據(jù)遺失的風(fēng)險(xiǎn)。
[0005]故本發(fā)明人為了有效增強(qiáng)整體交易系統(tǒng)數(shù)據(jù)傳輸與存取的速度與精確度,構(gòu)思了一種具高傳輸性與正確性的數(shù)據(jù)快取方法,希冀可解決現(xiàn)有交易系統(tǒng)針對數(shù)據(jù)管理與存取的問題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的一目的在于提供一種具高傳輸性與正確性的數(shù)據(jù)快取方法,其可應(yīng)用于如證券交易等各式交易系統(tǒng),并通過快取單元達(dá)到快速存取與處理數(shù)據(jù)的功效,并可提升數(shù)據(jù)相互傳遞的速度,再者更可利用快取單元確保數(shù)據(jù)的正確性與一致性,藉此改善于實(shí)際使用時(shí)因數(shù)據(jù)錯(cuò)誤或傳遞過慢等因素而影響整體交易系統(tǒng)運(yùn)行。
[0007]為達(dá)上述目的,本發(fā)明提供的具高傳輸性與正確性的數(shù)據(jù)快取方法應(yīng)用于一金融交易系統(tǒng)如證券交易或是一般金額交易,藉此可有效縮短數(shù)據(jù)通過網(wǎng)絡(luò)傳輸?shù)臅r(shí)間并確保數(shù)據(jù)的一致性,該金融交易系統(tǒng)至少設(shè)有一使用端、一第一初階伺服端、一第二初階伺服端、一第一數(shù)據(jù)庫端及一第二數(shù)據(jù)庫端,該第一初階伺服端電性連接該使用端、該第二初階伺服端及該第一數(shù)據(jù)庫端,該第二初階伺服端電性連接該第二數(shù)據(jù)庫端,且該第一初階伺服端及該第二初階伺服端分別內(nèi)置有一第一快取單元及一第二快取單元,該第一快取單元及該第二快取單元由內(nèi)存所構(gòu)成,其包含下列步驟:當(dāng)該第一初階伺服端接收該使用端所發(fā)送的一交易指令而請求處理一數(shù)據(jù)時(shí),該第一快取單元利用該第一初階伺服端內(nèi)存的一第一比對清單比對該交易指令,該第一比對清單對應(yīng)該數(shù)據(jù)具有一提取碼用以確認(rèn)該數(shù)據(jù)位置,第一快取單元內(nèi)存有一第一數(shù)據(jù)清單,于該第一比對清單記錄該數(shù)據(jù)存于該第一初階伺服端時(shí)直接由該第一快取單元中的該第一數(shù)據(jù)清單輸出該數(shù)據(jù)或自該第一數(shù)據(jù)庫端擷取該數(shù)據(jù)后輸出予該使用端,其中,較佳者,交易指令包括證券買賣數(shù)量變更、證券交易額數(shù)量變更及金融交易額數(shù)量變更中的一種或多種;及當(dāng)該第一比對清單顯示該數(shù)據(jù)未存于該第一初階伺服端時(shí),該第二快取單元通過其內(nèi)存的一第二數(shù)據(jù)清單直接輸出該數(shù)據(jù)或自該第二數(shù)據(jù)庫端擷取該數(shù)據(jù)后反饋予該第一初階伺服端,以供該第一初階伺服端輸出予該使用端。
[0008]其中,該第一快取單元與該第二快取單元通過該第一數(shù)據(jù)清單與該第二數(shù)據(jù)清單比對該交易指令請求的該數(shù)據(jù)存在狀態(tài)。
[0009]當(dāng)該交易指令所請求的該數(shù)據(jù)完整儲(chǔ)存于該第一快取單元及該第二快取單元時(shí),該第一快取單元及該第二快取單元直接輸出對應(yīng)的該數(shù)據(jù);當(dāng)該交易指令所請求的該數(shù)據(jù)未完整儲(chǔ)存于該第一快取單元及該第二快取單元時(shí),該第一快取單元及該第二快取單元分別自該第一數(shù)據(jù)庫及該第二數(shù)據(jù)庫提取對應(yīng)的該數(shù)據(jù)。
[0010]其中,該使用者端為多個(gè),且當(dāng)該第一初階伺服端通過該第一快取單元接收該交易指令時(shí),輸出一確認(rèn)請求予該第二初階伺服端,以請求該第二快取單元確認(rèn)是否接收相同的該交易指令而欲處理相同的該數(shù)據(jù),且該第二快取單元確認(rèn)接收相同的該交易指令后輸出一確認(rèn)信號,使該第一初階伺服端匯整該等交易指令而同步處理該數(shù)據(jù),藉此可針對同一數(shù)據(jù)的多個(gè)請求進(jìn)行同步處理,減低數(shù)據(jù)產(chǎn)生錯(cuò)誤的幾率。
[0011]而為了確保數(shù)據(jù)的一致性,避免出現(xiàn)數(shù)據(jù)差異而影響該金融交易系統(tǒng)的運(yùn)行,該第二初階伺服端內(nèi)建立有一第二比對清單,且該第一初階伺服端及該第二初階伺服端周期性地同步更新該第一比對清單與該第二比對清單,且該第一數(shù)據(jù)庫端與該第二數(shù)據(jù)庫端并于一設(shè)定時(shí)間自動(dòng)通過該第一初階伺服端及該第二初階伺服端同步更新內(nèi)存的該數(shù)據(jù)。
[0012]其中,該金融交易系統(tǒng)設(shè)有一第三初階伺服端及一第四初階伺服端,該第三初階伺服端電性連接該第一初階伺服端、該第二初階伺服端及該第一數(shù)據(jù)庫端,該第四初階伺服端電性連接該第一初階伺服端、該第二初階伺服端、第三初階伺服端及該第二數(shù)據(jù)庫端,此外,該使用端為多個(gè),而該金融交易系統(tǒng)更可設(shè)有多個(gè)二階伺服端,供電性連接于該第一數(shù)據(jù)庫端及該第一初階伺服端與該第三初階伺服端、該第二數(shù)據(jù)庫端及該第二初階伺服端與該第四初階伺服端。藉此擴(kuò)展本發(fā)明的網(wǎng)絡(luò)架構(gòu),以更為快速且準(zhǔn)確地處理各項(xiàng)數(shù)據(jù)。
【附圖說明】
[0013]圖1為本發(fā)明較佳實(shí)施例的證卷交易系統(tǒng)架構(gòu)示意圖;
[0014]圖2為本發(fā)明較佳實(shí)施例的流程示意圖;
[0015]圖3為本發(fā)明較佳實(shí)施例的又一流程示意圖;
[0016]圖4為本發(fā)明另一較佳實(shí)施例的流程示意圖;
[0017]圖5為本發(fā)明另一較佳實(shí)施例的證卷交易系統(tǒng)架構(gòu)示意圖(一);
[0018]圖6為本發(fā)明另一較佳實(shí)施例的證卷交易系統(tǒng)架構(gòu)示意圖(二)。
[0019]附圖標(biāo)記說明:1_具高傳輸性與正確性的數(shù)據(jù)快取方法;S1?S12-步驟;2_金融交易系統(tǒng);20_使用端;21_第一初階伺服端;211_第一快取單元;2111_第一數(shù)據(jù)清單;212_第一比對清單;22_第二初階伺服端;221-第二快取單元;2211_第二數(shù)據(jù)清單;222-第二比對清單;23_第一數(shù)據(jù)庫端;24_第二數(shù)據(jù)庫端;25_第三初階伺服端;251_第三快取單元;2511_第三數(shù)據(jù)清單;252_第三比對清單;26_第四初階伺服端;261_第四快取單元;2611_第四數(shù)據(jù)清單;262_第四比對清單;27_ 二階伺服端。
【具體實(shí)施方式】
[0020]如圖1、圖2、圖3所示分別為本發(fā)明較佳實(shí)施例的證卷交易系統(tǒng)架構(gòu)示意圖、流程示意圖及又一流程示意圖。本發(fā)明提供的具高傳輸性與正確性的數(shù)據(jù)快取方法1可應(yīng)用于一金融交易系統(tǒng)2,如一般金額交易或證券交易,藉此有效縮短數(shù)據(jù)通過網(wǎng)絡(luò)傳輸?shù)臅r(shí)間并確保數(shù)據(jù)的一致性,于本實(shí)施例中,以該數(shù)據(jù)快取方法1應(yīng)用于證券交易為例說明,但本發(fā)明所應(yīng)用的范疇并不局限于此。該金融交易系統(tǒng)2至少設(shè)有一使用端20、一第一初階伺服端21、一第二初階伺服端22、一第一數(shù)據(jù)庫端23及一第二數(shù)據(jù)庫端24,該第一初階伺服端21電性連接該使用端20、該第二初階伺服端22及該第一數(shù)據(jù)庫端24,該第二初階伺服端22電性連接該第二數(shù)據(jù)庫端24,且該第一初階服務(wù)器端21及該第二初階伺服端22分別內(nèi)置有一第一快取單元211及一第二快取單元221,該第一快取單元211及該第二快取單元221由內(nèi)存所構(gòu)成,其包含下列步驟。
[0021 ] 首先,步驟S1,該第一初階伺服端21接收該使用端20發(fā)送的一交易指令而請求處理一數(shù)據(jù)時(shí),該第一快取單元211利用該第一初階伺服端21內(nèi)存的一第一比對清單212比對該交易指令。其中,該第一比對清單212對應(yīng)該交易指令請求的該數(shù)據(jù)具有一提取碼,且該交易指令包括證券買賣數(shù)量變更、證券交易額數(shù)量變更或是金融交易額數(shù)量變更其中的一種或多種。舉例說明,該交易指令可為投資人A委任一第一交易所下達(dá)股票賣單交易,如將投資人A原有的庫存股票數(shù)量賣出20張,此時(shí)該第一交易所即該使用端20發(fā)送該交易指令予該第一初階伺服端21。
[0022]接著,步驟S2,該第一快取單元211通過該第一比對清單212的該提取碼得知該數(shù)據(jù)的儲(chǔ)存位置,確認(rèn)是否位于該第一初階伺服端21,其中,該第一快取單元211內(nèi)存有一第一數(shù)據(jù)清單2111,且該第一快取單元211通過該第一數(shù)據(jù)清單2111比對該交易指令請求的該數(shù)據(jù)存在狀態(tài)。
[0023]若是,進(jìn)行步驟S3,該第一快取單元211直接輸出該數(shù)據(jù)或自該第一數(shù)據(jù)庫23端擷取該數(shù)據(jù)后輸出予該使用端20。舉例說明,意即該第一初階伺服端21接受將投資人A原有的庫存股票數(shù)量賣出20張的交易指令后,查閱投資人A原有的庫存股票數(shù)量,如為100張,則依該交易指令處理后使該投資人A庫存股票數(shù)量變更為80張,再將該數(shù)據(jù)輸出予該使用端20。
[0024]若否,且該第一比對清單212顯示該數(shù)據(jù)儲(chǔ)存于該第二伺服端22時(shí),進(jìn)行步驟S4,該第二初階伺服端22中的該第二快取單元221通過其內(nèi)存的一第二數(shù)據(jù)清單2211直接輸出該數(shù)據(jù)或自該第二數(shù)據(jù)庫端24擷取該數(shù)據(jù)后反饋予該第一初階伺服端21,以供該第一初階伺服端21輸出予該使用端20。其中該第二快取單元221通過該第二數(shù)據(jù)清單2211比對該交易指令請求的該數(shù)據(jù)存在狀態(tài),且該第二初階伺服端22建立有一第二比對清單222,該第二比對清單222并對應(yīng)該數(shù)據(jù)設(shè)有一提取碼,當(dāng)該使用端20為多個(gè)并與該第二初階伺服端22電性連接自該第二初階伺服端22下達(dá)該交易指令時(shí),可