摘要:NoSQL數據庫提供的靈活敏捷性、可擴展性、性能和可用性,并能夠支持當今企業所采用的多種應用程序,但對于NoSQL數據庫的部署卻并不總是一件能夠輕松容易實現的任務。而在本文中,我們將為廣大讀者介紹關于如何在您的企業組織中整合NoSQL系統的10項小貼士。
現如今,數據正推動著企業的創新及其業務的增長,但這只是針對那些為有效處理數據做好了充分準備的企業組織而言的。
盡管關系型數據庫仍然擁有其一席之地,但鑒于今天的數據的復雜性、龐大的數據量以及企業對于數據處理的需求,使得關系型數據庫已然無法很好的適合于某些應用程序的處理需求了。在許多這樣的情況下,NoSQL這一技術便開始發揮其用武之地,并很好的填補了這一空白。盡管如此,在您企業組織內部署NoSQL系統可能并不是一件很容易的事情。
而在您企業組織內部署NoSQL系統顯然是值得的,但這需要提前進行精心周密的策劃,以及組織化的采購——而這一關鍵點往往被許多IT企業組織所忽視了,MarkLogic公司產品執行副總裁Joe Pasqua如是說。MarkLogic公司的schema-agnostic企業NoSQL數據庫曾幫助拯救了Healthcare.gov。
Pasqua分享了10大貼士,希望能夠有助于您的企業組織順利實現NoSQL系統的整合。
1、開發一個用例
通往成功的NoSQL項目的第一步并不是什么秘密,Pasqua說。您只需要開發一套堅實的用例,并明確地了解您想實現什么樣的目標。
“如果缺乏了這一點,企業幾乎注定是要失敗的。” Pasqua說。“我們在大數據領域已經看到太多太多類似的失敗案例了。我曾經在與人們交談時聽到他們說,'我們需要Hadoop,而且我所在的企業也已經部署了Hadoop技術',但事實上,這些人并不知道他們為什么要部署Hadoop技術,或者說他們試圖要通過Hadoop技術來完成什么任務,這些企業的CIO們只是單純的表示說,他們需要Hadoop技術,那么,我們只能說,或許只有靠最好的運氣才能使得他們的Hadoop部署項目順利完成了。他們希望能夠在企業董事會上討論Hadoop項目,但有時這一愿望真正需要的是要充分理解Hadoop項目的部署能夠為其所在的企業帶來怎樣的商業價值。”
對于那些需要龐大的規模和巨大的數據量的項目而言,NoSQL往往是正確的選擇,其具備了:個性化、用戶配置文件管理、實時從運行數據中提取信息、內容管理、目錄、360度全方位的客戶視圖、移動應用、物聯網應用、數字通信和欺詐檢測。
2、確定NoSQL模型將如何實現與您企業現有的數據庫的適應
一旦您了解了您企業的使用情況,您便可以確定NoSQL數據庫是否是您企業項目的最合適的方案了。可能您的團隊的現有工具已經熟悉將需要適應的新的管理模式了。但Pasqua 仍然警告說,不要試圖強行將方形螺釘嵌入圓孔螺母。
“我們曾在相當多的企業業務中看到過類似的情況。” Pasqua說。 “他們已經找出了他們的使用情況,并明確的知道他們想要完成的工作任務是什么。然后他們可能會說,’讓我來嘗試使用我們企業已經擁有的工具和技術吧。’對于大量的項目,特別是那些需要大數據或數據靈活性的項目來說,他們往往會發現他們現有的工具是不起作用的。有時候,他們會盡力嘗試使用那些現有的工具長達數年的時間,最終才不得不承認其并不起作用的現實。”
其中的一個例子便是在幫助處理Healthcare.gov崩潰的問題期間,Pasqua說。該服務最初是建立在甲骨文數據庫上的,但其需要一個嚴格的數據模式,從而給系統帶來了巨大的處理壓力。該用例所需的是NoSQL架構的靈活性。MarkLogic公司則是被聘請來提供幫助的供應商之一。
“了解企業組織現有這些工具在何時是不適用的,而NoSQL數據可在何時用于處理您企業的問題更為適合,是非常重要的。”Pasqua補充說。
3、承認NoSQL數據庫將是具有顛覆破壞性的
如果您企業做出了在您的業務基礎架構上來實現NoSQL數據庫的決定,那么,就必要承認其所帶來的影響將是具有顛覆破壞性的,并同時需要為這些相應的影響做好充分的計劃和準備。
“NoSQL是具有顛覆破壞性的。” Pasqua說。”其顛覆破壞性表現在很多的方面。從開發者的角度來看,人們希望使用其現有的工具和技術。即使當他們已經決定他們想做一些不同的事情的時候,他們對于如何構建應用程序和使用數據庫已經有了一個整體性的心態。而嘗試他們已經具備的相關經驗、和相同的工作方式去體驗和使用NoSQL數據庫,是很自然的。但事實并非如此。他們嘗試像使用SQL一樣來使用NoSQL,其結局只會非常糟糕。您需要退一步想想使用NoSQL數據庫的正確的方式是什么。不要試圖與其進行斗爭,并使之成為關系數據庫。這是一個新的模式,它是一個具有顛覆破壞性的模式,讓我們好好利用這個優勢吧。”
例如,傳統的基本原則是,您企業組織必須配備專業的數據庫管理員(DBA)團隊來管理您企業的相關重要應用程序, Pasqua說。但他指出,在NoSQL的世界,您可能會看到以前需要10個DBA來執行的工作量,現在可能只需要1個DBA了。這樣您企業就可以解放出更多的員工人手出來,把他們安排到別的工作崗位上。
同樣,成本模式也將發生變化。NoSQL的是向外擴展的,基于硬件的技術商品。
“客戶購買了我們的方式,使用我們的方式,真的是非常不同的,” Pasqua說。 “您真的可以從我們這里采購到高性價比的硬件,并根據您企業業務的需求來進行擴展。這確實影響了采購過程,如果您企業不購買1000萬美元或2000萬美元的硬件,其可以讓您企業能夠通過采購周期的到非常快速的發展。而大多數客戶也都充分的利用了這一優勢。”
4、從小規模做起,然后逐步發展
很難從小規模開始關系型技術。如果您企業是一家大公司,您企業可能會有成千上萬的客戶,而這些客戶可能是個人或是其他企業組織,因此,這會導致您企業會經常需要面臨很多不同的數據政策的處理或者需要與您企業已經收購的另一家公司進行數據的合并。
“您需要將每一天都在不斷增長的不同的數據孤島的數據整合到一起。” Pasqua說。
而借助關系型技術來解決這些問題,則意味著您必須從所有不同的數據孤島找出您想把哪些數據結合在一起,創建一個架構,開發和部署ETL進程,將所有數據結合到一起。這個過程可能需要幾個月或更長的時間。
“然后,您就像在隧道的盡頭看到了光明一樣,您將創建一款新的產品或收購新的公司或面臨新的監管要求,并再次從零開始。” Pasqua說。 “您必須預先做所有的數據建模。”
NoSQL的橫向擴展規模,基于商品的架構及其架構的靈活性意味著您可以從小規模開始著手,從您認為是非常必要的一些數據和擴展努力開始。您可以用那些凌亂的,非結構化的數據開始,并能夠馬上從中獲得價值, Pasqua說,然后在必要時添加結構化數據。
5、在您企業組織內確定決策者和執行者
這一要點并不是唯一針對NoSQL的。當涉及到具有顛覆性的變化處理時,變更管理可能是您最大的障礙。
“沒有決策者,您就一事無成,“Pasqua說。”但您也必須在董事會有執行者。”
而具體實施過程中的細節可能會促進或打破您的行動,所以務必確保有真正能夠將這些技術應用落實到位的人。這樣才能真正使得這些技術發揮其應有的價值。
6、確定將抑制和促進該倡議的過程
重要的是要重新思考您在NoSQL的世界的流程,慣性可能是您最大的抑制劑之一。
“了解企業組織的現狀、并憑借內在渴望去執行時企業一直在做的方式——但如果您不改變您的流程,其會使得改革的步伐放慢。” Pasqua說。
了解您的使用情況,以及新技術的采用所將帶來的顛覆破壞性的變化將有助于您塑造您的流程,以充分利用新的功能優勢。主要架構師和技術領導能幫助您塑造這些流程,因此應該積極爭取他們的支持,并讓他們參與進來。
7、確定您企業是否有合適的技能
企業組織具備相應的能力,以修改應用程序的設計和系統應用程序架構,進而適應NoSQL數據庫是相當關鍵的, Pasqua表示說。
“擁有適當的技能是至關重要的,”他說。 “這并不是說NoSQL數據庫技術是有多么特別的復雜性。事實上,其通常比較簡單,但它是不同的。很多人已經在數據庫業務領域從業30年了,但他們曾唯一使用過的東西就是關系型數據庫。他們在學習NoSQL數據庫方面沒有任何麻煩,但必須真的花時間去學習。”
培訓是該學習過程的一個重要組成部分。 Pasqua 指出,而MarkLogic公司則免費提供了所有的培訓課程,無論您是否是我們的客戶。
8、理解NoSQL數據庫管理系統和查詢語言
請務必要衡量您的企業組織對于NoSQL數據庫及如何使用有充分的理解。
“您企業已經有的相關人員都是非常聰明的數據庫方面的人才,”Pasqua說。 “他們對于NoSQL的理解不會有任何的問題,從技術的方法上來說,這不是一個難以逾越的問題,其更多的是文化方面的東西。”
9、建立一種緊迫感
要讓企業的所有利益相關者都充分了解您企業實施NoSQL數據庫必要性,以及他們可以期待從中獲得什么樣的回報。
如果您的企業組織轉向采用NoSQL數據庫,而在您企業組織內部是會有人抵制的,那么恐怕您很難看到該項目順利前進的方向。
“而這些反對抵制的人通常是那些在已經遭遇了問題的人——如在大數據或數據集成方面,他們在試圖使用他們現有的工具來解決他們所面臨的問題方面遭遇到困難了,并花費了大量的時間在這上面。” Pasqua說。“鑒于已經花費了那么多的時間卻未見成效,他們已經有相當大的壓力了。而我們所面臨的挑戰是,將緊迫感傳達給利益相關者們。”
可能業務部門已經有一些面向企業或監管導向的最后期限的緊迫感壓力了,Pasqua說。您必須確保您的技術人員和采購人員有也具備這方面的緊迫感,以滿足這一最后期限。
他說:“從小規??焖匍_始著手,然后逐步擴大規模。”他說。把緊迫感傳達給所有的利益相關者。”
10、向有經驗的人請教,包括同事和顧問
經驗產生了所有的差異,Pasqua說。
“正是因為像諸如MarkLogic公司這樣的技術真的是具有顛覆破壞性的,會很容易使的企業用戶落入一些陷阱。” Pasqua說。 “您需要能夠走出去,并真正與那些使用這些類型的新技術、并且從中獲益的人請教,這一點是至關重要的。看看是否有人正在使用MarkLogic的服務,而他們是用它來運行其銀行或作為其培訓體系的一部分。例如,Healthcare.gov就是用其來運行他們的交易系統。真的,您能做的最好的事情之一就是走出去,與已經部署了該技術、或者與這方面的技術大牛溝通交流,包括在技術方面、文化方面、和流程方面的交流。找出您如何能夠讓這一數據庫在您企業組織順利部署,將為您的企業組織帶來最好的優勢。”
Pasqua說,如果您企業聘請了第三方顧問,尋找那些能夠將結構化帶到專業服務中的架構師和顧問,這會讓您企業從正確的基礎開始,這會讓您企業之后能夠更加自立,而不是依靠專業服務,他說。