文|楊波 鄧欣 王鑫章 蕭陽(yáng) 彭程 劉緒清
多源異構(gòu)數(shù)據(jù)庫(kù)之間的信息同步對(duì)實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)實(shí)時(shí)共享具有重要的意義,但是由于多源異構(gòu)數(shù)據(jù)庫(kù)信息量龐大,導(dǎo)致數(shù)據(jù)同步處理流程較長(zhǎng),數(shù)據(jù)整合度不高,多源異構(gòu)數(shù)據(jù)庫(kù)信息同步速度較慢,針對(duì)該問(wèn)題我們研究了基于多核CPU的多源異構(gòu)數(shù)據(jù)庫(kù)信息快速同步方法。以多核CPU并行執(zhí)行任務(wù)的模式為基礎(chǔ),控制處理數(shù)據(jù)的流程和時(shí)間。整合多源異構(gòu)數(shù)據(jù),設(shè)計(jì)快速同步觸發(fā)模塊,優(yōu)化信息同步速度,以此實(shí)現(xiàn)多源異構(gòu)數(shù)據(jù)庫(kù)信息快速同步。測(cè)試結(jié)果表明,此次研究的數(shù)據(jù)庫(kù)信息同步方法所用的平均時(shí)間與傳統(tǒng)同步方法相比縮短了7.33s,達(dá)到了本次研究的預(yù)期。
互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展及云平臺(tái)的普及為社會(huì)大眾的日常工作和生活帶來(lái)了一定的便利,與此同時(shí)大量的網(wǎng)絡(luò)用戶行為產(chǎn)生海量的信息,并且信息的形態(tài)和來(lái)源也日漸豐富,導(dǎo)致單一的數(shù)據(jù)模式已經(jīng)不足以全面精確地概括用戶特征。多源異構(gòu)數(shù)據(jù)庫(kù)的應(yīng)用,能夠使不同的信息應(yīng)用系統(tǒng)之間建立密切聯(lián)系,一定程度上緩解了因信息孤島問(wèn)題對(duì)互聯(lián)網(wǎng)數(shù)據(jù)處理系統(tǒng)造成的壓力。但由于多源異構(gòu)數(shù)據(jù)本身性質(zhì)差異較大且載體類型較為多樣,數(shù)據(jù)處理過(guò)程中融合難度較高,因此在進(jìn)行數(shù)據(jù)庫(kù)信息同步時(shí)速度較慢,整體效果不理想,很難在較短時(shí)間內(nèi)實(shí)現(xiàn)不同系統(tǒng)和設(shè)備間的數(shù)據(jù)移動(dòng)及共享。為了提高多源異構(gòu)數(shù)據(jù)庫(kù)信息同步的速度,業(yè)界學(xué)者及相關(guān)人員研究了不同類型的信息同步方法,但是其應(yīng)用效果均不理想。此次研究在現(xiàn)存的多源異構(gòu)數(shù)據(jù)庫(kù)信息同步方法的基礎(chǔ)上,針對(duì)傳統(tǒng)方法存在的問(wèn)題引入多核CPU的處理方法,以期進(jìn)一步提升多源異構(gòu)數(shù)據(jù)庫(kù)信息同步速度。
多核CPU,即多核處理器,通過(guò)在同一塊芯片中植入多個(gè)處理器實(shí)現(xiàn)數(shù)據(jù)處理系統(tǒng)的高度并行,以此提高處理數(shù)據(jù)的能力和速度。多核CPU的大致架構(gòu)如圖1所示。
圖1 多核CPU并行運(yùn)行架構(gòu)圖
從圖1中可以看出,在多核CPU的運(yùn)行過(guò)程中,多個(gè)數(shù)據(jù)處理核心之間具有并列執(zhí)行的關(guān)系,CPU先將接收到的任務(wù)指令進(jìn)行解析并向每個(gè)獨(dú)立的核心分配任務(wù),核心中的工作單元負(fù)責(zé)具體執(zhí)行,并反饋執(zhí)行結(jié)果。在此基礎(chǔ)上可以計(jì)算使用多核CPU并行處理數(shù)據(jù)與傳統(tǒng)的串行處理模式之間的加速比:
多源異構(gòu)數(shù)據(jù)庫(kù)擁有豐富的數(shù)據(jù)源,其數(shù)據(jù)結(jié)構(gòu)也包含數(shù)字、圖像、影像等多種形式。在對(duì)多源異構(gòu)數(shù)據(jù)庫(kù)信息進(jìn)行同步時(shí),龐大且雜亂的信息內(nèi)容極有可能成為降低信息同步速度的主要原因,因此在進(jìn)行信息同步操作之前,利用去噪算法對(duì)數(shù)據(jù)庫(kù)中的操作對(duì)象進(jìn)行整合,通過(guò)刪減噪聲數(shù)據(jù)精簡(jiǎn)需要同步的多源異構(gòu)數(shù)據(jù),從而加快信息同步的速度。利用聚類算法對(duì)數(shù)據(jù)對(duì)象進(jìn)行分類和篩選,具體方法如下式:
設(shè)計(jì)快速同步觸發(fā)模塊的核心是在數(shù)據(jù)庫(kù)中設(shè)置觸發(fā)器,當(dāng)觸發(fā)器接收到指令時(shí)會(huì)即刻根據(jù)指令內(nèi)容執(zhí)行操作,并將每一次執(zhí)行的操作指令的數(shù)據(jù)對(duì)象寫入觸發(fā)器中的日志表,當(dāng)多源異構(gòu)信息發(fā)生變動(dòng)時(shí),日志表也會(huì)觸發(fā)更改操作,避免同步信息中進(jìn)行更改指令的重復(fù)操作,以節(jié)省多源異構(gòu)數(shù)據(jù)庫(kù)信息同步所需的時(shí)間。觸發(fā)模塊的運(yùn)行流程如圖2所示。
圖2 快速同步觸發(fā)模塊運(yùn)行流程
本次研究目標(biāo)是加快觸發(fā)模塊運(yùn)行速度,在其運(yùn)行流程中加入對(duì)數(shù)據(jù)的定時(shí)處理程序,定期對(duì)日志表進(jìn)行掃描,刪除已經(jīng)完成同步的信息,減少因重復(fù)同步日志表中的信息內(nèi)容而浪費(fèi)的時(shí)間,進(jìn)而實(shí)現(xiàn)多源異構(gòu)數(shù)據(jù)庫(kù)信息的快速同步。
為測(cè)試此次本文所提出的多源異構(gòu)數(shù)據(jù)庫(kù)信息快速同步方法在實(shí)際應(yīng)用中的效果,選取某數(shù)據(jù)庫(kù)K作為實(shí)驗(yàn)對(duì)象,利用本次研究的信息同步方法對(duì)數(shù)據(jù)庫(kù)K中不同類型的信息進(jìn)行同步操作,對(duì)所用的時(shí)間進(jìn)行記錄,對(duì)照組為傳統(tǒng)同步方法所用時(shí)間,通過(guò)兩者對(duì)比判斷本文研究的多源異構(gòu)數(shù)據(jù)庫(kù)信息快速同步方法是否具有可行性。
本次實(shí)驗(yàn)將分別選取數(shù)據(jù)庫(kù)K中的字符數(shù)據(jù)及圖像數(shù)據(jù)進(jìn)行同步操作測(cè)試,以規(guī)避數(shù)據(jù)結(jié)構(gòu)類型不同對(duì)實(shí)驗(yàn)結(jié)果產(chǎn)生的影響。實(shí)驗(yàn)階段將對(duì)選取的多源異構(gòu)數(shù)據(jù)進(jìn)行十次同步測(cè)試,分別記錄實(shí)驗(yàn)組和對(duì)照組所用的時(shí)間,其具體結(jié)果如表1所示。
表1 數(shù)據(jù)庫(kù)信息快速同步測(cè)試結(jié)果
觀察表1中的實(shí)驗(yàn)數(shù)據(jù)可以發(fā)現(xiàn),對(duì)于字符數(shù)據(jù)的同步,實(shí)驗(yàn)組所用時(shí)間均少于9s,對(duì)照組時(shí)間均大于10s;對(duì)圖像數(shù)據(jù)進(jìn)行信息同步時(shí),實(shí)驗(yàn)組所用時(shí)間均不超過(guò)11s,對(duì)照組時(shí)間均超過(guò)17s。通過(guò)計(jì)算得出,在對(duì)多源異構(gòu)數(shù)據(jù)庫(kù)K進(jìn)行信息同步實(shí)驗(yàn)測(cè)試中,實(shí)驗(yàn)組所用的平均時(shí)間為8.8s,對(duì)照組所用的平均時(shí)間為16.13s,實(shí)驗(yàn)組的平均同步時(shí)間較對(duì)照組縮短了7.33s,證明本次研究方法的有效性。
本次研究在明確傳統(tǒng)信息同步方法現(xiàn)存問(wèn)題的基礎(chǔ)上,有針對(duì)性地引入多核CPU并行處理數(shù)據(jù)的技術(shù)和模式,為多源異構(gòu)數(shù)據(jù)庫(kù)信息快速同步提供了新的可行方法和途徑。然而,對(duì)多源異構(gòu)數(shù)據(jù)進(jìn)行整合主要依靠去噪處理過(guò)程與觸發(fā)模塊,因其數(shù)據(jù)差異性較大,此過(guò)程容易出現(xiàn)誤差,從而對(duì)數(shù)據(jù)庫(kù)信息同步的準(zhǔn)確性產(chǎn)生負(fù)面影響。今后可以優(yōu)化去噪處理過(guò)程與觸發(fā)模塊,對(duì)多源異構(gòu)數(shù)據(jù)進(jìn)行更為精確的分類和整合,確保其過(guò)程準(zhǔn)確性的同時(shí),進(jìn)一步加快多源異構(gòu)數(shù)據(jù)庫(kù)信息同步的速度。