中國(guó)聯(lián)通研究院 北京 100032
數(shù)據(jù)庫(kù)即服務(wù)是一種基于云的結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)方式,它依托于傳統(tǒng)的數(shù)據(jù)庫(kù)技術(shù),在此基礎(chǔ)上將數(shù)據(jù)庫(kù)資源抽象成標(biāo)準(zhǔn)服務(wù)的形式提供給用戶。數(shù)據(jù)庫(kù)即服務(wù)具備可擴(kuò)展、靈活適配和按需分配等特征,用戶可以通過(guò)界面簡(jiǎn)單、快捷、自服務(wù)化地獲取數(shù)據(jù)庫(kù)資源,省去了復(fù)雜的數(shù)據(jù)庫(kù)配置工作。
典型的數(shù)據(jù)庫(kù)即服務(wù)架構(gòu)需要支持如下功能。1)面向租戶的、按需彈性配置的、用戶自服務(wù)的數(shù)據(jù)庫(kù)實(shí)例配置與管理功能;2)具備可選的、穩(wěn)定的SLA服務(wù)標(biāo)準(zhǔn)和運(yùn)行監(jiān)控維護(hù)能力;3)具備精細(xì)化、細(xì)粒度的資源使用量計(jì)量與計(jì)費(fèi)能力。除上述必備能力外,一個(gè)完善的DBaaS架構(gòu)還應(yīng)具有較為完備的安全機(jī)制、自動(dòng)資源管理和綜合性能規(guī)劃等功能,并且能夠適配各種不同的接入設(shè)備。DBaaS所具備的一些特性也是傳統(tǒng)數(shù)據(jù)庫(kù)服務(wù)架構(gòu)自身已具備的,因此,不能脫離傳統(tǒng)數(shù)據(jù)庫(kù)技術(shù)而獨(dú)立存在,其側(cè)重點(diǎn)在于面向?qū)?shù)據(jù)庫(kù)功能的封裝和創(chuàng)新。
數(shù)據(jù)庫(kù)作為一種有效管理結(jié)構(gòu)化數(shù)據(jù)的工具,得到廣泛應(yīng)用。然而,應(yīng)用數(shù)據(jù)庫(kù)需要大量的配置和復(fù)雜的維護(hù)工作,這些成為數(shù)據(jù)庫(kù)應(yīng)用中的共性問(wèn)題[1]。另外,在數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)往往遵循峰值性能模型,按照峰值容量來(lái)配置可用性,而忽略了通常數(shù)據(jù)庫(kù)的使用情況,導(dǎo)致客戶前期需要為數(shù)據(jù)庫(kù)資源投入巨額成本。
通過(guò)采用數(shù)據(jù)庫(kù)即服務(wù)即可較為輕松地解決以上問(wèn)題,數(shù)據(jù)庫(kù)及服務(wù)的優(yōu)勢(shì)就在于提供一個(gè)模板化、界面化、可彈性擴(kuò)展的數(shù)據(jù)庫(kù)服務(wù)平臺(tái)。采用數(shù)據(jù)庫(kù)即服務(wù)方案可以降低客戶首次投入成本,滿足客戶多變的需求,不僅使一些小微企業(yè)擁有數(shù)據(jù)庫(kù)資源的所有權(quán),而且可以縮短系統(tǒng)部署的周期,降低企業(yè)IT的門檻。
數(shù)據(jù)庫(kù)即服務(wù)在推廣過(guò)程中,也存在著一定問(wèn)題,如:網(wǎng)絡(luò)資源保障、交付管理等。由于DBaaS是基于云的服務(wù),對(duì)網(wǎng)絡(luò)依賴程度高,如果最終用戶、網(wǎng)絡(luò)提供商、數(shù)據(jù)庫(kù)服務(wù)提供商之間的任何一點(diǎn)網(wǎng)絡(luò)出現(xiàn)故障,都可能會(huì)導(dǎo)致數(shù)據(jù)庫(kù)即服務(wù)無(wú)法交付。另外,如果在用戶與數(shù)據(jù)庫(kù)服務(wù)提供商之間還有第三方系統(tǒng)集成商,也可能會(huì)使得服務(wù)交付的流程變得復(fù)雜和難以管理。
盡管數(shù)據(jù)庫(kù)即服務(wù)在推廣過(guò)程中還存在諸多不確定因素,但隨著中國(guó)寬帶計(jì)劃和云服務(wù)的高速發(fā)展,數(shù)據(jù)庫(kù)即服務(wù)會(huì)迎來(lái)它的快速增長(zhǎng)期。
OpenStack是一個(gè)云管理平臺(tái)項(xiàng)目,旨在為公共云及私有云的建設(shè)與管理提供開源軟件實(shí)現(xiàn)。Openstack既是一個(gè)社區(qū),又是一個(gè)軟件項(xiàng)目。它擁有著眾多支持者,其中包括超過(guò)180家企業(yè)和400多位開發(fā)人員。OpenStack擁有近55萬(wàn)行代碼,這些代碼分別來(lái)自O(shè)penstack核心項(xiàng)目、孵化項(xiàng)目、支持項(xiàng)目等多種類型的內(nèi)部項(xiàng)目。OpenStack包括以下五個(gè)相對(duì)獨(dú)立的核心組件[2]。
1)Nova:虛擬機(jī)計(jì)算控制器,用于對(duì)虛擬機(jī)實(shí)例的生命周期進(jìn)行管理。
2)Glance:提供了一個(gè)虛擬磁盤鏡像的目錄和存儲(chǔ)倉(cāng)庫(kù),可提供對(duì)虛擬機(jī)鏡像的存儲(chǔ)和檢索。
3)Swift:提供的對(duì)象存儲(chǔ)服務(wù),支持文件的存儲(chǔ)或檢索,類似于Amazon S3。
4)Keystone:為OpenStack上的所有服務(wù)提供身份驗(yàn)證和授權(quán)。
5)Horizon:為OpenStack的所有服務(wù)提供一個(gè)基于Web的模塊化的UI界面。
除了上述核心組件意外,Openstack還包括如下非核心組件。
1)Ceilometer:為OpenStack的數(shù)據(jù)采集(監(jiān)控?cái)?shù)據(jù)、計(jì)費(fèi)數(shù)據(jù))的唯一基礎(chǔ)設(shè)施,將采集到的數(shù)據(jù)提供給監(jiān)控、計(jì)費(fèi)、面板等項(xiàng)目使用。
2)Heat:一套業(yè)務(wù)流程平臺(tái),旨在幫助用戶更輕松地配置以O(shè)penStack為基礎(chǔ)的云體系。利用Heat應(yīng)用程序,開發(fā)人員能夠在程序中使用模板。
3)Trove[3]:目前還僅是一個(gè)Openstack的孵化項(xiàng)目。它是Openstack的數(shù)據(jù)庫(kù)即服務(wù)組件,完全運(yùn)行在Openstack平臺(tái)上。Trove的設(shè)計(jì)目標(biāo)是提供一個(gè)可伸縮、高可用的數(shù)據(jù)庫(kù)即服務(wù)能力,同時(shí)提供關(guān)系型和非關(guān)系型兩種數(shù)據(jù)庫(kù)引擎,以完善和擴(kuò)展OpenStack開源框架的能力。借助Trove,云計(jì)算平臺(tái)的用戶可以快速有效地生成關(guān)系型數(shù)據(jù)庫(kù)實(shí)例,不僅省去復(fù)雜的數(shù)據(jù)庫(kù)配置和管理工作,而且可以通過(guò)Trove同時(shí)管理多個(gè)數(shù)據(jù)庫(kù)實(shí)例,從而能夠大大降低運(yùn)維成本。
當(dāng)前,Trove項(xiàng)目還在孵化階段,致力于實(shí)現(xiàn)高可用的資源隔離和數(shù)據(jù)庫(kù)實(shí)例管理工作,如數(shù)據(jù)庫(kù)實(shí)例的部署、配置、維護(hù)、備份、恢復(fù)和監(jiān)測(cè)[4]。同時(shí),Trove運(yùn)行在Nova的實(shí)例中,生成單租戶的數(shù)據(jù)庫(kù)實(shí)例。Trove與Openstack組件通過(guò)API實(shí)現(xiàn)交互,所以Trove不依賴于Nova的配置,Trove的目標(biāo)功能架構(gòu)圖[5]如圖1所示。
圖1 Trove的目標(biāo)功能架構(gòu)圖
Trove采用Share Nothing的消息架構(gòu)[5],它的所有組件之間的消息通信都通過(guò)消息總線來(lái)完成,因此,Trove組件可以運(yùn)行在不同的服務(wù)器上。這一點(diǎn)和Nova非常相似。消息總線接受來(lái)自用戶的Http請(qǐng)求,將請(qǐng)求轉(zhuǎn)換并轉(zhuǎn)發(fā)給相應(yīng)組件后,請(qǐng)求將被異步執(zhí)行。Trove的主要組件包括API Server、Message Bus、Task Manager、Guest Agent、Conductor等,其主要功能與相互關(guān)系概述如下。
1)API Server:API負(fù)責(zé)與Guest Agent和Task Manager這兩個(gè)組件進(jìn)行通信,以指揮和控制Guest Agent和數(shù)據(jù)庫(kù)實(shí)例。API北向提供Http Web服務(wù)接口,以處理認(rèn)證、鑒權(quán)和數(shù)據(jù)庫(kù)基本的控制功能。API與Task Manager組件的通信,均采用異步的方式執(zhí)行復(fù)雜的任務(wù)。而API與Guest Agent的通信,均采用同步的方式執(zhí)行簡(jiǎn)單的任務(wù),如檢索MySQL用戶列表。API本身不處理復(fù)雜的任務(wù),它的工作是接受、驗(yàn)證、轉(zhuǎn)換請(qǐng)求,并將請(qǐng)求轉(zhuǎn)發(fā)給Task Manager或Guest Agent。
2)Message Bus:云平臺(tái)與Trove之間的雙向交互(Http請(qǐng)求)均通過(guò)多API節(jié)點(diǎn)實(shí)現(xiàn),而API與Guest Agent和Task Manager之間的消息隊(duì)列的調(diào)度和管理任務(wù)由Message Bus承擔(dān)。
3)Task Manager:負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)實(shí)例進(jìn)行生命周期管理,如創(chuàng)建數(shù)據(jù)庫(kù)實(shí)例等。另外,負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)的性能等進(jìn)行管理。由于同時(shí)管理多個(gè)數(shù)據(jù)庫(kù)實(shí)例,Task Manager采用流式的處理過(guò)程。
4)Guest Agent:執(zhí)行具體的數(shù)據(jù)庫(kù)運(yùn)行維護(hù)管理任務(wù),對(duì)數(shù)據(jù)庫(kù)本身進(jìn)行操作。每一個(gè)數(shù)據(jù)庫(kù)實(shí)例都擁有一個(gè)自己的Guset Agent,并且數(shù)據(jù)庫(kù)類型不同,Guset Agent也不同。
5)Conductor:負(fù)責(zé)從Guest Agents收集狀態(tài)信息,然后將其更新到Trove的后端數(shù)據(jù)庫(kù)。有了Conductor,guest agents不需要直接與后端數(shù)據(jù)庫(kù)相連,Conductor通過(guò)消息總線監(jiān)聽RPC消息,并執(zhí)行相關(guān)操作。
OpenStack目前的最新發(fā)布版為Icehouse版,簡(jiǎn)稱I版,在這一版本中,用戶可以通過(guò)Trove創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)服務(wù)實(shí)例。在這個(gè)實(shí)例里,用戶可以同時(shí)創(chuàng)建和管理多個(gè)數(shù)據(jù)庫(kù)。需要指出的是,OpenStack I版的Trove組件僅支持對(duì)MySQL數(shù)據(jù)庫(kù)的創(chuàng)建和管理。
本文后續(xù)將基于Openstack I版本中Trove組件,對(duì)Trove與中國(guó)聯(lián)通自主研發(fā)沃云平臺(tái)的數(shù)據(jù)庫(kù)即服務(wù)展開對(duì)比分析。
沃云是中國(guó)聯(lián)通自主研發(fā)的云服務(wù)運(yùn)營(yíng)管理平臺(tái)。聯(lián)通的沃云平臺(tái)聚焦于云基礎(chǔ)能力、云引擎能力和云應(yīng)用三個(gè)層面。云基礎(chǔ)能力涵蓋計(jì)算、存儲(chǔ)、網(wǎng)絡(luò)等IaaS層基礎(chǔ)資源能力服務(wù);云引擎能力涵蓋數(shù)據(jù)庫(kù)即服務(wù)、存儲(chǔ)即服務(wù)、中間件即服務(wù)等PaaS層服務(wù);云應(yīng)用涵蓋創(chuàng)新業(yè)務(wù)應(yīng)用在線開發(fā)、測(cè)試、部署、監(jiān)控等全生命周期服務(wù),以及安全防護(hù)、監(jiān)控計(jì)量、用戶管理、資源管理等業(yè)務(wù)支撐服務(wù)。它一方面滿足新技術(shù)試驗(yàn)和測(cè)試的需求,另一方面為創(chuàng)新業(yè)務(wù)孵化和其他業(yè)務(wù)系統(tǒng)提供云計(jì)算服務(wù)。
沃云的核心在于兩大資源引擎。1)PaaS資源引擎:建設(shè)和管理ESB、中間件、數(shù)據(jù)庫(kù)等平臺(tái)級(jí)資源,并結(jié)合沃云平臺(tái)的開發(fā)框架和測(cè)試框架將應(yīng)用的開發(fā)、測(cè)試、驗(yàn)證、生產(chǎn)不同環(huán)節(jié)發(fā)揮支撐和管理作用,實(shí)現(xiàn)對(duì)應(yīng)用開發(fā)、測(cè)試、部署、運(yùn)行的全生命周期支持。2)IaaS資源引擎:以IT資源為中心實(shí)現(xiàn)各類基礎(chǔ)設(shè)施資源的池化管理,并提供統(tǒng)一的運(yùn)維管理和能力提供接口。實(shí)現(xiàn)對(duì)基礎(chǔ)設(shè)施資源的統(tǒng)一管理和調(diào)度,為沃云業(yè)務(wù)及其上承載的各種創(chuàng)新業(yè)務(wù)提供基礎(chǔ)資源能力支撐。
沃云的數(shù)據(jù)庫(kù)即服務(wù)組件作為PaaS資源引擎的一個(gè)關(guān)鍵組成部分,提供面向多租戶的統(tǒng)一數(shù)據(jù)庫(kù)訪問(wèn)服務(wù),屏蔽底層的異構(gòu)數(shù)據(jù)庫(kù)架構(gòu),為上層應(yīng)用提供簡(jiǎn)單方便的數(shù)據(jù)庫(kù)訪問(wèn)接口,將應(yīng)用和數(shù)據(jù)庫(kù)隔離開來(lái),降低耦合性,增強(qiáng)系統(tǒng)的靈活性和健壯性,增強(qiáng)數(shù)據(jù)訪問(wèn)控制能力。沃云的數(shù)據(jù)庫(kù)即服務(wù)組件使大數(shù)據(jù)實(shí)現(xiàn)標(biāo)準(zhǔn)化的全局存儲(chǔ)、共享、處理及多樣化服務(wù)態(tài)的訪問(wèn)。其功能架構(gòu)及集成關(guān)系圖如圖2所示。
沃云的數(shù)據(jù)庫(kù)即服務(wù)組件包括三個(gè)部分。
1)數(shù)據(jù)訪問(wèn)組件:提供數(shù)據(jù)庫(kù)、數(shù)據(jù)的統(tǒng)一訪問(wèn),管理和維護(hù)路由信息,維護(hù)數(shù)據(jù)對(duì)象和數(shù)據(jù)庫(kù)對(duì)象的映射關(guān)系。對(duì)上層應(yīng)用隱藏了數(shù)據(jù)庫(kù)架構(gòu)和數(shù)據(jù)分布的細(xì)節(jié)。包括以下主要模塊。
圖2 沃云數(shù)據(jù)庫(kù)即服務(wù)功能架構(gòu)及集成關(guān)系圖
①數(shù)據(jù)訪問(wèn)模塊:通過(guò)接口封裝形式,隱藏了數(shù)據(jù)庫(kù)的細(xì)節(jié)特性,僅通過(guò)接口形式提供統(tǒng)一的數(shù)據(jù)訪問(wèn)接口,包括數(shù)據(jù)接口、數(shù)據(jù)對(duì)象訪問(wèn)接口和元數(shù)據(jù)訪問(wèn)接口,如REST風(fēng)格的Web Service接口、JPA、JDBC的封裝接口。同時(shí),還提供多種數(shù)據(jù)結(jié)果集形式,如JSON、XML或者Protocol Buffer等。
②監(jiān)控管理模塊:負(fù)責(zé)監(jiān)控?cái)?shù)據(jù)訪問(wèn)組件性能參數(shù)和SQL查詢性能??梢栽O(shè)置監(jiān)控的心跳間隔時(shí)間和需要監(jiān)控的參數(shù)(CPU使用率、連接數(shù)量、吞吐率)。
③路由模塊:負(fù)責(zé)管理維護(hù)路由信息,維護(hù)數(shù)據(jù)對(duì)象和數(shù)據(jù)庫(kù)表對(duì)象的映射關(guān)系,支持訪問(wèn)分發(fā)功能,正確定位數(shù)據(jù)庫(kù)實(shí)例。
④解析模塊:負(fù)責(zé)數(shù)據(jù)庫(kù)訪問(wèn)協(xié)議、數(shù)據(jù)訪問(wèn)協(xié)議、元數(shù)據(jù)訪問(wèn)協(xié)議的解析,SQL語(yǔ)句的解析和轉(zhuǎn)譯。
⑤負(fù)載均衡模塊:通過(guò)對(duì)不同數(shù)據(jù)庫(kù)服務(wù)的負(fù)載監(jiān)控,及時(shí)發(fā)現(xiàn)性能瓶頸,并保持對(duì)應(yīng)用透明的數(shù)據(jù)訪問(wèn)和數(shù)據(jù)庫(kù)水平擴(kuò)展服務(wù)能力。
⑥讀寫分離模塊:支持應(yīng)用透明的自動(dòng)讀寫分離操作,在不經(jīng)任何應(yīng)用代碼修改或應(yīng)用配置的情況下,直接支持應(yīng)用的讀寫分離操作。
2)數(shù)據(jù)管理組件:監(jiān)控、管理和協(xié)調(diào)數(shù)據(jù)庫(kù)即服務(wù)內(nèi)部資源和組件(包含數(shù)據(jù)訪問(wèn)組件和數(shù)據(jù)庫(kù)群集)的工作,提供沃云平臺(tái)通用管理接口的實(shí)現(xiàn),包括以下主要模塊。
①數(shù)據(jù)管理組件接口模塊:按照沃云管理平臺(tái)約定的平臺(tái)監(jiān)控規(guī)范、平臺(tái)管理規(guī)范進(jìn)行Web服務(wù)封裝。
②服務(wù)注冊(cè)模塊:負(fù)責(zé)數(shù)據(jù)庫(kù)即服務(wù)的組件和服務(wù)在沃云平臺(tái)的企業(yè)服務(wù)總線(ESB)組件中進(jìn)行注冊(cè)。
③訪問(wèn)組件集群監(jiān)控管理模塊:監(jiān)控和管理數(shù)據(jù)庫(kù)即服務(wù)中的訪問(wèn)組件集群和仲裁訪問(wèn)組件的工作狀態(tài)。基于對(duì)組件集群的分布式設(shè)計(jì),可以對(duì)整個(gè)組件集群進(jìn)行邏輯群組的劃分和管理,保證了水平可擴(kuò)展性。
④數(shù)據(jù)庫(kù)集群監(jiān)控管理模塊:負(fù)責(zé)數(shù)據(jù)庫(kù)集群及其之間關(guān)系的監(jiān)控和管理。
3)管理平臺(tái)界面:提供數(shù)據(jù)庫(kù)即服務(wù)的人機(jī)交互界面和運(yùn)維管理平臺(tái),用于數(shù)據(jù)庫(kù)服務(wù)的生命周期管理和運(yùn)維工作。
沃云平臺(tái)歷經(jīng)6年迭代演進(jìn),目前已具備多租戶支持、數(shù)據(jù)庫(kù)資源池化、數(shù)據(jù)庫(kù)能力多層次彈性擴(kuò)展等功能特性。
從數(shù)據(jù)庫(kù)實(shí)例的管理角度對(duì)比,Openstack I版中的Trove組件與當(dāng)前的沃云數(shù)據(jù)庫(kù)即服務(wù)均支持對(duì)單一MySQL數(shù)據(jù)庫(kù)實(shí)例的創(chuàng)建、查看和刪除操作。然而,二者在主要功能上存在差異。
首先,沃云的數(shù)據(jù)庫(kù)即服務(wù)平臺(tái)提供了生成MySQL主從架構(gòu)的模版,可以通過(guò)界面自動(dòng)化的生成一主一從或者一主多從的MySQL數(shù)據(jù)庫(kù)集群,而這些功能在Openstack Trove中只能通過(guò)手工的配置來(lái)實(shí)現(xiàn)。
其次,沃云的數(shù)據(jù)庫(kù)即服務(wù)平臺(tái)提供了較為完善的、界面化的數(shù)據(jù)備份功能和數(shù)據(jù)庫(kù)之間的復(fù)制功能,支持動(dòng)態(tài)的配置復(fù)制規(guī)則或備份規(guī)則,這些功能在Trove中尚不完善,部分功能還必須通過(guò)手工配置的方式實(shí)現(xiàn)。
再次,沃云的數(shù)據(jù)庫(kù)即服務(wù)平臺(tái)可以通過(guò)界面查看到底層數(shù)據(jù)庫(kù)運(yùn)行、數(shù)據(jù)庫(kù)連接、數(shù)據(jù)訪問(wèn)狀況、數(shù)據(jù)復(fù)制狀況以及平臺(tái)自身的系統(tǒng)運(yùn)行狀況等的狀態(tài)和性能數(shù)據(jù),可以查詢數(shù)據(jù)庫(kù)元數(shù)據(jù)、數(shù)據(jù)庫(kù)監(jiān)控和計(jì)量等數(shù)據(jù),這些功能Trove本身并不具備,但Openstack的監(jiān)控與計(jì)量組件Ceilometer部分地彌補(bǔ)了Trove的缺失功能。
同時(shí),需要指出的是,沃云的數(shù)據(jù)庫(kù)即服務(wù)平臺(tái)和Openstack的Trove都以同時(shí)提供關(guān)系型和非關(guān)系型兩種數(shù)據(jù)庫(kù)引擎為設(shè)計(jì)目標(biāo),但目前都沒有提供非關(guān)系型數(shù)據(jù)庫(kù)的服務(wù)能力。
綜上可知,Trove作為OpenStack開源項(xiàng)目中的數(shù)據(jù)庫(kù)即服務(wù)組件,部分功能目前尚未成熟,同時(shí),也未通過(guò)生產(chǎn)系統(tǒng)的大規(guī)模部署驗(yàn)證,但隨著Openstack社區(qū)的不斷壯大,Trove有望逐步成為Openstack的核心項(xiàng)目,朝著更加完善的架構(gòu)、更多類型的數(shù)據(jù)庫(kù)支持方向演進(jìn)。同時(shí),為滿足海量數(shù)據(jù)和高并發(fā)的在線交易處理和分析型應(yīng)用等聯(lián)通內(nèi)部支撐業(yè)務(wù)系統(tǒng)的生產(chǎn)需求,聯(lián)通自主研發(fā)的沃云數(shù)據(jù)庫(kù)即服務(wù)平臺(tái)將向支持分布式數(shù)據(jù)庫(kù)中間層、列式存儲(chǔ)數(shù)據(jù)庫(kù)集群的方向演進(jìn),二者將在未來(lái)形成協(xié)同發(fā)展,互為補(bǔ)充的和諧關(guān)系。
[1]Robert Sheldo.數(shù)據(jù)庫(kù)即服務(wù)的利與弊[EB/OL].(2013-03-06)[2014-09-28].http://www.searchdatabase.com.cn/showcontent_71086.htm
[2]淺談OpenStack與KVM的區(qū)別與聯(lián)系[EB/OL].(2013-01-08)[2014-09-28].http://os.51cto.com/art/201301/376569.htm.
[3]CSDN.Openstack trove探究[EB/OL].(2014-04-20)[2014-09-28].http://blog.csdn.net/cloudresearch/article/details/24159279
[4]麥子邁.DBaaS與Trove[EB/OL].(2013-07-28)[2014-09-289].http://www.wzxue.com/dbaas%E4%B8%8Etrove/
[5]Openstack Foundation.TroveArchitecture[EB/OL].(2013-08-14)[2014-09-28].https://wiki.openstack.org/wiki/