鄭慧杰 李新 解玉衡
【摘要】? ? 在過去的幾年中,云計(jì)算已經(jīng)在各種各樣的項(xiàng)目中得到了廣泛的應(yīng)用,這為研究和發(fā)展教育行業(yè)提供了新機(jī)遇。可動(dòng)態(tài)部署的虛擬實(shí)驗(yàn)室環(huán)境的形式出現(xiàn),為教育機(jī)構(gòu)的計(jì)算資源分配提供了更大的靈活性。在完全沙盒實(shí)驗(yàn)室的形式下,學(xué)生可以獲得“他們自己的”內(nèi)部網(wǎng)絡(luò)和對(duì)內(nèi)部所有機(jī)器的完全訪問權(quán),這使他們能夠靈活地收集構(gòu)建基于異構(gòu)大數(shù)據(jù)技術(shù)的體系結(jié)構(gòu)的實(shí)踐經(jīng)驗(yàn)。本文利用EDUCloud提供了一個(gè)私有的云基礎(chǔ)設(shè)施,可以將本文中描述的數(shù)據(jù)挖掘技術(shù)實(shí)驗(yàn)室靈活的進(jìn)行部署。
【關(guān)鍵詞】? ? 數(shù)據(jù)教育? ? 私有云? ? 虛擬實(shí)驗(yàn)室? ? EDUCloud
Abstract: In the past few years, cloud computing has been widely used in a variety of projects, providing new opportunities for research and development in the education industry. The emergence of a dynamically deployable virtual laboratory environment provides greater flexibility in the allocation of computing resources in educational institutions. In the form of a full sandbox lab, students gain “their own” internal network and full access to all internal machines, this gives them the flexibility to gather the experience of architectures,that is based on heterogeneous big data technologies. This article uses EDUCloud to provide a private cloud infrastructure that allows the data mining labs described in this article to be deployed flexibly.
Key words:Data Education; Private Cloud; Virtual Laboratory;EDUCloud
引言
2010年在加特納新興技術(shù)宣講會(huì)上,云計(jì)算,特別是私有云計(jì)算達(dá)到了“預(yù)期膨脹的頂峰”。如今這項(xiàng)技術(shù)已經(jīng)被廣泛接受,但由于其基本概念的多功能性,云計(jì)算不僅為商業(yè)提供了機(jī)會(huì),也為教育和研究應(yīng)用提供了機(jī)會(huì)。在專注于教育和研究的機(jī)構(gòu),供個(gè)別學(xué)生或小組使用的計(jì)算資源非常有限,大多數(shù)資源只能以共享的、預(yù)先安裝的環(huán)境的形式提供,通常一次可供多個(gè)講座使用。雖然這在本質(zhì)上降低了硬件和人員成本,但也要求對(duì)學(xué)生帳戶施加非常嚴(yán)格的權(quán)限,以防止用戶相互影響,從而有效地限制了練習(xí)和項(xiàng)目的可能性。在講授數(shù)據(jù)概念和技術(shù)時(shí),授予學(xué)生對(duì)某些系統(tǒng)的管理權(quán)限對(duì)于讓他們收集有關(guān)系統(tǒng)、存儲(chǔ)和網(wǎng)絡(luò)配置更改的影響的第一手經(jīng)驗(yàn)至關(guān)重要。面對(duì)這一情況,云計(jì)算可以提供一種由特殊的虛擬機(jī)(VMs)組成實(shí)驗(yàn)室的方法,虛擬機(jī)(VMs)被按需分組,虛擬機(jī)組及其網(wǎng)絡(luò)在沙盒環(huán)境中運(yùn)行,這些環(huán)境具有動(dòng)態(tài)分配和可擴(kuò)展的資源,可以很容易地運(yùn)行在不同的講座或?qū)嶒?yàn)。
本文以EDUCloud體系結(jié)構(gòu)為基礎(chǔ),它是一個(gè)用于數(shù)據(jù)分析、分布式系統(tǒng)(包括分布式信息系統(tǒng))的講座和實(shí)驗(yàn)室。它是面向服務(wù)的教學(xué),特別是微服務(wù)體系結(jié)構(gòu),而本文的創(chuàng)新點(diǎn)是教學(xué)EDUCloud中面向數(shù)據(jù)技術(shù)的部分。在實(shí)驗(yàn)室中進(jìn)行了初步的數(shù)據(jù)相關(guān)訓(xùn)練,這些訓(xùn)練側(cè)重于基于Apache Hadoop和Apache Spark等技術(shù)的數(shù)據(jù)挖掘和數(shù)據(jù)分析。對(duì)數(shù)據(jù)挖掘技術(shù)的關(guān)注以及關(guān)于初步經(jīng)驗(yàn)訓(xùn)練是本文的另一個(gè)創(chuàng)新點(diǎn)。
在國(guó)外最新的文獻(xiàn)中[1-5]可以看出,各大高校在其教育項(xiàng)目中使用云計(jì)算的場(chǎng)景正變得越來越多樣化。從通用的、協(xié)作的軟件即服務(wù)(SaaS——Software-as -a-Service)平臺(tái)(如谷歌的G教育套件[2]),再到專門的平臺(tái),例如用于教授高性能計(jì)算[3]或R平臺(tái)和Scilab平臺(tái)[5]。在文獻(xiàn)[5]中提到的CloudIA平臺(tái),它可以在單個(gè)系統(tǒng)中提供SaaS、PaaS(Platform-as-a-Service)和IaaS(Infrast ructure-as-a -Service)的組合服務(wù),在混合云環(huán)境中運(yùn)行,并根據(jù)需要擴(kuò)展到Amazon Web服務(wù)。在PaaS中的重點(diǎn)在于使用學(xué)生和講師可以訪問的自助門戶對(duì)單個(gè)虛擬機(jī)進(jìn)行ondemand部署。但是,如果沒有將它們與定制的內(nèi)部網(wǎng)絡(luò)結(jié)合在一起的概念,那么使用它們來建立一個(gè)功能齊全的微服務(wù)實(shí)驗(yàn)室是不切實(shí)際的。
本文的其余部分結(jié)構(gòu)如下:第二節(jié)概述了數(shù)據(jù)和服務(wù)實(shí)驗(yàn)室場(chǎng)景提出的需求;第三節(jié)描述了系統(tǒng)的體系結(jié)構(gòu);第四節(jié)詳細(xì)介紹了數(shù)據(jù)挖掘?qū)嶒?yàn)室的設(shè)置和其中使用的技術(shù),得出實(shí)驗(yàn)中存在的問題;第五節(jié)為從該項(xiàng)目中得到的結(jié)論,最后對(duì)未來的工作進(jìn)行了展望。
一、場(chǎng)景需求
為了實(shí)現(xiàn)給學(xué)生提供一個(gè)虛擬實(shí)訓(xùn)實(shí)驗(yàn)室的目標(biāo),整個(gè)系統(tǒng)的不同部分必須滿足許多需求(需求標(biāo)記設(shè)定為RQ1到RQ8以便于參考)。雖然其中許多是由服務(wù)場(chǎng)景本身強(qiáng)加的,但也有一些源于圍繞云本身的基礎(chǔ)設(shè)施。由于數(shù)據(jù)技術(shù)(如分布式數(shù)據(jù)庫系統(tǒng))或數(shù)據(jù)處理方法(如Map Reduce)在分布式信息系統(tǒng)中經(jīng)常使用,因此提供一個(gè)允許學(xué)生在多臺(tái)計(jì)算機(jī)中運(yùn)行此類技術(shù)的實(shí)驗(yàn)室(RQ1)。學(xué)生可能需要自行安裝數(shù)據(jù)庫系統(tǒng)等軟件,因此他們需要具有完全的根訪問權(quán)限(RQ2),允許他們安裝任意組件或部署容器(例如Docker)來進(jìn)行與數(shù)據(jù)相關(guān)的練習(xí)。
當(dāng)為用戶提供類似上述根級(jí)訪問的廣泛權(quán)限時(shí),關(guān)鍵是要防止每個(gè)虛擬實(shí)驗(yàn)室實(shí)例對(duì)其他虛擬實(shí)驗(yàn)室實(shí)例造成不利影響(RQ3),同時(shí)仍能在其計(jì)算機(jī)和學(xué)生計(jì)算機(jī)之間實(shí)現(xiàn)完全網(wǎng)絡(luò)訪問(RQ4)。此外,應(yīng)該可以為集成練習(xí)(RQ5)在各個(gè)實(shí)驗(yàn)室之間創(chuàng)建有限的連接,并在嚴(yán)重錯(cuò)誤配置(RQ6)的情況下重置實(shí)驗(yàn)室實(shí)例。由于數(shù)據(jù)技術(shù)實(shí)驗(yàn)室的重點(diǎn)是教學(xué)分布式大數(shù)據(jù)以及數(shù)據(jù)挖掘和分析相關(guān)概念,因此它應(yīng)該提供一些典型的分布式數(shù)據(jù)集處理、分布式數(shù)據(jù)存儲(chǔ)、分布式事務(wù)處理和分布式數(shù)據(jù)查詢(RQ7)的技術(shù)。在其初始版本中,重點(diǎn)應(yīng)放在分布式數(shù)據(jù)挖掘相關(guān)技術(shù)上。為了減少創(chuàng)建和運(yùn)行任意數(shù)量的實(shí)驗(yàn)室實(shí)例所需的管理工作量,系統(tǒng)應(yīng)與預(yù)先存在的身份驗(yàn)證基礎(chǔ)設(shè)施(LDAP——Lightweight Directory Access Protocol)(RQ8)集成。
二、系統(tǒng)體系結(jié)構(gòu)
EDUCloud目前的實(shí)施基于VMware vCloud Director(vCD)[6]以及附帶的產(chǎn)品,如ESXi(Hypervisor)和vSphere,這是因?yàn)樗A(yù)先存在的基礎(chǔ)設(shè)施和使用此技術(shù)堆棧的一些經(jīng)驗(yàn)。由于這引入了某些特定于平臺(tái)的限制和要求,EDU Cloud系統(tǒng)的架構(gòu)概念(見圖1)被設(shè)計(jì)成防止供應(yīng)商鎖定,圖1詳細(xì)說明了單個(gè)虛擬實(shí)驗(yàn)室(藍(lán)色)和公共服務(wù)(綠色)之間的連接。pfSense節(jié)點(diǎn)(橙色)也可以作為因特網(wǎng)或其他內(nèi)部網(wǎng)絡(luò)的網(wǎng)關(guān)。這是通過盡可能避免對(duì)特定于平臺(tái)的特性的依賴,保持實(shí)驗(yàn)室設(shè)置的概念和主要部分(尤其是虛擬機(jī)本身)在不同供應(yīng)商之間可移植來實(shí)現(xiàn)的。
vCD中的實(shí)驗(yàn)室以vApp的形式反映出來,vApp由一個(gè)或多個(gè)VMs(RQ1)及其網(wǎng)絡(luò)組成,包括內(nèi)部網(wǎng)絡(luò)以及與外部網(wǎng)絡(luò)的連接。因此,每個(gè)實(shí)驗(yàn)室都有自己的內(nèi)部網(wǎng)絡(luò),將虛擬機(jī)相互連接(RQ3),而無需從實(shí)驗(yàn)室外部直接訪問任何虛擬機(jī)。唯一例外的是,所有EDUCloud實(shí)驗(yàn)室中都有基于pfSense的[7]網(wǎng)關(guān)虛擬機(jī),它充當(dāng)網(wǎng)關(guān)和OpenVPN服務(wù)器,允許學(xué)生加入內(nèi)部網(wǎng)絡(luò)并提供互聯(lián)網(wǎng)接入(RQ4)。
在其他情況下獨(dú)立的vApp之間建立連接可以通過在講座中添加Common Services vApp來提供,這將創(chuàng)建到所有其他站點(diǎn)的點(diǎn)對(duì)點(diǎn)VPN連接講座中的實(shí)驗(yàn)室。雖然CommonServices本身可以提供額外的服務(wù),但其pfSense實(shí)例也允許被連接實(shí)驗(yàn)室使用網(wǎng)絡(luò)地址轉(zhuǎn)換(RQ5)提供服務(wù)。
三、實(shí)驗(yàn)
vCD和pfSense都允許使用認(rèn)證提供者(RQ8)的LDAP基礎(chǔ)設(shè)施,EDUCloud使用vCD中的權(quán)限系統(tǒng)來管理授權(quán),因?yàn)槟夸浭亲鳛橹蛔x資源提供的。然后,使用訪問vCD API的Java客戶機(jī)將單個(gè)vApp的權(quán)限同步到相應(yīng)的pfSense實(shí)例。作為一種替代方法,授權(quán)可以完全通過LDAP來處理,即使用于身份驗(yàn)證的目錄是只讀的,也可以使用中間身份和訪問管理解決方案,如Keycloop[8],它由EDUCloud管理員控制。所有vApp均從存儲(chǔ)在目錄中的模板實(shí)例化,可以根據(jù)需要在各個(gè)講座之間共享。每個(gè)模板代表實(shí)驗(yàn)室中所有VMs的完整快照,從而可以輕松部署其他實(shí)例,以及在發(fā)生致命錯(cuò)誤配置(RQ6)的情況下將現(xiàn)有實(shí)例重置為原始狀態(tài)。作為此潛在破壞性操作的替代方法,這將導(dǎo)致丟失所有尚未事先備份的工作,還可以在執(zhí)行有風(fēng)險(xiǎn)的操作之前創(chuàng)建已部署實(shí)驗(yàn)室實(shí)例的快照。
EDUCloud內(nèi)的數(shù)據(jù)實(shí)驗(yàn)室的目標(biāo)是為學(xué)生提供動(dòng)手操作的環(huán)境,以在分布式大數(shù)據(jù)處理(包括分布式存儲(chǔ),數(shù)據(jù)處理和數(shù)據(jù)挖掘)上獲得實(shí)踐經(jīng)驗(yàn)。擁有一個(gè)分布式環(huán)境也很重要,該環(huán)境還允許探索與分布有關(guān)的問題,即節(jié)點(diǎn)故障。作為存儲(chǔ)數(shù)據(jù)的基礎(chǔ),我們使用了受GFS啟發(fā)的Apache Hadoop和包含的HDFS文件系統(tǒng)[9]。HDFS是面向塊的復(fù)制文件系統(tǒng)。每個(gè)組vApp中使用一個(gè)實(shí)例,在公共服務(wù)vApp中使用一個(gè)實(shí)例。這個(gè)想法是給每個(gè)小組自己的分布式文件系統(tǒng)進(jìn)行實(shí)驗(yàn)。在此,該組具有完全權(quán)限,并且可以在不干擾其他組的情況下存儲(chǔ),更改和刪除數(shù)據(jù)。甚至允許以例如存儲(chǔ)復(fù)制因子為3的文件,探索文件副本塊的位置并關(guān)閉某些節(jié)點(diǎn)。
下一層是通用數(shù)據(jù)處理框架。Apache Hadoop附帶了Map / Reduce [10],它可能是該領(lǐng)域中最知名的框架,盡管由于處理步驟之間的磁盤I / O繁重而導(dǎo)致了已知的限制和性能問題。此外,使用Apache Spark [11]作為Hadoop的替代方案,支持對(duì)存儲(chǔ)在所有群集節(jié)點(diǎn)RAM上的數(shù)據(jù)進(jìn)行內(nèi)存內(nèi)處理。同時(shí)安裝兩個(gè)框架可以教給學(xué)生這些問題。對(duì)于Hadoop和Spark,都使用YARN [12]作為資源管理器。
這兩個(gè)系統(tǒng)都預(yù)先安裝在每個(gè)組vApp上,使學(xué)生可以直接開始與數(shù)據(jù)處理相關(guān)的練習(xí)。他們具有對(duì)自己的集群的完全root訪問權(quán)限,因此他們還可以使用Hadoop或Spark的配置運(yùn)行實(shí)驗(yàn)。萬一它們使安裝崩潰,則可以安裝vApp模板的新副本。
以下是具體實(shí)訓(xùn):
實(shí)驗(yàn)1: Warm up
本實(shí)驗(yàn)的目標(biāo)是學(xué)習(xí)如何使用環(huán)境,設(shè)置所需的VPN連接以及通過存儲(chǔ)和檢索文件來獲得HDFS的初步經(jīng)驗(yàn)。HDFS Web UI用于瀏覽文件塊及其副本的物理位置。
實(shí)驗(yàn)2:Map/Reduce
在本實(shí)驗(yàn)中,學(xué)生必須實(shí)施兩個(gè)基本的Map / Reduce工作才能學(xué)習(xí)Map / Reduce的思維方式。第一項(xiàng)任務(wù)是經(jīng)典單詞計(jì)數(shù)問題的簡(jiǎn)單變體,并進(jìn)行了一些預(yù)處理以避免復(fù)制可用的解決方案,而第二項(xiàng)任務(wù)則更為復(fù)雜。必須評(píng)估包含友誼數(shù)據(jù)的數(shù)據(jù)集,以找到每對(duì)人的所有共同朋友。該設(shè)置需要兩個(gè)Map / Reduce作業(yè)才能順序運(yùn)行。
實(shí)驗(yàn)3:Spark
這里的重點(diǎn)是獲得Spark的經(jīng)驗(yàn)并比較Spark和Map / Reduce。該任務(wù)是使用Spark重新實(shí)現(xiàn)Lab 2的第二個(gè)任務(wù)。由于spark允許更自然的計(jì)算鏈接,并且對(duì)數(shù)據(jù)具有更豐富的基本操作集,因此該解決方案更易于理解。另一個(gè)目標(biāo)是比較運(yùn)行時(shí)并了解Spark和Map / Reduce之間的體系結(jié)構(gòu)差異。
實(shí)驗(yàn)4:Iterative jobs
該實(shí)驗(yàn)室專注于迭代作業(yè),這在Map / Reduce中通常是有問題的。迭代作業(yè)的典型示例是K均值聚類。該算法計(jì)算新的群集質(zhì)心,并在每一輪中將所有點(diǎn)分配給這些質(zhì)心。該任務(wù)是使用131 Map / Reduce和Spark兩次實(shí)施此算法。 Map / Reduce版本通過在每次迭代中將多個(gè)中間結(jié)果寫入磁盤來產(chǎn)生大量I / O。Spark版本可以將所有數(shù)據(jù)保留在內(nèi)存中,并分布在整個(gè)群集中。
實(shí)驗(yàn)5:Failure tolerance
在分布式設(shè)置中,節(jié)點(diǎn)或鏈接故障是日常操作的正常部分,每個(gè)分布式作業(yè)都必須能夠解決此類問題,而無需重新啟動(dòng)整個(gè)作業(yè)。因此,故障管理(包括在其他節(jié)點(diǎn)上重新啟動(dòng)部分工作并使用檢查點(diǎn)數(shù)據(jù)的能力)是框架的重要組成部分。在本實(shí)驗(yàn)中,學(xué)生將探索這些功能,并比較Hadoop和Spark的容錯(cuò)能力。學(xué)生將數(shù)據(jù)存儲(chǔ)在HDFS中,通過停止VM殺死數(shù)據(jù)節(jié)點(diǎn),并探索在中斷期間和重新啟動(dòng)發(fā)生故障的節(jié)點(diǎn)之后會(huì)發(fā)生什么情況。此外,運(yùn)行Map / Reduce和Spark作業(yè)會(huì)遇到節(jié)點(diǎn)故障。
實(shí)驗(yàn)6:Data Mining
通常,數(shù)據(jù)學(xué)家不會(huì)實(shí)現(xiàn)基本的數(shù)據(jù)挖掘算法。標(biāo)準(zhǔn)方法是使用軟件包或庫提供的現(xiàn)有實(shí)現(xiàn)。在這些練習(xí)中,學(xué)生探索基于Spark的MLLib [13],以使用決策樹和邏輯回歸等算法運(yùn)行分類任務(wù)。
在該項(xiàng)目的高峰期,大約有15名學(xué)生在三個(gè)小組中平均每周工作1.5天,在實(shí)驗(yàn)過程中出現(xiàn)了以下的問題:由于數(shù)據(jù)庫日志太大而造成凍結(jié)云;學(xué)生的初始設(shè)置不正確:他們采取了“便捷的方式”,因?yàn)樗麄儧]有足夠仔細(xì)地查看設(shè)置建議,這確實(shí)在項(xiàng)目中期對(duì)他們?cè)斐闪撕艽蟮挠绊?不兼容/部分完整(子)產(chǎn)品版本等。
四、結(jié)論與展望
EDUCloud提供了一個(gè)可靠的,可擴(kuò)展的私有云解決方案,用于托管虛擬實(shí)驗(yàn)室,這些虛擬實(shí)驗(yàn)室用于教授微服務(wù)和計(jì)算機(jī)科學(xué)領(lǐng)域的其他主題。它為學(xué)生提供了對(duì)沙盒環(huán)境中的虛擬機(jī)和網(wǎng)絡(luò)的根訪問權(quán)限,從而獲得動(dòng)手實(shí)踐的經(jīng)驗(yàn)。同時(shí),它可以使講師和導(dǎo)師以最少的管理工作來設(shè)計(jì)更復(fù)雜的運(yùn)動(dòng)任務(wù),因?yàn)榭梢暂p松地從預(yù)制模板中實(shí)例化新實(shí)驗(yàn)室。已經(jīng)提供了一個(gè)專門的實(shí)驗(yàn)室設(shè)置作為在EDUCloud上運(yùn)行的虛擬實(shí)驗(yàn)室的示例,用于教授(可能很大的)數(shù)據(jù)挖掘和分析的EDUCloud概念。
該實(shí)驗(yàn)室為學(xué)生提供了用于數(shù)據(jù)挖掘?qū)嶒?yàn)開發(fā)的預(yù)配置堆棧,利用諸如Apache Hadoop和Apache Spark之類的技術(shù)來展示數(shù)據(jù)挖掘和分析特定的技術(shù)和模式。單個(gè)實(shí)驗(yàn)室中兩個(gè)堆棧的存在以及已部署實(shí)驗(yàn)室實(shí)例的互連性也為學(xué)生群體之間的比較練習(xí)提供了機(jī)會(huì)。
盡管EDUCloud已經(jīng)能夠跨多個(gè)服務(wù)器進(jìn)行橫向擴(kuò)展,但其當(dāng)前實(shí)施方式將其限制為私有云功能。 當(dāng)例如由于調(diào)度問題而必須并行運(yùn)行大量實(shí)驗(yàn)室實(shí)例時(shí),這可能變得特別具有挑戰(zhàn)性,這可能超出可用硬件的計(jì)算資源。為了緩解這些問題,即將到來的項(xiàng)目包括將EDUCloud遷移到混合云概念,使其可以按需使用公共云資源進(jìn)行橫向擴(kuò)展,同時(shí)保持對(duì)敏感應(yīng)用程序的隱私保護(hù)。遷移的一部分是對(duì)開源虛擬化平臺(tái)和框架(例如Proxmox [14],尤其是OpenStack [15])的評(píng)估,后者將允許與各種公共云提供商進(jìn)行無縫集成。VMware組件是當(dāng)前系統(tǒng)唯一的專有,封閉源代碼部分,切換到這些解決方案之一可以使EDUCloud的整個(gè)堆棧僅在開源軟件上運(yùn)行。除此之外,進(jìn)一步的研究主題包括為計(jì)算機(jī)科學(xué)的其他領(lǐng)域開發(fā)新的實(shí)驗(yàn)室概念,提高平臺(tái)的彈性和改善資源調(diào)度。后者目前由人工處理,并計(jì)劃通過將其與實(shí)驗(yàn)室和講座的實(shí)時(shí)時(shí)間表同步,并將其與預(yù)定平臺(tái)集成以處理項(xiàng)目和其他活動(dòng)而實(shí)現(xiàn)自動(dòng)化。特別是在EDUCloud的數(shù)據(jù)技術(shù)相關(guān)部分中,我們還計(jì)劃包括針對(duì)傳統(tǒng)分布式關(guān)系數(shù)據(jù)庫管理技術(shù)的實(shí)驗(yàn)室,例如,有關(guān)數(shù)據(jù)分段,復(fù)制,分布式查詢處理和分布式事務(wù)的技術(shù)和練習(xí)。另一個(gè)實(shí)驗(yàn)室應(yīng)涵蓋不同的NoSQL范式和數(shù)據(jù)庫管理系統(tǒng)。
參? 考? 文? 獻(xiàn)
[1] Fenn, Jackie & Lehong, Hung. (2011). Hype Cycle for Emerging Technologies, 2011.
[2] Google for Education:[J]. Google, 2012.
[3] S. S. Foley, D. Koepke, J. Ragatz, C. Brehm, J. Regina, and J. Hursey, “Onramp: A web-portal for teaching parallel and distributed computing,” Journal of Parallel and Distributed Computing, vol. 105, pp. 138–149, 2017.
[4] K. Chine, “Learning math and statistics on the cloud, towards an ec2-based google docs-like portal for teaching / learning collaboratively with r and scilab,” in 2010 10th IEEE International Conference on Advanced Learning Technologies. IEEE, 2010, pp. 752–753.
[5] F. Doelitzscher, A. Sulistio, C. Reich, H. Kuijs, and D. Wolf, “Private cloud for collaboration and e-learning services: From iaas to saas,” Computing, vol. 91, no. 1, pp. 23–42, 2011.
[6] Cartwright H . VMware vSphere 5.x datacenter design cookbook over 70 recipes to design a virtual datacenter for performance, availability, manageability, and recoverability with VMware vSphere 5.x[J]. 2014.
[7] Krupa C. Patel, and Dr. Priyanka Sharma. “A Review paper on pfsense – an Open source firewall introducing with different capabilities & customization.” International Journal Of Advance Research And Innovative Ideas In Education 3.2(2017) : 635-641.
[8] Chen W . Does the Colour of the Cat Matter? The Red Hat Strategy in Chinas Private Enterprises[J]. Management & Organization Review, 2010, 3(1):55-80.
[9] S. Ghemawat, H. Gobioff, and S.-T. Leung, “The Google File System,” in Proceedings of the Nineteenth ACM Symposium on Operating Systems Principles, ser. SOSP 03. New York, NY, USA: ACM, 2003, pp. 29–43.
[10] J. Dean and S. Ghemawat, “MapReduce: simplifified data processing on large clusters,” Communications of the ACM, vol. 51, no. 1, pp. 107–113, 2008.
[11] M. Zaharia, R. S. Xin, P. Wendell, T. Das, M. Armbrust, A. Dave, X. Meng, J. Rosen, S. Venkataraman, and M. J. Franklin, “Apache spark: a unifified engine for big data processing,” Communications of the ACM, vol. 59, no. 11, pp. 56–65, 2016.
[12] V. K. Vavilapalli, A. C. Murthy, C. Douglas, S. Agarwal, M. Konar, R. Evans, T. Graves, J. Lowe, H. Shah, and S. Seth, “Apache hadoop yarn: Yet another resource negotiator,” in Proceedings of the 4th annual Symposium on Cloud Computing. ACM, 2013, p. 5.
[13] X. Meng, J. Bradley, B. Yavuz, E. Sparks, S. Venkataraman, D. Liu, J. Freeman, D. B. Tsai, M. Amde, and S. Owen, “Mllib: Machine learning in apache spark,” The Journal of Machine Learning Research, vol. 17, no. 1, pp. 1235–1241, 2016.
[14] Sarup J , Shukla V . Web-Based solution for Mapping Application using Open-Source Software Server[J]. International Journal of Informatics & Communication Technology, 2012, 1(2):91-99.
[15] Donnelly, Caroline. OpenStack Foundation sets to build enterprise trust in open source clouds.[J]. Computer Weekly, 2016.