了解數(shù)據(jù)庫虛擬化的五個(gè)關(guān)鍵點(diǎn)
我們正在經(jīng)歷一場(chǎng)不可思議的復(fù)興。長(zhǎng)期以來被嘲笑為過時(shí)的數(shù)據(jù)庫突然成為行業(yè)的寵兒。在權(quán)威人士宣布數(shù)據(jù)庫幾乎已死多年后,一種新型的初創(chuàng)公司引起了華爾街的注意。然而,IT領(lǐng)導(dǎo)者仍然難以有效地將他們現(xiàn)有的工作負(fù)載遷移到這些系統(tǒng)。
對(duì)數(shù)據(jù)庫的供應(yīng)商鎖定是傳奇。沒有其他部門對(duì)其用戶產(chǎn)生如此大的影響。自然地,供應(yīng)商鎖定使客戶對(duì)現(xiàn)有技術(shù)心存感激。然而,它也讓競(jìng)爭(zhēng)和新貴們望而卻步。Snowflake的CEO曾感嘆打入這個(gè)市場(chǎng)有多難,當(dāng)時(shí)他說:“Teradata讓他們很難離開他們的平臺(tái)?!?/p>
隨著數(shù)據(jù)庫虛擬化(DBV)(而非數(shù)據(jù)虛擬化)的出現(xiàn),一種新的方法已進(jìn)入舞臺(tái)。DBV聲稱打破了供應(yīng)商對(duì)數(shù)據(jù)倉庫技術(shù)的鎖定。它的適用性如何?IT領(lǐng)導(dǎo)者如何評(píng)估該技術(shù)?以下是關(guān)于DBV的五件事。
1. DBV是如何工作的?
DBV平臺(tái)位于數(shù)據(jù)庫和應(yīng)用程序之間。它使為一個(gè)數(shù)據(jù)庫編寫的應(yīng)用程序能夠在另一個(gè)數(shù)據(jù)庫上本地運(yùn)行。所有查詢和通信都是實(shí)時(shí)翻譯的。例如,為Teradata編寫的應(yīng)用程序可以直接在MicrosoftAzureSynapse上運(yùn)行,甚至不會(huì)“知道”它們不再在Teradata上運(yùn)行。
DBV是完全透明的,目的是應(yīng)用程序不需要任何或只需要很少的調(diào)整。這不僅包括標(biāo)準(zhǔn)SQL,還包括專有擴(kuò)展。為了在實(shí)踐中取得成功,還必須支持加載程序、驅(qū)動(dòng)程序和實(shí)用程序。
由于DBV系統(tǒng)實(shí)現(xiàn)了查詢和數(shù)據(jù)的轉(zhuǎn)換,因此它們可以以相當(dāng)?shù)偷拈_銷運(yùn)行。實(shí)際的數(shù)據(jù)處理始終在數(shù)據(jù)倉庫本身上執(zhí)行,并利用該系統(tǒng)的大規(guī)模并行處理(MPP)功能。
2. 何時(shí)使用DBV而非傳統(tǒng)遷移?
在傳統(tǒng)遷移中,所有現(xiàn)有的SQL代碼、驅(qū)動(dòng)程序、工具和實(shí)用程序都被替換為新目標(biāo)系統(tǒng)的對(duì)應(yīng)項(xiàng)。對(duì)于具有少量應(yīng)用程序的緊湊型數(shù)據(jù)倉庫系統(tǒng),這可能是首選方法。只有有限數(shù)量的用戶的數(shù)據(jù)集市可能有資格這樣做。
但是,在復(fù)雜的企業(yè)數(shù)據(jù)倉庫(EDW)的情況下,DBV可以顯著優(yōu)于傳統(tǒng)遷移。DBV以極少的時(shí)間、成本和風(fēng)險(xiǎn)完成工作負(fù)載的遷移。
3. DBV可以覆蓋我的工作量嗎?
一些工作負(fù)載廣泛使用專門的功能。還有一些使用早于標(biāo)準(zhǔn)化工作的功能。換句話說,沒有兩個(gè)數(shù)據(jù)倉庫工作負(fù)載是相同的。這會(huì)使評(píng)估DBV系統(tǒng)的覆蓋范圍變得困難。
支持功能的完整文檔似乎是可取的,但實(shí)際上并不是很有幫助。大多數(shù)客戶無法簡(jiǎn)潔地描述他們的工作負(fù)載當(dāng)前正在使用哪些功能。更復(fù)雜的是,查詢或函數(shù)的原始作者通常不再在公司工作。
然而,這不一定是采用DBV的障礙。由于DBV的采用風(fēng)險(xiǎn)較低,因此它可以實(shí)現(xiàn)非常有效的概念驗(yàn)證(POC)實(shí)施??蛻魺o需更改其應(yīng)用程序即可使用DBV。他們可以直接在POC中測(cè)試他們的實(shí)際應(yīng)用程序。
然后,POC可以快速識(shí)別任何缺失的覆蓋范圍。重要的是要理解,雖然100%的覆蓋率似乎是可取的,但通常90%就足夠了。處理剩下的問題通常只需要微不足道的努力。
4. DBV與數(shù)據(jù)虛擬化有何不同?
數(shù)據(jù)虛擬化是一種有些相關(guān)但又完全不同的方法。要使數(shù)據(jù)虛擬化成功,首先需要重寫所有應(yīng)用程序并采用抽象的SQL方言。然后,只有這樣,它才能防止未來的供應(yīng)商鎖定。主要應(yīng)用領(lǐng)域是不需要考慮現(xiàn)有應(yīng)用的“綠地”場(chǎng)景。
相比之下,DBV打破了現(xiàn)有的供應(yīng)商鎖定。它使應(yīng)用程序保持原樣。隨著時(shí)間的推移,這可能會(huì)導(dǎo)致各種各樣的不同應(yīng)用技術(shù)。然而,這可能不是什么大問題,并且被新數(shù)據(jù)技術(shù)的采用很好地抵消了。
5. DBV能否將EDW重新平臺(tái)化為任何技術(shù)?
每隔幾年,一項(xiàng)新技術(shù)就會(huì)挑戰(zhàn)企業(yè)數(shù)據(jù)倉庫系統(tǒng)的霸主地位。新來者通常在一個(gè)顯著維度上優(yōu)于現(xiàn)有堆棧。例如,新技術(shù)可能更具可擴(kuò)展性。另一個(gè)可能會(huì)簡(jiǎn)化數(shù)據(jù)的共享。還有一些更吸引開源開發(fā)者。
通常,專家團(tuán)隊(duì)可以構(gòu)建定制解決方案,將工作負(fù)載從EDW轉(zhuǎn)移到大多數(shù)新技術(shù)。然而,功能上的差距越大,運(yùn)行這些系統(tǒng)所需的軟件工程就越多。例如,將EDW遷移到NoSQL系統(tǒng)在技術(shù)上可能是可行的,但在經(jīng)濟(jì)上并不總是可取的。
要使DBV成功,源和目標(biāo)必須有意義地相似。但是,這不需要等效功能。DBV可以彌補(bǔ)大多數(shù)高級(jí)功能的不足,例如存儲(chǔ)過程、宏,甚至是不受支持的數(shù)據(jù)類型。目前,云原生PaaS解決方案在DBV環(huán)境中最為成功。
選擇正確的遷移方法
在為現(xiàn)有EDW選擇新的目標(biāo)系統(tǒng)時(shí),需要考慮許多因素。一個(gè)經(jīng)常被忽視的是遷移方法。DBV在打破供應(yīng)商對(duì)遺留數(shù)據(jù)倉庫的鎖定方面非常有效。
通過將遷移方法考慮到他們對(duì)目標(biāo)系統(tǒng)的選擇中,IT領(lǐng)導(dǎo)者可以優(yōu)化快速采用,同時(shí)控制風(fēng)險(xiǎn)和成本。