本申請(qǐng)涉及數(shù)據(jù)庫(kù)領(lǐng)域,尤其涉及一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理系統(tǒng)、方法及裝置。
背景技術(shù):
隨著大數(shù)據(jù)時(shí)代的來(lái)臨,大數(shù)據(jù)分析應(yīng)運(yùn)而生,大數(shù)據(jù)分析被廣泛應(yīng)用于通信行業(yè)的基礎(chǔ)設(shè)施建設(shè)優(yōu)化、網(wǎng)絡(luò)運(yùn)營(yíng)管理和優(yōu)化、市場(chǎng)精準(zhǔn)營(yíng)銷(xiāo)以及客戶管理等方面。而作為大數(shù)據(jù)分析基礎(chǔ)的數(shù)據(jù)庫(kù)技術(shù),也因此被廣泛使用。
現(xiàn)有的數(shù)據(jù)庫(kù)包括三種:oldsql數(shù)據(jù)庫(kù)、nosql數(shù)據(jù)庫(kù)以及newsql數(shù)據(jù)庫(kù)。其中,每種數(shù)據(jù)庫(kù)用于存儲(chǔ)不同類(lèi)型的數(shù)據(jù)。具體的,oldsql數(shù)據(jù)庫(kù)適用于處理結(jié)構(gòu)化的數(shù)據(jù),具有很好的數(shù)據(jù)庫(kù)acid特性;nosql數(shù)據(jù)庫(kù)適用于處理非結(jié)構(gòu)化及價(jià)值密度低的數(shù)據(jù);newsql數(shù)據(jù)庫(kù)適用于處理結(jié)構(gòu)化以及價(jià)值密度高的數(shù)據(jù),還適用于處理大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)。
但是,現(xiàn)有的大數(shù)據(jù)分析數(shù)據(jù)庫(kù)架構(gòu)大多是使用某一種單一的數(shù)據(jù)庫(kù)架構(gòu),或者使用某一種特定的數(shù)據(jù)庫(kù),從而僅能支持某種特定類(lèi)型的數(shù)據(jù)的存儲(chǔ)和分析,同時(shí),由于現(xiàn)有的數(shù)據(jù)具有數(shù)據(jù)量大、增長(zhǎng)速度快、數(shù)據(jù)類(lèi)型多樣以及價(jià)值密度稀疏的特點(diǎn)。因此,現(xiàn)有的數(shù)據(jù)庫(kù)架構(gòu)無(wú)法滿足現(xiàn)有大數(shù)據(jù)的存儲(chǔ)與分析需求。例如,oldsql數(shù)據(jù)庫(kù)不支持非結(jié)構(gòu)化的數(shù)據(jù),在數(shù)據(jù)處理性能方面存在局限性;nosql數(shù)據(jù)庫(kù)不支持結(jié)構(gòu)化數(shù)據(jù),價(jià)值密度高的數(shù)據(jù),且事務(wù)性應(yīng)用差,即nosql數(shù)據(jù)庫(kù)在分析數(shù)據(jù)時(shí),若該數(shù)據(jù)被調(diào)取查詢時(shí),則會(huì)導(dǎo)致數(shù)據(jù)庫(kù)對(duì)該數(shù)據(jù)進(jìn)行錯(cuò)誤分析,得到錯(cuò)誤的分析結(jié)果;newsql數(shù)據(jù)庫(kù)不支持非結(jié)構(gòu)化數(shù)據(jù),且在數(shù)據(jù)存儲(chǔ)和擴(kuò)展方面成本高。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)?zhí)峁┑膶?shí)施例提供一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理系統(tǒng)、方法及裝置,用以解決現(xiàn)有的數(shù)據(jù)庫(kù)架構(gòu)無(wú)法滿足現(xiàn)有大數(shù)據(jù)的存儲(chǔ)與分析需求的問(wèn)題。
為達(dá)到上述目的,本申請(qǐng)的實(shí)施例采用如下技術(shù)方案:
第一方面,提供一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理系統(tǒng),包括:數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置、至少一個(gè)第一數(shù)據(jù)庫(kù)和每個(gè)第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群、以及至少一個(gè)第二數(shù)據(jù)庫(kù)及每個(gè)第二數(shù)據(jù)庫(kù)對(duì)應(yīng)的第二服務(wù)器集群,其中:
所述數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置,與所述第一服務(wù)器集群互聯(lián),用于獲取至少一個(gè)數(shù)據(jù),將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一服務(wù)器集群中;
所述第一服務(wù)器集群,用于對(duì)其存儲(chǔ)的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,得到第一數(shù)據(jù)分析結(jié)果;
所述第二服務(wù)器集群,與所述第一服務(wù)器集群互聯(lián),用于存儲(chǔ)所述第一數(shù)據(jù)分析結(jié)果。
可選的,所述至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù);
所述數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置,還用于判定所述至少一個(gè)數(shù)據(jù)中每個(gè)數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù);
所述數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)的第一服務(wù)器集群中時(shí),具體用于:
將所述至少一個(gè)數(shù)據(jù)中不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析,并將所述至少一個(gè)數(shù)據(jù)中存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
可選的,所述至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù);
所述數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)的第一服務(wù)器集群中時(shí),具體用于:將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中;
所述第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群,還用于判定其存儲(chǔ)的數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù),并將其存儲(chǔ)的存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)同步至所述第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
可選的,所述數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一服務(wù)器集群中時(shí),具體用于:
確定第一數(shù)據(jù)的價(jià)值密度情況和所述第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu);
從所述至少一個(gè)第一數(shù)據(jù)庫(kù)中,確定出與所述第一數(shù)據(jù)的價(jià)值密度情況相匹配且支持所述第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu)的目標(biāo)第一數(shù)據(jù)庫(kù);
將所述第一數(shù)據(jù)存儲(chǔ)至所述目標(biāo)第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中;
其中,所述第一數(shù)據(jù)為所述至少一個(gè)數(shù)據(jù)中的其中一個(gè)。
第二方面,提供一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法,應(yīng)用于第一方面提供的系統(tǒng),包括:
數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置獲取至少一個(gè)數(shù)據(jù),將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中,以便所述第一服務(wù)集群對(duì)其存儲(chǔ)的數(shù)據(jù)分析,得到第一數(shù)據(jù)分析結(jié)果,并將所述第一數(shù)據(jù)分析結(jié)果存儲(chǔ)至第二數(shù)據(jù)庫(kù)的第二服務(wù)器集群中。
可選的,所述至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù);
所述將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中之前,還包括:
判定所述至少一個(gè)數(shù)據(jù)中每個(gè)數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù);
所述在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)的第一服務(wù)器集群中,包括:
將所述至少一個(gè)數(shù)據(jù)中不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析,并將所述至少一個(gè)數(shù)據(jù)中存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
可選的,所述至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù);
所述在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)的第一服務(wù)器集群中,包括:
將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中,以便所述第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群判定其存儲(chǔ)的數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù),并將其存儲(chǔ)的存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)同步至所述第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
可選的,所述數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一服務(wù)器集群中,包括:
確定第一數(shù)據(jù)的價(jià)值密度情況和所述第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu);
從所述至少一個(gè)第一數(shù)據(jù)庫(kù)中,確定出與所述第一數(shù)據(jù)的價(jià)值密度情況相匹配且支持所述第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu)的目標(biāo)第一數(shù)據(jù)庫(kù);
將所述第一數(shù)據(jù)存儲(chǔ)至所述目標(biāo)第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中;
其中,所述第一數(shù)據(jù)為所述至少一個(gè)數(shù)據(jù)中的其中一個(gè)。
第三方面,提供一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置,包括:
獲取模塊,用于獲取至少一個(gè)數(shù)據(jù);
處理模塊,用于將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中,以便所述第一服務(wù)集群對(duì)其存儲(chǔ)的數(shù)據(jù)分析得到第一數(shù)據(jù)分析結(jié)果,并將所述第一數(shù)據(jù)分析結(jié)果存儲(chǔ)至第二數(shù)據(jù)庫(kù)的第二服務(wù)器集群中。
可選的,所述至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù);
所述處理模塊,還用于判定所述至少一個(gè)數(shù)據(jù)中每個(gè)數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù);
所述處理模塊在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)的第一服務(wù)器集群中時(shí),具體用于:
將所述至少一個(gè)數(shù)據(jù)中不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析,并將所述至少一個(gè)數(shù)據(jù)中存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第二類(lèi)數(shù)據(jù)庫(kù)的第二服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
可選的,所述至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù);
所述處理模塊在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)的第一服務(wù)器集群中時(shí),具體用于:
將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中,以便所述第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群判定其存儲(chǔ)的數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù),并將其存儲(chǔ)的存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)同步至所述第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
可選的,所述處理模塊在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一服務(wù)器集群中時(shí),具體用于:
確定第一數(shù)據(jù)的價(jià)值密度情況和所述第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu);
從所述至少一個(gè)第一數(shù)據(jù)庫(kù)中,確定出與所述第一數(shù)據(jù)的價(jià)值密度情況相匹配且支持所述第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu)的目標(biāo)第一數(shù)據(jù)庫(kù);
將所述第一數(shù)據(jù)存儲(chǔ)至所述目標(biāo)第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中;
其中,所述第一數(shù)據(jù)為所述至少一個(gè)數(shù)據(jù)中的其中一個(gè)。
本申請(qǐng)?zhí)峁┑姆桨?,通過(guò)將多種數(shù)據(jù)庫(kù)進(jìn)行聯(lián)合部署,數(shù)據(jù)與數(shù)據(jù)分析結(jié)果存儲(chǔ)至不同的數(shù)據(jù)庫(kù),以便數(shù)據(jù)分析結(jié)果再被調(diào)取查詢時(shí),不會(huì)對(duì)數(shù)據(jù)分析過(guò)程產(chǎn)生影響,具體的,本申請(qǐng)根據(jù)數(shù)據(jù)的數(shù)據(jù)類(lèi)型將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中,以便第一服務(wù)集群對(duì)其存儲(chǔ)的數(shù)據(jù)分析得到第一數(shù)據(jù)分析結(jié)果,并將第一數(shù)據(jù)分析結(jié)果存儲(chǔ)至第二數(shù)據(jù)庫(kù)的第二服務(wù)器集群中。這樣通過(guò)對(duì)多種數(shù)據(jù)庫(kù)進(jìn)行聯(lián)合部署,形成互補(bǔ),消除自身的局限,從而滿足對(duì)現(xiàn)有的具有數(shù)據(jù)量大、增長(zhǎng)速度快、數(shù)據(jù)類(lèi)型多樣與價(jià)值密度稀疏特點(diǎn)的數(shù)據(jù)進(jìn)行合理的存儲(chǔ)與分析。
附圖說(shuō)明
為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本申請(qǐng)實(shí)施例提供的一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理系統(tǒng)的系統(tǒng)架構(gòu)圖;
圖2為本申請(qǐng)實(shí)施例提供的另一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理系統(tǒng)的系統(tǒng)架構(gòu)圖;
圖3為本申請(qǐng)實(shí)施例提供的一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法的方法流程圖;
圖4為本申請(qǐng)實(shí)施例提供的另一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法的方法流程圖;
圖5為本申請(qǐng)實(shí)施例提供的一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行描述。
本申請(qǐng)中,“示例性的”或者“例如”等詞用于表示作例子、例證或說(shuō)明。本申請(qǐng)實(shí)施例中被描述為“示例性的”或者“例如”的任何實(shí)施例或設(shè)計(jì)方案不應(yīng)被解釋為比其它實(shí)施例或設(shè)計(jì)方案更優(yōu)選或更具優(yōu)勢(shì)。確切而言,使用“示例性的”或者“例如”等詞旨在以具體方式呈現(xiàn)相關(guān)概念。本申請(qǐng)中,“的(英文:of)”,“相應(yīng)的(英文:corresponding,relevant)”和“對(duì)應(yīng)的(英文:corresponding)”有時(shí)可以混用,應(yīng)當(dāng)指出的是,在不強(qiáng)調(diào)其區(qū)別時(shí),其所要表達(dá)的含義是一致的。
圖1為本申請(qǐng)實(shí)施例提供的數(shù)據(jù)庫(kù)數(shù)據(jù)管理系統(tǒng)的系統(tǒng)架構(gòu)圖,如圖1所示,該系統(tǒng)包括:數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置11、至少一個(gè)第一數(shù)據(jù)庫(kù)12和每個(gè)第一數(shù)據(jù)庫(kù)12對(duì)應(yīng)的第一服務(wù)器集群13、以及至少一個(gè)第二數(shù)據(jù)庫(kù)14及每個(gè)第二數(shù)據(jù)庫(kù)14對(duì)應(yīng)的第二服務(wù)器集群15,其中:
數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置11,與第一服務(wù)器集群互聯(lián),用于獲取至少一個(gè)數(shù)據(jù),將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一服務(wù)器集群13中。
第一服務(wù)器集群13,用于對(duì)其存儲(chǔ)的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,得到第一數(shù)據(jù)分析結(jié)果。
第二服務(wù)器集群15,與第一服務(wù)器集群13互聯(lián),用于存儲(chǔ)第一數(shù)據(jù)分析結(jié)果。
其中,上述數(shù)據(jù)的數(shù)據(jù)類(lèi)型包括但不限于:數(shù)據(jù)價(jià)值密度情況和數(shù)據(jù)的數(shù)據(jù)源結(jié)構(gòu)。示例性的,通信行業(yè)大數(shù)據(jù)分析涉及到的數(shù)據(jù)源主要包括:b側(cè)用戶消費(fèi)賬單、語(yǔ)音通話詳單、數(shù)據(jù)業(yè)務(wù)詳單等數(shù)據(jù);無(wú)線網(wǎng)絡(luò)性能相關(guān)的關(guān)鍵性能指標(biāo)(英文:keyperformanceindicator,縮寫(xiě):kpi)、測(cè)量報(bào)告(英文:measurementreport,縮寫(xiě)mr)、路測(cè)等數(shù)據(jù);基礎(chǔ)工參的基站、網(wǎng)格、扇區(qū)、小區(qū)、鐵塔、交通干線等數(shù)據(jù);核心網(wǎng)側(cè)用戶上網(wǎng)業(yè)務(wù)相關(guān)的gn、iu-ps、cdr、dpi等數(shù)據(jù);網(wǎng)元設(shè)備產(chǎn)生的信令、日志等數(shù)據(jù)。示例性的,本申請(qǐng)需要管理和存儲(chǔ)的數(shù)據(jù)來(lái)源包括:計(jì)費(fèi)系統(tǒng)、設(shè)備網(wǎng)管系統(tǒng)、掛表采集傳輸、網(wǎng)絡(luò)優(yōu)化系統(tǒng)等。
例如,目前通用的數(shù)據(jù)庫(kù)包括:newsql數(shù)據(jù)庫(kù)、oldsql數(shù)據(jù)庫(kù)和nosql數(shù)據(jù)庫(kù)。其中,newsql數(shù)據(jù)庫(kù),通常使用vertica集群架構(gòu),數(shù)據(jù)存儲(chǔ)擴(kuò)展成本較高,不支持非結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù),適用于高價(jià)值密度的數(shù)據(jù),具有大數(shù)據(jù)分析性能;oldsql數(shù)據(jù)庫(kù),通常使用oracle\mysql集群架構(gòu),不支持非結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù),適用于低價(jià)值密度的數(shù)據(jù),存在很大的局限性,且在大數(shù)據(jù)復(fù)雜分析方面存在很大的不足;nosql數(shù)據(jù)庫(kù),通常使用hadoop集群架構(gòu),不支持結(jié)構(gòu)化數(shù)據(jù),適用于低價(jià)值密度的數(shù)據(jù)。
其中,上述的hadoop集群架構(gòu)的分布式文件系統(tǒng)hdfs有高容錯(cuò)性和高吞吐量的特點(diǎn),適合那些有著超大數(shù)據(jù)集的應(yīng)用場(chǎng)景,為海量數(shù)據(jù)提供了存儲(chǔ);底層提供的mapreduce采用分而治之的思想將數(shù)據(jù)處理任務(wù)分布至各個(gè)節(jié)點(diǎn)上進(jìn)行,并提供了hive、impala等查詢引擎進(jìn)行復(fù)雜的數(shù)據(jù)分析操作;同時(shí),hadoop集群架構(gòu)具有可靠、高效、高擴(kuò)展等優(yōu)點(diǎn)。
vertica集群架構(gòu)是一種分布式mpp列式數(shù)據(jù)庫(kù),可以分布式運(yùn)行在多臺(tái)服務(wù)器上,提供高性能的分析處理能力。其中,列式存儲(chǔ)和計(jì)算,適用于按列的高速查詢,比行式存儲(chǔ)的數(shù)據(jù)庫(kù)有了很大的提升。vertica集群提供標(biāo)準(zhǔn)化的接口和靈活的部署方式,可以方便的與hadoop集群集成;vertica可以根據(jù)用戶查詢特性優(yōu)化存儲(chǔ)結(jié)構(gòu)和查詢算法進(jìn)一步提升查詢性能,更加適用于復(fù)雜分析和即席查詢等應(yīng)用場(chǎng)景。
在具體現(xiàn)實(shí)時(shí),本申請(qǐng)可以將nosql數(shù)據(jù)庫(kù)和newsql數(shù)據(jù)庫(kù)作為第一數(shù)據(jù)庫(kù),將oldsql數(shù)據(jù)庫(kù)作為第二數(shù)據(jù)庫(kù)。之所以將分析結(jié)果存儲(chǔ)至oldsql數(shù)據(jù)庫(kù),是由于傳統(tǒng)的oldsql數(shù)據(jù)庫(kù)為小型的關(guān)系型數(shù)據(jù)庫(kù),適合作為web應(yīng)用的底層數(shù)據(jù)庫(kù),且部署簡(jiǎn)單、速度快、總體擁有成本低。
可選的,本申請(qǐng)中的至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù)。在具體實(shí)現(xiàn)時(shí),由于現(xiàn)有的newsql數(shù)據(jù)庫(kù)具備大數(shù)據(jù)分析性能,且存儲(chǔ)和擴(kuò)展成本較高,因此,本申請(qǐng)可以將newsql數(shù)據(jù)庫(kù)作為第二類(lèi)數(shù)據(jù)庫(kù),將nosql數(shù)據(jù)庫(kù)作為第一類(lèi)數(shù)據(jù)庫(kù)。
基于此,在一種示例中,若第一數(shù)據(jù)庫(kù)中的第一類(lèi)數(shù)據(jù)庫(kù)和第二類(lèi)數(shù)據(jù)庫(kù)均可進(jìn)行數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)分析時(shí),則:
數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置11,還用于判定至少一個(gè)數(shù)據(jù)中每個(gè)數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù)。
數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置11在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)12的第一服務(wù)器集群13中時(shí),具體用于:
將至少一個(gè)數(shù)據(jù)中不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群13中進(jìn)行數(shù)據(jù)分析,并將至少一個(gè)數(shù)據(jù)中存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群15中進(jìn)行數(shù)據(jù)分析。
在另一種實(shí)例中,若第一數(shù)據(jù)庫(kù)中第二類(lèi)數(shù)據(jù)庫(kù)僅對(duì)存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析時(shí),則:
數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一數(shù)據(jù)庫(kù)的第一服務(wù)器集群中時(shí),具體用于:將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中。
第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群13,還用于判定其存儲(chǔ)的數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù),并將其存儲(chǔ)的存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)同步至第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群14中進(jìn)行數(shù)據(jù)分析。
在具體實(shí)現(xiàn)時(shí),若第一數(shù)據(jù)庫(kù)以newsql數(shù)據(jù)庫(kù)和nosql數(shù)據(jù)庫(kù)為例,第二數(shù)據(jù)庫(kù)以oldsql數(shù)據(jù)庫(kù)為例。由于newsql數(shù)據(jù)庫(kù)的vertica集群專(zhuān)門(mén)處理大規(guī)模的復(fù)雜任務(wù),因此,這里將newsql數(shù)據(jù)庫(kù)作為第二類(lèi)數(shù)據(jù)庫(kù),nosql數(shù)據(jù)庫(kù)作為第一類(lèi)數(shù)據(jù)庫(kù)。具體的,若存儲(chǔ)在nosql數(shù)據(jù)庫(kù)的hadoop集群的數(shù)據(jù)有大規(guī)模處理不了的復(fù)雜分析任務(wù),則需要同步至newsql數(shù)據(jù)庫(kù)的vertica集群中處理。即當(dāng)nosql數(shù)據(jù)庫(kù)的hadoop集群的impala內(nèi)存受限無(wú)法完成分析的任務(wù),或impala分析的性能滿足不了分析需求(比如分析個(gè)任務(wù)花了1天)時(shí),則將需要分析的數(shù)據(jù)同步至newsql數(shù)據(jù)庫(kù)的vertica集群,以提高分析處理效率。同時(shí),由于vertica集群的存儲(chǔ)成本高,因此,hadoop集群在將需要分析的數(shù)據(jù)同步至vertica集群之前,會(huì)使用其中的impala對(duì)這些數(shù)據(jù)進(jìn)行預(yù)處理(例如聚合、分組、預(yù)計(jì)算等手段),以縮小數(shù)據(jù)大小,減少newsql數(shù)據(jù)庫(kù)的存儲(chǔ)成本。當(dāng)然,若不考慮該問(wèn)題,則可以將存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)直接存儲(chǔ)至newsql數(shù)據(jù)庫(kù)的vertica集群中,進(jìn)行數(shù)據(jù)分析。
在一種示例中,數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置11在將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一服務(wù)器集群中時(shí),具體用于:
確定第一數(shù)據(jù)的價(jià)值密度情況和第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu);
從至少一個(gè)第一數(shù)據(jù)庫(kù)12中,確定出與第一數(shù)據(jù)的價(jià)值密度情況相匹配且支持第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu)的目標(biāo)第一數(shù)據(jù)庫(kù);
將第一數(shù)據(jù)存儲(chǔ)至目標(biāo)第一數(shù)據(jù)庫(kù)12對(duì)應(yīng)的第一服務(wù)器集群13中;
其中,第一數(shù)據(jù)為至少一個(gè)數(shù)據(jù)中的其中一個(gè)。
為了方便說(shuō)明,本實(shí)施例以oldsql數(shù)據(jù)庫(kù)、nosql數(shù)據(jù)庫(kù)以及newsql數(shù)據(jù)庫(kù)這三種數(shù)據(jù)庫(kù)來(lái)進(jìn)行說(shuō)明,圖2為對(duì)應(yīng)的數(shù)據(jù)庫(kù)數(shù)據(jù)管理系統(tǒng)的系統(tǒng)架構(gòu)圖,具體的,數(shù)據(jù)引入層和數(shù)據(jù)存儲(chǔ)分析層將使用hadoop+vertica混合數(shù)據(jù)庫(kù)的方式進(jìn)行部署;而分析結(jié)果存儲(chǔ)層采用分布式mysql和oraclerac兩套o(hù)ldsql數(shù)據(jù)庫(kù)混合的方式進(jìn)行部署以滿足不同種類(lèi)的上層應(yīng)用的展示。
參照?qǐng)D2,由圖2可知,該系統(tǒng)架構(gòu)由四層組成,由下至上依次包括:數(shù)據(jù)源引入層、數(shù)據(jù)存儲(chǔ)分析層、分析結(jié)果存儲(chǔ)層以及應(yīng)用展示層,其中:
1、數(shù)據(jù)引入層
數(shù)據(jù)引入層,首先會(huì)對(duì)本申請(qǐng)需要分析和存儲(chǔ)的異構(gòu)多源的數(shù)據(jù)建立相應(yīng)的傳輸通道,消除數(shù)據(jù)噪聲、冗余和不一致性,然后,針對(duì)原始數(shù)據(jù)進(jìn)行提取,剔除冗余數(shù)據(jù),提高數(shù)據(jù)質(zhì)量,降低數(shù)據(jù)的傳輸和存儲(chǔ)壓力,之后會(huì)對(duì)預(yù)處理的數(shù)據(jù)進(jìn)行解析,完成數(shù)據(jù)的轉(zhuǎn)換和清洗工作,實(shí)現(xiàn)數(shù)據(jù)的規(guī)范化統(tǒng)一,最后將規(guī)范化的數(shù)據(jù)進(jìn)行加載入庫(kù)。
數(shù)據(jù)引入層將數(shù)據(jù)源分為兩大類(lèi)型:具有較低價(jià)值密度、非結(jié)構(gòu)化和半結(jié)構(gòu)化的海量數(shù)據(jù);具有較高價(jià)值密度、結(jié)構(gòu)化、復(fù)雜分析任務(wù)的數(shù)據(jù)。數(shù)據(jù)引入層將獲取到的無(wú)線側(cè)、基礎(chǔ)工參、gn、iu-ps、信令等低價(jià)值密度或者非結(jié)構(gòu)化數(shù)據(jù),利用hadoop集群中hive組件對(duì)于數(shù)據(jù)提取、轉(zhuǎn)化和加載方面的優(yōu)勢(shì),將數(shù)據(jù)寫(xiě)入hadoop底層的hdfs存儲(chǔ)中,而b側(cè)賬單、詳單、cdr等高價(jià)值密度的結(jié)構(gòu)化數(shù)據(jù),以及需要使用復(fù)雜算法進(jìn)行深度挖掘和分析的數(shù)據(jù)直接通過(guò)編寫(xiě)c++程序完成etl操作,將數(shù)據(jù)分布式存儲(chǔ)到vertica集群各個(gè)服務(wù)器節(jié)點(diǎn)中;另外,hadoop集群和vertica集群支持雙向數(shù)據(jù)同步,支持對(duì)hadoop集群存儲(chǔ)的數(shù)據(jù)價(jià)值提純后同步至vertica進(jìn)行進(jìn)一步的分析,vertica得出的分析結(jié)果也可以同步至hadoop集群用于后續(xù)的關(guān)聯(lián)查詢。即hadoop集群處理不了的存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)經(jīng)過(guò)預(yù)處理后同步至vertica集群處理,而vertica集群得出的分析結(jié)果有可能是hadoop集群中需要有后續(xù)關(guān)聯(lián)查詢的,所以需要對(duì)分析后的結(jié)果進(jìn)行同步。因此可以將vertica集群中存儲(chǔ)的歷史數(shù)據(jù)或者是冷數(shù)據(jù)同步到hadoop集群中進(jìn)行持久化存儲(chǔ),這樣vertica集群中的這些數(shù)據(jù)就可以刪除,騰出空間存儲(chǔ)最新的熱數(shù)據(jù)。
2、數(shù)據(jù)存儲(chǔ)分析層
數(shù)據(jù)源經(jīng)過(guò)規(guī)范化后分別存儲(chǔ)在hadoop集群和vertica集群中,并根據(jù)存儲(chǔ)的數(shù)據(jù)完成相應(yīng)的分析任務(wù)。
hadoop集群中hive、impala和hbase都可以直接對(duì)存儲(chǔ)在hdfs中的數(shù)據(jù)進(jìn)行處理,其中hive是hadoop集群上的數(shù)據(jù)倉(cāng)庫(kù),擅長(zhǎng)進(jìn)行海量批處理查詢;impala是基于內(nèi)存的實(shí)時(shí)交互式mpp查詢引擎,能夠低延遲的查詢pb級(jí)數(shù)據(jù);hbase則是構(gòu)建在hadoop之上的分布式面向列存儲(chǔ)的數(shù)據(jù)庫(kù)系統(tǒng)。
現(xiàn)有的hadoop集群中的hive、impala和hbase在hadoop集群中,都使用hdfs作為底層的存儲(chǔ),并通過(guò)yarn負(fù)責(zé)各組件之間的資源調(diào)度,同時(shí),使用zookeeper來(lái)維護(hù)和同步配置數(shù)據(jù)的集中服務(wù),為集群提供穩(wěn)定的服務(wù),并且負(fù)責(zé)hbase的元數(shù)據(jù)管理,impala使用hive的元數(shù)據(jù)管理組件,但impala在計(jì)算時(shí)不需要調(diào)用mapreduce框架,而是運(yùn)算在內(nèi)存中的mpp查詢引擎,因此速度比hive快很多。
對(duì)于海量數(shù)據(jù)的復(fù)雜分析任務(wù),impala負(fù)責(zé)數(shù)據(jù)的預(yù)處理和預(yù)統(tǒng)計(jì),將處理過(guò)的數(shù)據(jù)同步至vertica集群進(jìn)行進(jìn)一步的復(fù)雜分析。另外,由于hadoop集群的存儲(chǔ)成本要比vertica集群小,且提供強(qiáng)大的冗余備份機(jī)制,因此vertica集群生成的價(jià)值數(shù)據(jù)將同步至hadoop集群中進(jìn)行持久化存儲(chǔ)。
數(shù)據(jù)存儲(chǔ)分析層的分任務(wù)的協(xié)調(diào)和調(diào)度由專(zhuān)門(mén)的任務(wù)調(diào)度服務(wù)器處理,根據(jù)定義好的任務(wù)處理周期,檢查任務(wù)處理基礎(chǔ)條件和依賴關(guān)系,實(shí)現(xiàn)分析任務(wù)的并發(fā)執(zhí)行和任務(wù)進(jìn)度的控制。
3、分析結(jié)果存儲(chǔ)層
由于oldsql數(shù)據(jù)庫(kù)的mysql和oraclerac這兩套數(shù)據(jù)庫(kù)間存在同步機(jī)制,實(shí)現(xiàn)結(jié)果的冗余備份。mysql是一個(gè)小型的關(guān)系型數(shù)據(jù)庫(kù),適合作為web應(yīng)用的底層數(shù)據(jù)庫(kù),且部署簡(jiǎn)單、速度快、總體擁有成本低;oracle的引入則是由于它可移植性好、使用廣泛且功能強(qiáng)大,大數(shù)據(jù)時(shí)代之前大部分?jǐn)?shù)據(jù)分析使用的都是oracle數(shù)據(jù)庫(kù),因此數(shù)據(jù)同步機(jī)制實(shí)現(xiàn)簡(jiǎn)單且成熟。
數(shù)據(jù)存儲(chǔ)分析層生成的分析結(jié)果,通過(guò)以sqoop、goldengate等數(shù)據(jù)庫(kù)同步技術(shù),以數(shù)據(jù)庫(kù)表的形式高效的同步至分析結(jié)果存儲(chǔ)層。將上層應(yīng)用訪問(wèn)到的結(jié)果表與數(shù)據(jù)分析層分離,分析任務(wù)的調(diào)度不影響上層應(yīng)用的展示,保證系統(tǒng)的高可用性。通過(guò)建立單獨(dú)的分析結(jié)果存儲(chǔ)數(shù)據(jù)庫(kù),實(shí)現(xiàn)hadoop集群所不具備的關(guān)系型數(shù)據(jù)庫(kù)的acid特性(原子性、一致性、隔離性和持久性)。結(jié)果庫(kù)中的結(jié)果表支持增量擴(kuò)展,可以通過(guò)分區(qū)存儲(chǔ)等方式匯總周期性的結(jié)果表至匯總表。
部署配套的同步任務(wù)調(diào)度服務(wù)器,周期性的掃描分析結(jié)果存儲(chǔ)層生成的結(jié)果表,將最新的結(jié)果表同步至分析結(jié)果存儲(chǔ)層,保證結(jié)果表在多個(gè)數(shù)據(jù)庫(kù)之間的一致性,并生成相應(yīng)的同步日志,便于對(duì)任務(wù)進(jìn)行監(jiān)控和管理。
4、應(yīng)用展示層
應(yīng)用展示層基于分析結(jié)果存儲(chǔ)層存儲(chǔ)的各種結(jié)果表進(jìn)行上層應(yīng)用的開(kāi)發(fā)和展示,提供web應(yīng)用、gis應(yīng)用、app、數(shù)據(jù)集市等多種形式的大數(shù)據(jù)服務(wù),用于指導(dǎo)通信行業(yè)的基礎(chǔ)設(shè)施建設(shè)優(yōu)化、網(wǎng)絡(luò)運(yùn)營(yíng)管理和優(yōu)化、市場(chǎng)精準(zhǔn)營(yíng)銷(xiāo)、客戶關(guān)系管理等,實(shí)現(xiàn)大數(shù)據(jù)價(jià)值的變現(xiàn)。
下面說(shuō)明本申請(qǐng)實(shí)施例提供的與上文所提供的系統(tǒng)實(shí)施例相對(duì)應(yīng)的方法實(shí)施例。需要說(shuō)明的是,下述方法實(shí)施例中相關(guān)內(nèi)容的解釋?zhuān)梢詤⒖忌鲜鱿到y(tǒng)實(shí)施例。
本申請(qǐng)實(shí)施例提供的數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法的執(zhí)行主體可以為上文系統(tǒng)中的數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置,或者用于執(zhí)行上述數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法的電子設(shè)備。其中,數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置可以為上述電子設(shè)備中的中央處理器(英文:centralprocessingunit,縮寫(xiě):cpu)或者可以為上述電子設(shè)備中的控制單元或者功能模塊。
基于圖1、2所示的系統(tǒng)架構(gòu),本申請(qǐng)實(shí)施例提供一種數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法,如圖3所示,該方法包括:
201、獲取至少一個(gè)數(shù)據(jù)。
202、將每個(gè)數(shù)據(jù)分別存儲(chǔ)至與其數(shù)據(jù)類(lèi)型相匹配的第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中,以便第一服務(wù)集群對(duì)其存儲(chǔ)的數(shù)據(jù)分析,得到第一數(shù)據(jù)分析結(jié)果,并將第一數(shù)據(jù)分析結(jié)果存儲(chǔ)至第二數(shù)據(jù)庫(kù)的第二服務(wù)器集群中。
可選的,上述的至少一個(gè)第一數(shù)據(jù)庫(kù)包括:用于處理不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第一類(lèi)數(shù)據(jù)庫(kù)和用于處理存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的第二類(lèi)數(shù)據(jù)庫(kù)。
基于此,在一種示例中,若第一數(shù)據(jù)庫(kù)中的第一類(lèi)數(shù)據(jù)庫(kù)和第二類(lèi)數(shù)據(jù)庫(kù)均可進(jìn)行數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)分析時(shí),則:
在步驟202之前,還包括如下步驟:
s11、判定至少一個(gè)數(shù)據(jù)中每個(gè)數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù)。
基于步驟s11,步驟202具體包括如下內(nèi)容:
s12、將至少一個(gè)數(shù)據(jù)中不存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析,并將所述至少一個(gè)數(shù)據(jù)中存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
在另一種示例中,若第一數(shù)據(jù)庫(kù)中第二類(lèi)數(shù)據(jù)庫(kù)僅對(duì)存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析時(shí),則:
步驟202具體包括如下步驟:
s21、將每個(gè)數(shù)據(jù)分別存儲(chǔ)至其數(shù)據(jù)類(lèi)型對(duì)應(yīng)的第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中,以便第一類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群判定其存儲(chǔ)的數(shù)據(jù)是否存在大規(guī)模復(fù)雜分析任務(wù),并將其存儲(chǔ)的存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)同步至第二類(lèi)數(shù)據(jù)庫(kù)的第一服務(wù)器集群中進(jìn)行數(shù)據(jù)分析。
示例性的,步驟202具體包括如下步驟:
s31、確定第一數(shù)據(jù)的價(jià)值密度情況和第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu)。
s32、從至少一個(gè)第一數(shù)據(jù)庫(kù)中,確定出與第一數(shù)據(jù)的價(jià)值密度情況相匹配且支持第一數(shù)據(jù)的數(shù)據(jù)源的數(shù)據(jù)結(jié)構(gòu)的目標(biāo)第一數(shù)據(jù)庫(kù)。
s33、將第一數(shù)據(jù)存儲(chǔ)至目標(biāo)第一數(shù)據(jù)庫(kù)對(duì)應(yīng)的第一服務(wù)器集群中。
其中,第一數(shù)據(jù)為至少一個(gè)數(shù)據(jù)中的其中一個(gè)。
若以圖2所示的系統(tǒng)架構(gòu)為例,其對(duì)應(yīng)的數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法的方法流程圖如圖4所示,參照?qǐng)D4所示,該數(shù)據(jù)庫(kù)數(shù)據(jù)管理方法的方法流程如下所述:
1、根據(jù)數(shù)據(jù)來(lái)源不同,建立相應(yīng)的傳輸通道,獲取通信行業(yè)大數(shù)據(jù)分析使用到的各種異構(gòu)多源的數(shù)據(jù)。
2、判斷獲取到的數(shù)據(jù)的價(jià)值密度情況,若是高價(jià)值密度的數(shù)據(jù)則跳至步驟(4),否則繼續(xù)執(zhí)行步驟(3)。
3、低價(jià)值密度的數(shù)據(jù)統(tǒng)一存儲(chǔ)在hadoop集群的hdfs中,使用hive完成數(shù)據(jù)的提取、轉(zhuǎn)換和加載工作,以數(shù)據(jù)庫(kù)表的形式實(shí)現(xiàn)數(shù)據(jù)的規(guī)范化入庫(kù)。
4、判斷高價(jià)值密度的數(shù)據(jù)是否屬于vertica集群無(wú)法處理的非結(jié)構(gòu)化數(shù)據(jù),若是則返回執(zhí)行步驟(3),否則繼續(xù)執(zhí)行步驟(5)。
5、高價(jià)值密度的結(jié)構(gòu)化數(shù)據(jù)統(tǒng)一存儲(chǔ)在vertica集群中,通過(guò)c++程序完成數(shù)據(jù)的提取、轉(zhuǎn)換和加載工作,以數(shù)據(jù)庫(kù)表的形式實(shí)現(xiàn)數(shù)據(jù)的規(guī)范化入庫(kù)。
6、判斷hadoop集群中存儲(chǔ)的數(shù)據(jù)是否涉及到impala分析引擎無(wú)法完成的大規(guī)模復(fù)雜分析任務(wù),若存在則跳至步驟(8),否則繼續(xù)執(zhí)行步驟(7)。
7、使用impala分析引擎對(duì)hadoop集群中存儲(chǔ)的數(shù)據(jù)進(jìn)行分析,并生成相應(yīng)的分析結(jié)果集。
8、通過(guò)impala分析引擎,完成大規(guī)模復(fù)雜分析任務(wù)數(shù)據(jù)源的預(yù)處理,以結(jié)構(gòu)化數(shù)據(jù)的形式同步至vertica集群。
9、vertica集群完成存儲(chǔ)在集群內(nèi)以及從hadoop集群同步過(guò)來(lái)存在大規(guī)模復(fù)雜分析任務(wù)的數(shù)據(jù)的分析任務(wù),并生成相應(yīng)的分析結(jié)果集。
10、判斷hadoop集群和vertica集群中存儲(chǔ)的結(jié)果集是否用于前臺(tái)的web界面展示,若否則跳至步驟(12),是則繼續(xù)執(zhí)行步驟(11)。
11、使用分布式mysql作為前臺(tái)web應(yīng)用的后臺(tái)數(shù)據(jù)庫(kù),從hadoop集群和vertica集群中同步前臺(tái)展示所需的分析結(jié)果集。
12、對(duì)于事務(wù)型較強(qiáng)的應(yīng)用以及和已有系統(tǒng)融合等應(yīng)用場(chǎng)景,使用oraclerac作為后臺(tái)數(shù)據(jù)庫(kù),從hadoop和vertica集群中同步前臺(tái)展示所需的分析結(jié)果集。
下面說(shuō)明本申請(qǐng)實(shí)施例提供的與上文所提供的方法實(shí)施例相對(duì)應(yīng)的裝置實(shí)施例。需要說(shuō)明的是,下述裝置實(shí)施例中相關(guān)內(nèi)容的解釋?zhuān)梢詤⒖忌鲜龇椒▽?shí)施例。
圖5示出了上述實(shí)施例中所涉及的數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置的一種可能的結(jié)構(gòu)示意圖,參照?qǐng)D5、該裝置包括:獲取模塊31和處理模塊32,其中:獲取模塊31用于支持?jǐn)?shù)據(jù)庫(kù)數(shù)據(jù)管理裝置執(zhí)行圖3中的步驟201;處理模塊22用于支持?jǐn)?shù)據(jù)庫(kù)數(shù)據(jù)管理裝置執(zhí)行圖3中的步驟202。進(jìn)一步的,上述的處理模塊還用于支持?jǐn)?shù)據(jù)庫(kù)數(shù)據(jù)管理裝置執(zhí)行上文中的步驟s11、s12、s21、以及步驟s31、s32、s33。其中,上述方法實(shí)施例涉及的各步驟的所有相關(guān)內(nèi)容均可以援引到對(duì)應(yīng)功能模塊的功能描述,在此不再贅述。此外,上述處理模塊32,還用于存儲(chǔ)該裝置的程序代碼和數(shù)據(jù)。
在硬件實(shí)現(xiàn)上,上述的獲取模塊31、處理模塊32可以是處理器。上述數(shù)據(jù)庫(kù)數(shù)據(jù)管理裝置所執(zhí)行的動(dòng)作所對(duì)應(yīng)的程序均可以以軟件形式存儲(chǔ)于該裝置的存儲(chǔ)器中,以便于處理器調(diào)用執(zhí)行以上各個(gè)模塊對(duì)應(yīng)的操作。
通過(guò)以上本申請(qǐng)所提供的幾個(gè)實(shí)施例,應(yīng)該理解到,所揭露的裝置和方法,可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。
本申請(qǐng)中的處理器可以是一個(gè)處理器,也可以是多個(gè)處理元件的統(tǒng)稱。例如,可以為cpu,也可以為其他通用處理器、數(shù)字信號(hào)處理器(英文:digitalsignalprocessing,縮寫(xiě):dsp)、專(zhuān)用集成電路(英文:applicationspecificintegratedcircuit,縮寫(xiě):asic)、現(xiàn)場(chǎng)可編程門(mén)陣列(英文:field-programmablegatearray,縮寫(xiě):fpga)或者其他可編程邏輯器件、分立門(mén)或者晶體管邏輯器件、分立硬件組件等,其可以實(shí)現(xiàn)或執(zhí)行結(jié)合本申請(qǐng)公開(kāi)內(nèi)容所描述的各種示例性的邏輯方框,模塊和電路。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。所述處理器也可以是實(shí)現(xiàn)計(jì)算功能的組合,例如包含一個(gè)或多個(gè)微處理器組合,dsp和微處理器的組合等等。
結(jié)合本申請(qǐng)公開(kāi)內(nèi)容所描述的方法的步驟可以硬件的方式來(lái)實(shí)現(xiàn),也可以是由處理器執(zhí)行軟件指令的方式來(lái)實(shí)現(xiàn)。軟件指令可以由相應(yīng)的軟件模塊組成,軟件模塊可以被存放于隨機(jī)存取存儲(chǔ)器(英文:randomaccessmemory,縮寫(xiě):ram)、閃存、只讀存儲(chǔ)器(英文:readonlymemory,縮寫(xiě):rom)、可擦除可編程只讀存儲(chǔ)器(英文:erasableprogrammablerom,縮寫(xiě):eprom)、電可擦可編程只讀存儲(chǔ)器(英文:electricallyeprom,縮寫(xiě):eeprom)、寄存器、硬盤(pán)、移動(dòng)硬盤(pán)、只讀光盤(pán)(cd-rom)或者本領(lǐng)域熟知的任何其它形式的存儲(chǔ)介質(zhì)中。一種示例性的存儲(chǔ)介質(zhì)耦合至處理器,從而使處理器能夠從該存儲(chǔ)介質(zhì)讀取信息,且可向該存儲(chǔ)介質(zhì)寫(xiě)入信息。當(dāng)然,存儲(chǔ)介質(zhì)也可以是處理器的組成部分。處理器和存儲(chǔ)介質(zhì)可以位于asic中。
最后應(yīng)說(shuō)明的是:以上所述的具體實(shí)施方式,對(duì)本申請(qǐng)的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本申請(qǐng)的具體實(shí)施方式而已,并不用于限定本申請(qǐng)的保護(hù)范圍,凡在本申請(qǐng)的技術(shù)方案的基礎(chǔ)之上,所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包括在本申請(qǐng)的保護(hù)范圍之內(nèi)。