云計算相關(guān)概述及NoSQL技術(shù)介紹_第1頁
云計算相關(guān)概述及NoSQL技術(shù)介紹_第2頁
云計算相關(guān)概述及NoSQL技術(shù)介紹_第3頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、云計算相關(guān)概述及 NoSQL技術(shù)介紹1.1云計算相關(guān)概述云計算技術(shù)的出現(xiàn)是并行計算技術(shù)、軟件技術(shù)、網(wǎng)絡(luò) 技術(shù)發(fā)展的必然結(jié)果。計算機(jī)的并行化是它的萌芽期,人 們不滿足于CPU摩爾定率的增長速度,希望把多個函數(shù)并 聯(lián)起來,從而獲得更快的計算速度。這種方法被證明是相 當(dāng)成功的。云計算的概念及優(yōu)點(diǎn)(1)云計算的概念云計算能為用戶提供按需分配的計算能力、存儲能力以 及應(yīng)用能力,最后的目的是方便用戶,大大的降低用戶的軟 硬件采購費(fèi)用。云計算是分布處理、并行處理、網(wǎng)格計算的 綜合發(fā)展,也是虛擬化、SaaS(軟件服務(wù)),HAS(硬件服務(wù)).PaaS(平臺服務(wù))等綜合應(yīng)用的結(jié)果 ?;蛘哒f是這些計算機(jī)科學(xué)概念的商

2、業(yè)實(shí)現(xiàn)。許多跨國信 息技術(shù)行業(yè)的公司如 IBM,Yahoo和Google等正在使用云計 算的概念兜售自己的產(chǎn)品和服務(wù)。只要我們有一部手機(jī)或者 一臺筆一記本,通過瀏覽器客戶端就可以得到自己想要的服 務(wù),甚至包括像超級計算這樣的服務(wù)。其實(shí),在這個方面用戶才是云計算的擁有者。簡單的說,云計算就是利用互聯(lián)網(wǎng)上處理數(shù)據(jù)的能力與大型數(shù)據(jù)計算中心軟件,把復(fù)雜的計 算脫離開單機(jī),運(yùn)行到互聯(lián)網(wǎng)上。(2)云計算的優(yōu)點(diǎn)任何云計算的分析都必須致力于這一新興技術(shù)所帶來 的優(yōu)點(diǎn)和缺點(diǎn)。云計算有很多優(yōu)點(diǎn)。1)更低成本的用戶電腦及軟件。由于應(yīng)用程序在云中而不是在臺式機(jī)上運(yùn)行,臺式電腦并不需要傳統(tǒng)的桌面軟件 所要求的處理能力和

3、硬盤空間。因此,用戶的電腦可以是低 價的,具有較小的硬盤,更少的內(nèi)存,更高的處理器等【9(用戶也無需為自己的臺式機(jī)購買單獨(dú)的軟件包,只有實(shí)際使 用應(yīng)用程序的員工需要訪問云中的應(yīng)用程序。即使使用基于 Web的應(yīng)用和使用類似的桌面軟件相同,IT人員也節(jié)省了在組織中的每個桌面上安裝和維護(hù)這些程序的費(fèi)用。2)更高的性能和較強(qiáng)的計算能力。在云計算中計算機(jī)的啟動和運(yùn)行速度將會更快,因?yàn)樗麄冎恍鑼⑸倭康某绦蚝?進(jìn)程加載到內(nèi)存中。云計算使用了數(shù)據(jù)副本容錯、計算節(jié)點(diǎn) 同構(gòu)可互換等措施來保障服務(wù)的可靠性,使云計算比本地計 算機(jī)更可靠。同樣,在云計算中你不只局限于一臺單獨(dú)電腦 做事情,我們可以利用成千上萬臺計算機(jī)和

4、服務(wù)器的能力, 能執(zhí)行超級計算類的任務(wù)。所以,云計算賦予用戶前所未有 的計算能力,可以嘗試完成比桌面上更大的任務(wù)10。3)無限的存儲容量和高效的數(shù)據(jù)安全。臺式機(jī)和筆記本電腦即將用完的存儲空間,與云中可以使用的數(shù)百 PB(100萬千兆字節(jié))容量相比,它們是那么的微不足道。由于云計 算提供了無限的存儲容量,與單獨(dú)的臺式機(jī)相比,在硬盤崩 潰時不至于摧毀所有的數(shù)據(jù)11。云中的數(shù)據(jù)是自動復(fù)制的, 不會帶來任何損失。即使你的計算機(jī)崩潰了,數(shù)據(jù)仍在云里,仍然可以訪問。云計算在一定程度上保持了數(shù)據(jù)的安全性。4)改進(jìn)了操作系統(tǒng)之間的兼容性和增強(qiáng)了群組織間的 協(xié)作。在云里不針對特定的應(yīng)用,在云的支撐下可以構(gòu)造出各

5、種應(yīng)用。操作系統(tǒng)并不重要,可以將Windows計算機(jī)連接到云,和運(yùn)行的其他操作系統(tǒng) (例如Unix、Linux等)共享文 件。能夠讓許多用戶在文檔和項(xiàng)目上協(xié)作的能力也是云計算 的優(yōu)勢之一。在不同的地理位置,不同的工作空間里共同做 一個項(xiàng)目工作,群組的協(xié)作意味著的大多數(shù)群組項(xiàng)目的更快 完成。因?yàn)樗瓜嚓P(guān)的人員全部參與,不受地理位置、空間 因素的限制。利用云計算,任何人在任何地點(diǎn)都可以實(shí)時協(xié) 作。5)擴(kuò)展性強(qiáng)及用戶使用方便。云的規(guī)??梢愿鶕?jù)實(shí)際 情況進(jìn)行伸縮,滿足用戶和應(yīng)用增長的需求。同時也消除了 用戶對特定設(shè)備的依賴,憑借云,用戶的應(yīng)用和文檔仍然跟 隨用戶。用便攜的設(shè)備,同樣使用自己的應(yīng)用和文檔

6、。不用 按照特定的設(shè)備購買特定版本的程序,或者按照設(shè)備特定的 格式保存文檔?,F(xiàn)有的云計算平臺現(xiàn)有的各個云計算平臺技術(shù)主要可以劃分為3個,以數(shù)據(jù)存儲為主的存儲型云平臺,以數(shù)據(jù)處理為主的計算型云平 臺以及計算和數(shù)據(jù)存儲處理兼顧的綜合云計算平臺。(1)存儲型一數(shù)據(jù)密集云平臺存儲型一數(shù)據(jù)密集云計算平臺就是主要以提供數(shù)據(jù)存 儲、搜索服務(wù)為主的云計算平臺,通過為客戶提供安全便利 的云存儲服務(wù)來贏取客戶12。云存儲是利用云計算中服務(wù)器 集群強(qiáng)大的存儲能力為客戶保存數(shù)據(jù),用戶不需要知道自己 的文件是存儲在一個服務(wù)器節(jié)點(diǎn)上還是多個節(jié)點(diǎn)之中,也不 需要知道節(jié)點(diǎn)是否可信,這些都將由云服務(wù)器來處理解決。 云存儲的實(shí)現(xiàn)

7、并不存在技術(shù)上的障礙,它需要云設(shè)備、云軟 件、云服務(wù)等有機(jī)地集合在一起、為用戶提供無障礙的云服 務(wù)。現(xiàn)有的云計算提供商都提供基本的云存儲服務(wù),這些存 儲服務(wù)都是基于各自提出的分布式文件存儲系統(tǒng)。Google擁有如今最大的信息庫和知識庫,對海量存儲有自己的獨(dú)特之 處,提出的GFS文件存儲系統(tǒng)能夠?qū)崿F(xiàn)對文件系統(tǒng)實(shí)時監(jiān)控、 容錯檢測、自動恢復(fù)等功能,是建立在不可信節(jié)點(diǎn)的存儲條 件下的相對優(yōu)良的文件系統(tǒng)13。它對于大型的文件的管理是 高效的,優(yōu)化程度也很高,但是對于小文件的存儲并沒有提 供有效地優(yōu)化方案。使得它并不能完全適應(yīng)云計算環(huán)境下的 海量的小文件存儲。FastDFS是一個開源的文件系統(tǒng),也在 大

8、容量存儲和負(fù)載均衡上做的很優(yōu)秀,但是在小文件存儲上 仍沒有合理地優(yōu)化。(2) 計算型一計算密集云計算平臺計算型一計算密集云計算平臺就是主要以數(shù)據(jù)計算、處 理服務(wù)為主的云計算平臺,為用戶提供相應(yīng)級別的高性能計 算環(huán)境。用戶還可以根據(jù)自己的需求選擇相應(yīng)的計算能力 14。通過云計算平臺的高性能計算能力,用戶和企業(yè)均能獲 得與現(xiàn)有的大型機(jī)相媲美的計算能力,進(jìn)行大規(guī)模的數(shù)據(jù)處 理計算,方便了企業(yè)和個體用戶。(3) 綜合云計算平臺綜合云計算平臺是將云計算強(qiáng)大的存儲與超能力的計 算有效地整合,在合理利用云集群存儲節(jié)點(diǎn)的存儲空間的同 時,不浪費(fèi)各個節(jié)點(diǎn)的計算能力,通過相應(yīng)的策略實(shí)現(xiàn)集群 存儲和運(yùn)算能力的整合,

9、對數(shù)據(jù)進(jìn)行處理計算15。云計算的關(guān)鍵技術(shù)基于云計算特點(diǎn)以及特有的開發(fā)平臺方式,概述了云計 算與網(wǎng)格計算以及傳統(tǒng)的超級計算的區(qū)別,總結(jié)了云計算的 關(guān)鍵技術(shù):編程模式、數(shù)據(jù)存儲技術(shù)和管理技術(shù)、虛擬化技 術(shù)。云計算以數(shù)據(jù)為中心,是一種數(shù)據(jù)密集型的新型的超級 計算方式。下面對這三大關(guān)鍵技術(shù)作一個介紹。(1)簡單方便的編程模式在云計算系統(tǒng)中,簡化了系統(tǒng)處理過程的復(fù)雜性。編程 模式方便簡單,為用戶享受云計算提供的云后端資源提供了 方便。簡單的編程模式成為云計算發(fā)展的未來趨勢,后臺的 并行執(zhí)行和任務(wù)調(diào)度提供了開源的代碼,使編程人員可以更 專注于業(yè)務(wù)邏輯,分析和編寫出更實(shí)用的應(yīng)用程序佝。Google提出的Ma

10、pReduce編程模式是當(dāng)今比較流行的云計算 編程模式。在云計算、并行處理、和多核計算上MapReduce都具有良好的性能,但僅適用于編寫數(shù)據(jù)處理和高度并行化 的程序。MapReduce技術(shù)已經(jīng)應(yīng)用在 Hadloop的平臺上,下圖給出了 MapReduce程序的具體執(zhí)行過程圖1.1 MapReduce的具體執(zhí)行過程(2)數(shù)據(jù)的存儲及管理由于云計算需要滿足大量的用戶需求,并行的處理用戶服務(wù)請求,因此在云中的分布式數(shù)據(jù)存儲技術(shù)具有高吞吐率,正好能及時滿足特點(diǎn)。同時云計算中也采用冗余存儲技 術(shù)提高存儲數(shù)據(jù)的可靠性。現(xiàn)在云計算數(shù)據(jù)的存儲技術(shù)主要有 Google的 GFS和 Hadloop團(tuán)隊(duì)開發(fā)的開源

11、體系 HDFS (Hadoop Distributed File System)17。云計算對大量的數(shù)據(jù)進(jìn)行了高效的管理、讀取和分析,對數(shù)據(jù)的讀操作遠(yuǎn)高于數(shù)據(jù)的刷新頻率,所以,云計算的數(shù)據(jù)管理技術(shù)是比較優(yōu)先 的數(shù)據(jù)管理模式。其中在現(xiàn)有的數(shù)據(jù)有力技術(shù)中主要有Google 的 BigTable。隨著技術(shù)的進(jìn)一步發(fā)展,數(shù)據(jù)的更新速率和隨機(jī)讀取速 率的提高將成為數(shù)據(jù)管理技術(shù)的面臨的主要問題。下圖給出 了 GFS的數(shù)據(jù)管理技術(shù)中數(shù)據(jù)流的寫操作與寫控制分開圖 示。廠一控制流Mosier圖1.2寫控制信號和寫數(shù)據(jù)流(3) 可行的虛擬化技術(shù) 云計算關(guān)鍵技術(shù)之一是虛擬化技術(shù)。虛擬機(jī)對云計算資源的管理具有特殊的作

12、用。虛擬機(jī)是一類特殊的軟件按,能 夠完全模擬硬件的執(zhí)行,以及在上面運(yùn)行操作系統(tǒng),執(zhí)行環(huán) 境與物理環(huán)境隔離,有利于應(yīng)用程序的部署18。在云計算環(huán)境中,虛擬化技術(shù)有如下良好的特性:1)與虛擬機(jī)平臺運(yùn)行的應(yīng)用程序同時進(jìn)行,云計算中的計算平臺可以動態(tài)的定位到所需的物理平臺。2)能夠節(jié)約主機(jī)資源,將多個負(fù)載次要的虛擬機(jī)節(jié)點(diǎn)合并到同一個物理節(jié)點(diǎn)上。在不同的物理節(jié)點(diǎn)上實(shí)施動態(tài)遷 移,能夠獲得負(fù)載平衡。3)在資源管理和部署上比較靈活,可以將虛擬機(jī)直接部署到物理計算平臺上,或者直接給用戶提供虛擬機(jī)資源服務(wù),如亞馬遜的 EC2虛擬化技術(shù)在云計算中應(yīng)用,提高了云計算資源管理的效率,動態(tài)的為用戶提供了及時的服務(wù)。1.

13、2 No SQL 技術(shù)1.1.1No SQL技術(shù)的概念與定義NoSQL至今也沒有統(tǒng)一的定義,這里引用Wikipedia 的定義:NoSQL(有時擴(kuò)展為“ not only SQL ”)是不同于傳統(tǒng)關(guān) 系數(shù)據(jù)管理模型的非關(guān)系松散數(shù)據(jù)存儲類型,不使用SQL作為其查詢語言。這種數(shù)據(jù)存儲不需要固定的表結(jié)構(gòu),不支持表之間的連接操作和水平分割,也不會保證ACID(原子性、一致性、隔離性和持久性)的全部滿足19。1.1.2N0 SQL技術(shù)的發(fā)展及趨勢隨著計算機(jī)和網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,互聯(lián)網(wǎng)日益普及, 網(wǎng)絡(luò)數(shù)據(jù)成指數(shù)形式增長。同樣,在科學(xué)領(lǐng)域,新技術(shù)層出 不窮,更新?lián)Q代的周期越來越短,高技術(shù)的設(shè)備帶來的是更 大

14、規(guī)模的數(shù)據(jù)量,這樣我們進(jìn)入了海量數(shù)據(jù)時代。如何存儲 和管理這些海量數(shù)據(jù)就成為當(dāng)下有待解決的大挑戰(zhàn)。計算機(jī) 領(lǐng)域的大牛們面對這樣的挑戰(zhàn)也是各顯神通,新的概念也應(yīng) 運(yùn)而生20。云計算就是其中重要的一例,給計算機(jī)領(lǐng)域帶來 新的革命,它完全改變了數(shù)據(jù)的存儲模式。云計算概念的出 現(xiàn)對技術(shù)的發(fā)展起著極大地推動作用。各國也開始架構(gòu)以云 計算為基礎(chǔ)的基礎(chǔ)架構(gòu),隨著Google等企業(yè)的推動,已經(jīng)出現(xiàn)了很多基于云計算平臺的現(xiàn)實(shí)應(yīng)用。云計算的核心思想是將分散的海量計算資源通過網(wǎng)絡(luò) 互連形成抽象的資源池,通過統(tǒng)一管理和調(diào)度按需向用戶提 供服務(wù),用戶層面云計算資源的使用就相當(dāng)于生活中用水用 電一樣,按需隨時取用,相當(dāng)方

15、便。不過現(xiàn)在這僅僅是一個 美好的愿景,實(shí)際操作中存在很多問題,最為突出的是海量 數(shù)據(jù)存儲和容錯處理。此外,云計算系統(tǒng)往往是采用廉價、 不可靠的計算機(jī)來搭建集群,因此出錯幾率高于傳統(tǒng)的分布 式數(shù)據(jù)庫中的高性能服務(wù)器。這個問題隨著集群規(guī)模的增大顯得尤為突出。為了解決云計算系統(tǒng)實(shí)施過程中遇到的問 題,出現(xiàn)了很多以云概念為基礎(chǔ)的平臺,其中包括云存儲平 臺,而NoSQL數(shù)據(jù)庫就是其中之一。NoSQL數(shù)據(jù)庫是在云計算的興起以及關(guān)系型數(shù)據(jù)庫面對海量數(shù)據(jù)出現(xiàn)瓶頸的推動 下成長起來的。它打破了傳統(tǒng)關(guān)系數(shù)據(jù)庫的范式約束。關(guān)系 數(shù)據(jù)庫的許多主要特性面對當(dāng)前的挑戰(zhàn)非但無用武之地,反 倒掣肘系統(tǒng)的功能及性能。比如對于數(shù)

16、據(jù)庫事務(wù)一致性需 求、寫實(shí)時性和讀實(shí)時性的需求以及復(fù)雜的SQL查詢,特別是多表關(guān)聯(lián)查詢等等。因此,各種NoSQL數(shù)據(jù)庫放棄了關(guān)系數(shù)據(jù)庫強(qiáng)大的SQL查詢語言和事務(wù)一致性及范式的約束,或 采用面向文檔的方式以保證系統(tǒng)滿足海量數(shù)據(jù)存儲的同時 具備良好的查詢性能,或采用Key-Value數(shù)據(jù)格式的存儲以滿足極高的并發(fā)讀寫性能,又或者針對可擴(kuò)展性展開的可伸 縮數(shù)據(jù)庫以增強(qiáng)其彈性的擴(kuò)展能力。近年來,隨著NoSQL運(yùn)動的蓬勃發(fā)展,人們從初期的打破傳統(tǒng)的關(guān)系數(shù)據(jù)庫約束逐 漸演變成對當(dāng)今數(shù)據(jù)存儲及管理可行且高效靈活的方案的 探求,這與云數(shù)據(jù)管理的目的是極為相似的。在云數(shù)據(jù)管理 中,我們同樣要解決的是傳統(tǒng)的關(guān)系數(shù)

17、據(jù)庫在數(shù)據(jù)及查詢壓 力下所暴露出的實(shí)時插入性能、海量存儲能力、查詢檢索速 度以及無縫擴(kuò)展等問題。NoSQL數(shù)據(jù)庫與云數(shù)據(jù)管理兩者殊途同歸,從滿足應(yīng)用需求的角度來說,最終都渴求找到一種 集一致性、可用性和高容錯性于一身的數(shù)據(jù)存儲及管理方案 以應(yīng)對日益高漲的數(shù)據(jù)管理需求。1.1.3N0 SQL的關(guān)鍵技術(shù)研究(1) CAP理論.C: Consistency 一致性.A: Availability 可用性.P: Partition Tolerance分區(qū)容忍性一致性是指一個系統(tǒng)在操作完成之后能否以及怎樣 保持一致狀態(tài)。如果一些寫操作完成更新之后所有讀者都能 在共享數(shù)據(jù)源中看到更新,則這個分布式系統(tǒng)被認(rèn)為是典型 的一致性系統(tǒng)21??捎眯?,尤其是高可用性意味著在例如集群中節(jié)點(diǎn)失效 或者軟

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論