華為云計(jì)算技術(shù)與應(yīng)用 課件 第8、9章 華為云數(shù)據(jù)庫服務(wù)、華為云計(jì)算綜合實(shí)踐_第1頁
華為云計(jì)算技術(shù)與應(yīng)用 課件 第8、9章 華為云數(shù)據(jù)庫服務(wù)、華為云計(jì)算綜合實(shí)踐_第2頁
華為云計(jì)算技術(shù)與應(yīng)用 課件 第8、9章 華為云數(shù)據(jù)庫服務(wù)、華為云計(jì)算綜合實(shí)踐_第3頁
華為云計(jì)算技術(shù)與應(yīng)用 課件 第8、9章 華為云數(shù)據(jù)庫服務(wù)、華為云計(jì)算綜合實(shí)踐_第4頁
華為云計(jì)算技術(shù)與應(yīng)用 課件 第8、9章 華為云數(shù)據(jù)庫服務(wù)、華為云計(jì)算綜合實(shí)踐_第5頁
已閱讀5頁,還剩78頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第8章

華為云數(shù)據(jù)庫服務(wù)組編華為技術(shù)有限公司華為云計(jì)算技術(shù)與應(yīng)用8.1傳統(tǒng)數(shù)據(jù)庫8.2云數(shù)據(jù)庫服務(wù)8.3華為云數(shù)據(jù)庫服務(wù)學(xué)習(xí)要點(diǎn)8.4華為云數(shù)據(jù)庫實(shí)踐8.1.1 數(shù)據(jù)庫技術(shù)概念如圖所示,數(shù)據(jù)庫技術(shù)包含5個(gè)相關(guān)概念,即數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng),以及數(shù)據(jù)庫應(yīng)用,下面將分別對(duì)其進(jìn)行介紹。數(shù)據(jù)庫技術(shù)是應(yīng)數(shù)據(jù)管理任務(wù)的需要而產(chǎn)生的。數(shù)據(jù)庫技術(shù)是進(jìn)行數(shù)據(jù)庫管理的有效技術(shù),它主要研究如何對(duì)數(shù)據(jù)進(jìn)行科學(xué)、高效的管理,從而為人們提供可共享的、安全的、可靠的數(shù)據(jù)。8.1.2 數(shù)據(jù)如圖所示,“88”這個(gè)數(shù)據(jù)既可以是一個(gè)部門的人數(shù),也可以是某人一門課的考試成績,沒有語義的存在,數(shù)據(jù)的含義就會(huì)變得混亂,無法具體體現(xiàn)一個(gè)數(shù)據(jù)。數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲(chǔ)的基本對(duì)象,是用于描述事物的符號(hào)記錄。描述事物的符號(hào)可以是數(shù)字,也可以是文字、圖形、圖像、音頻、視頻等,數(shù)據(jù)有多種表現(xiàn)形式,但它們都可以在經(jīng)過數(shù)字化后存入計(jì)算機(jī)?,F(xiàn)代計(jì)算機(jī)系統(tǒng)的數(shù)據(jù)概念是廣義的,僅有數(shù)據(jù)的值并不能完全表達(dá)數(shù)據(jù)的具體內(nèi)容,因此需要一個(gè)新的描述性數(shù)據(jù)來對(duì)數(shù)據(jù)進(jìn)行描述。數(shù)據(jù)的描述性數(shù)據(jù),稱為語義,也就是數(shù)據(jù)的含義,數(shù)據(jù)與其語義是不可分割的。8.1.2 數(shù)據(jù)記錄示例在日常生活中,人們可以直接用自然語言(如漢語)來描述事物。記錄是計(jì)算機(jī)中表示和存儲(chǔ)數(shù)據(jù)的一種格式或方法。這里的學(xué)生記錄就是描述學(xué)生的數(shù)據(jù),通過這樣一條記錄就具體描述了一個(gè)實(shí)際的學(xué)生。這樣的數(shù)據(jù)是有結(jié)構(gòu)的。日常描述(李明,男,2000-06,江蘇省南京市,計(jì)算機(jī)系,2020),即把學(xué)生的姓名、性別、出生年月、出生地、所在院系、入學(xué)時(shí)間等組織在一起,構(gòu)成一條記錄。某校計(jì)算機(jī)系一位同學(xué)的基本情況:2020級(jí)計(jì)算機(jī)系的李明同學(xué),性別為男,2000年6月出生于江蘇省南京市。計(jì)算機(jī)中的描述8.1.3 數(shù)據(jù)庫

數(shù)據(jù)庫(Database),顧名思義是存放數(shù)據(jù)的倉庫。嚴(yán)格地講,數(shù)據(jù)庫是長期儲(chǔ)存在計(jì)算機(jī)內(nèi)的有組織的、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)庫中儲(chǔ)存的數(shù)據(jù)具有以下3個(gè)基本特點(diǎn)??晒蚕頂?shù)據(jù)庫中的數(shù)據(jù)是可為各種用戶或程序共享使用的,而不是為某個(gè)用戶或程序?qū)S械?。各個(gè)用戶或程序可以通過統(tǒng)一的數(shù)據(jù)接口訪問數(shù)據(jù)庫,并依據(jù)特定的協(xié)議規(guī)范獲取數(shù)據(jù)。長期存儲(chǔ)數(shù)據(jù)庫提供數(shù)據(jù)長期存儲(chǔ)的可靠機(jī)制,數(shù)據(jù)一旦被存儲(chǔ)在數(shù)據(jù)庫中,就不會(huì)因?yàn)闀r(shí)間導(dǎo)致丟失,同時(shí)在系統(tǒng)發(fā)生故障后能夠進(jìn)行數(shù)據(jù)恢復(fù),從而保證數(shù)據(jù)庫中的數(shù)據(jù)完整。有組織數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲(chǔ),具有較小的冗余度(Redundancy)、較高的數(shù)據(jù)獨(dú)立性(DataIndependence)和易擴(kuò)展性(Scalability)。0203018.1.4 數(shù)據(jù)庫管理系統(tǒng)

數(shù)據(jù)庫管理系統(tǒng)(DBMS)是一個(gè)能夠科學(xué)地組織和存儲(chǔ)數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù)的系統(tǒng)軟件,是位于用戶與操作系統(tǒng)之間的數(shù)據(jù)管理軟件,其主要功能如下。數(shù)據(jù)定義功能數(shù)據(jù)組織、存儲(chǔ)和管理功能數(shù)據(jù)操縱功能數(shù)據(jù)庫的事務(wù)管理和運(yùn)行管理功能數(shù)據(jù)庫的建立和維護(hù)功能12345提供數(shù)據(jù)定義語言,用戶通過該語言可以方便地對(duì)數(shù)據(jù)庫中的數(shù)據(jù)對(duì)象的組成與結(jié)構(gòu)進(jìn)行定義,方便用戶對(duì)數(shù)據(jù)進(jìn)行管理。數(shù)據(jù)組織是指需要確定通過何種文件結(jié)構(gòu)和存取方式來組織這些數(shù)據(jù);數(shù)據(jù)存儲(chǔ)是指針對(duì)不同的數(shù)據(jù)應(yīng)該存儲(chǔ)哪些內(nèi)容;數(shù)據(jù)管理功能是指為數(shù)據(jù)提供多種存取方法。數(shù)據(jù)庫管理系統(tǒng)提供數(shù)據(jù)操縱語言(DML),用戶可以使用該語言來操縱數(shù)據(jù),實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的基本操作,如查詢、插入、刪除和修改等。數(shù)據(jù)庫在建立、運(yùn)行和維護(hù)時(shí)由數(shù)據(jù)庫管理系統(tǒng)統(tǒng)一管理和控制,以保證事務(wù)的正確運(yùn)行,保證數(shù)據(jù)的安全性、完整性等。主要包括數(shù)據(jù)庫初始數(shù)據(jù)的輸入和轉(zhuǎn)換功能,數(shù)據(jù)庫的轉(zhuǎn)儲(chǔ)、恢復(fù)功能,數(shù)據(jù)庫的重組織功能和性能監(jiān)視、分析功能等。其他功能6包括數(shù)據(jù)庫管理系統(tǒng)與網(wǎng)絡(luò)中其他軟件系統(tǒng)的通信功能,一個(gè)數(shù)據(jù)庫管理系統(tǒng)與另一個(gè)數(shù)據(jù)庫管理系統(tǒng)或文件系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換功能等。8.1.5 數(shù)據(jù)庫系統(tǒng)

如圖所示為數(shù)據(jù)庫系統(tǒng)架構(gòu),其中的應(yīng)用程序、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫和數(shù)據(jù)庫管理員為數(shù)據(jù)庫系統(tǒng)的主要模塊。操作系統(tǒng)不屬于數(shù)據(jù)庫系統(tǒng),它只是提供了一個(gè)數(shù)據(jù)操作協(xié)議的統(tǒng)一接口。數(shù)據(jù)庫管理系統(tǒng)是一類系統(tǒng)軟件,它和操作系統(tǒng)一樣,是計(jì)算機(jī)系統(tǒng)的基礎(chǔ)軟件。數(shù)據(jù)庫系統(tǒng)是由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及應(yīng)用開發(fā)工具)、應(yīng)用程序和數(shù)據(jù)庫管理員(DataBaseAdministrator,DBA)等組成的存儲(chǔ)、管理、處理和維護(hù)數(shù)據(jù)的系統(tǒng)。在不引起混淆的情況下,通常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。8.1.6 數(shù)據(jù)庫應(yīng)用

數(shù)據(jù)庫作為一種管理數(shù)據(jù)的技術(shù),主要用于承載數(shù)據(jù)、管理數(shù)據(jù),并基于上層邏輯提供增刪改查的數(shù)據(jù)接口,衍生出了如MySQL、Oracle、SQLServer等傳統(tǒng)關(guān)系數(shù)據(jù)庫產(chǎn)品;同時(shí),在數(shù)據(jù)類型多樣性、業(yè)務(wù)復(fù)雜性的大背景下,還衍生出了如Redis、HBase等非關(guān)系數(shù)據(jù)庫產(chǎn)品。這些數(shù)據(jù)庫產(chǎn)品各有特點(diǎn),并在各自的領(lǐng)域中大放光彩。除數(shù)據(jù)庫技術(shù)本身衍生的數(shù)據(jù)庫上層應(yīng)用以外,還有一類常見的應(yīng)用是數(shù)據(jù)庫工具應(yīng)用,包括數(shù)據(jù)庫管理工具和數(shù)據(jù)庫遷移工具。數(shù)據(jù)庫管理工具雖然數(shù)據(jù)庫本身也提供命令端用于管理數(shù)據(jù),但這種方式對(duì)用戶而言操作難度大、便捷性差,因此,各個(gè)數(shù)據(jù)庫廠商都會(huì)研發(fā)對(duì)應(yīng)的數(shù)據(jù)庫管理工具,如MySQL的Workbench等。數(shù)據(jù)庫遷移工具同構(gòu)數(shù)據(jù)庫(如MySQL與MySQL)之間的數(shù)據(jù)是可以直接遷移使用的,只需進(jìn)行適配即可,無須耗費(fèi)過多的時(shí)間。但異構(gòu)數(shù)據(jù)庫(如MySQL與Oracle)之間因語法、數(shù)據(jù)存儲(chǔ)定義等的差異,無法直接進(jìn)行數(shù)據(jù)調(diào)用,需要基于底層的SQL協(xié)議進(jìn)行數(shù)據(jù)互通。8.1傳統(tǒng)數(shù)據(jù)庫8.2云數(shù)據(jù)庫服務(wù)8.3華為云數(shù)據(jù)庫服務(wù)學(xué)習(xí)要點(diǎn)8.4華為云數(shù)據(jù)庫實(shí)踐8.2.1 云數(shù)據(jù)庫服務(wù)概念及特征數(shù)據(jù)庫也是數(shù)據(jù)庫,在語法使用上與傳統(tǒng)數(shù)據(jù)庫沒有差異,只不過在部署方式、形態(tài)和運(yùn)維方面與傳統(tǒng)數(shù)據(jù)庫不同,在操作層面上帶來了全新的體驗(yàn),使用起來更加便捷和高效。云數(shù)據(jù)庫服務(wù)是構(gòu)建在云服務(wù)模型之上的數(shù)據(jù)庫解決方案,即數(shù)據(jù)庫即服務(wù)(DataBaseasaService,DBaaS)。從歸屬角度上來看,DBaaS運(yùn)行在IaaS之上,屬于PaaS的子類。云數(shù)據(jù)庫天然具備云的靈活性(即開即用、彈性伸縮),能夠提供強(qiáng)大的創(chuàng)新能力(便捷測試、驗(yàn)證和實(shí)施新的業(yè)務(wù)創(chuàng)建)、豐富多樣的產(chǎn)品體系(提供多種衍生的云數(shù)據(jù)庫應(yīng)用)、經(jīng)濟(jì)高效的部署方式(業(yè)務(wù)初期可以少量訂購,隨后自主擴(kuò)容)和按需付費(fèi)(按小時(shí)計(jì)費(fèi))的支付模式。云數(shù)據(jù)庫服務(wù)涵蓋關(guān)系數(shù)據(jù)庫服務(wù)、非關(guān)系數(shù)據(jù)庫服務(wù)和數(shù)據(jù)庫工具服務(wù)等,企業(yè)可根據(jù)實(shí)際數(shù)據(jù)業(yè)務(wù)進(jìn)行選擇8.2.1 云數(shù)據(jù)庫服務(wù)概念及特征對(duì)企業(yè)而言,云數(shù)據(jù)庫需要具有如下特征。彈性伸縮數(shù)據(jù)庫的存儲(chǔ)、CPU、I/O等數(shù)據(jù)庫資源需要能夠依據(jù)企業(yè)自身業(yè)務(wù)進(jìn)行彈性伸縮,業(yè)務(wù)增長時(shí)應(yīng)用系統(tǒng)自動(dòng)擴(kuò)容,業(yè)務(wù)下降時(shí)應(yīng)用系統(tǒng)自動(dòng)縮容。計(jì)算存儲(chǔ)分離具有多種存儲(chǔ)方式自動(dòng)化運(yùn)維管理數(shù)據(jù)安全及可靠數(shù)據(jù)庫采用計(jì)算與存儲(chǔ)分離架構(gòu),在高可用、備份恢復(fù)和升級(jí)擴(kuò)展等方面,都會(huì)帶來全新性能體驗(yàn)。例如,計(jì)算和存儲(chǔ)可以獨(dú)立彈性伸縮,擴(kuò)縮容無須進(jìn)行數(shù)據(jù)遷移。數(shù)據(jù)庫系統(tǒng)通常是IT系統(tǒng)極為重要的系統(tǒng),對(duì)存儲(chǔ)I/O性能要求高。例如,在華為云關(guān)系數(shù)據(jù)庫中,存儲(chǔ)類型可以分為超高I/O和SSD盤,企業(yè)可根據(jù)實(shí)際業(yè)務(wù)選擇所需的存儲(chǔ)類型。提供一套完整的自動(dòng)化運(yùn)維管理平臺(tái),提供零停機(jī)維護(hù)、版本滾動(dòng)升級(jí)、故障自動(dòng)監(jiān)控、日志分析及問題修復(fù)能力,大大降低運(yùn)維成本,提高開發(fā)效率。數(shù)據(jù)庫上云后,數(shù)據(jù)都存儲(chǔ)在云服務(wù)廠商的后臺(tái),云服務(wù)廠商能夠提供“7×24h”的數(shù)據(jù)庫業(yè)務(wù)可靠性保證,并能保證數(shù)據(jù)不泄露,操作權(quán)限高度集中。8.2.2 云數(shù)據(jù)庫服務(wù)技術(shù)存儲(chǔ)與SQL計(jì)算分離為了應(yīng)對(duì)日益增長的性能要求,傳統(tǒng)的數(shù)據(jù)庫做了集群化的處理,雖然在某種程度上提高了數(shù)據(jù)庫的性能,但歸根結(jié)底數(shù)據(jù)庫中的各個(gè)節(jié)點(diǎn)的資源(CPU、內(nèi)存、磁盤等)都是獨(dú)立存在的。在典型的大規(guī)模并行處理(MassivelyParallelProcessing,MPP)架構(gòu)中,數(shù)據(jù)庫中的數(shù)據(jù)在導(dǎo)入或插入時(shí),經(jīng)過一定的分區(qū)邏輯(Hash、Replication、Random、Range等)后分布到各個(gè)數(shù)據(jù)節(jié)點(diǎn)中,使得數(shù)據(jù)庫在進(jìn)行數(shù)據(jù)查詢時(shí),能夠充分利用每一個(gè)數(shù)據(jù)節(jié)點(diǎn)。數(shù)據(jù)查詢?nèi)蝿?wù)在每個(gè)節(jié)點(diǎn)上都是獨(dú)立存在的,各自處理各自的數(shù)據(jù),相互之間不會(huì)發(fā)生資源爭搶的現(xiàn)象,具有很好的并行處理能力。典型MPP架構(gòu)如圖所示。8.2.2 云數(shù)據(jù)庫服務(wù)技術(shù)這種存儲(chǔ)與計(jì)算高度耦合的架構(gòu)一定程度上解決了數(shù)據(jù)庫的性能問題,但同時(shí)也帶來了新的問題。因此,在云場景下,將存儲(chǔ)與SQL計(jì)算進(jìn)行解耦成為時(shí)下云數(shù)據(jù)庫服務(wù)必要的技術(shù)手段。通過存儲(chǔ)與計(jì)算分離,用戶能夠有針對(duì)性地獨(dú)立規(guī)劃存儲(chǔ)、計(jì)算規(guī)格,并受益于云原生特性,能夠比較快地完成擴(kuò)容、縮容操作,靈活適應(yīng)某些峰值業(yè)務(wù)場景,同時(shí)也能夠極大地降低成本。這種存儲(chǔ)與計(jì)算分離的架構(gòu)是指將SQL解析、轉(zhuǎn)換、執(zhí)行計(jì)劃生成、計(jì)算等模塊與底層存儲(chǔ)的硬件進(jìn)行解耦。在這一架構(gòu)中,通過將存儲(chǔ)引擎與SQL計(jì)算引擎分離,可以做到二者之間松耦合、互相獨(dú)立地處理任務(wù)。典型的存儲(chǔ)與計(jì)算分離架構(gòu)如圖所示,通常包含3個(gè)部分:存儲(chǔ)層、網(wǎng)絡(luò)傳輸層、計(jì)算層8.2.2 云數(shù)據(jù)庫服務(wù)技術(shù)對(duì)于傳統(tǒng)的數(shù)據(jù)庫而言,一般在部署之后,對(duì)應(yīng)的數(shù)據(jù)庫版本是確定的,如果安裝了MySQL,就是基于MySQL實(shí)現(xiàn)的數(shù)據(jù)庫應(yīng)用;安裝了Oracle就需要基于Oracle來實(shí)現(xiàn)上層邏輯。對(duì)公司而言,使用的數(shù)據(jù)庫過多勢必會(huì)產(chǎn)生額外的數(shù)據(jù)一致性維護(hù)成本。在數(shù)據(jù)庫上云以后為了實(shí)現(xiàn)不同類型數(shù)據(jù)的融合與統(tǒng)一管理,需要具備多模(Multi-Model)數(shù)據(jù)庫管理與存儲(chǔ)的能力。多模數(shù)據(jù)管理需要支持的數(shù)據(jù)存儲(chǔ)類型所謂的多模,指的是一個(gè)數(shù)據(jù)庫支持多種數(shù)據(jù)庫存儲(chǔ)引擎,可以滿足上層應(yīng)用對(duì)于結(jié)構(gòu)化、半結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù)的統(tǒng)一管理需求,從而降低企業(yè)使用和運(yùn)維的成本多模數(shù)據(jù)管理8.2.3 云數(shù)據(jù)庫服務(wù)安全云數(shù)據(jù)庫服務(wù)安全主要包括兩個(gè)方面,一是從云數(shù)據(jù)庫自身角度出發(fā),二是從云服務(wù)角度出發(fā)。這里以華為云關(guān)系數(shù)據(jù)庫服務(wù)為例進(jìn)行介紹,下圖所示為華為云關(guān)系數(shù)據(jù)庫的安全框架。8.2.3 云數(shù)據(jù)庫服務(wù)安全云數(shù)據(jù)庫具備傳統(tǒng)數(shù)據(jù)庫自身所帶的全部安全措施,包括數(shù)據(jù)庫用戶權(quán)限管理、SSL訪問認(rèn)證、賬戶密碼策略等。此外,它還有一些新的安全防護(hù)措施:從云數(shù)據(jù)庫自身角度出發(fā)ACB訪問控制權(quán)限細(xì)分策略DAS安全審計(jì)數(shù)據(jù)庫上云以后,連接數(shù)據(jù)庫的方式從原來的本地或局域網(wǎng)內(nèi)的IP連接轉(zhuǎn)變?yōu)橐怨W(wǎng)IP的方式進(jìn)行連接。此外,用戶還可以通過云服務(wù)廠商進(jìn)行內(nèi)網(wǎng)連接,或者通過數(shù)據(jù)庫管理服務(wù)(華為云上為DAS)進(jìn)行數(shù)據(jù)庫連接。上云以后,除數(shù)據(jù)庫本身以外,還會(huì)涉及數(shù)據(jù)庫實(shí)例(承載數(shù)據(jù)庫服務(wù)的對(duì)象)。需要為云用戶設(shè)定針對(duì)數(shù)據(jù)庫實(shí)例的操作權(quán)限,這些權(quán)限包括但不限于創(chuàng)建數(shù)據(jù)庫實(shí)例、刪除數(shù)據(jù)庫實(shí)例、查詢數(shù)據(jù)庫實(shí)例等。通過權(quán)限細(xì)分策略的擴(kuò)充,可以避免因數(shù)據(jù)庫上云后,對(duì)云用戶權(quán)限管理的缺漏。華為云DAS可提供全量SQL洞察(審計(jì))功能,不僅支持全量SQL記錄的查詢能力,還提供了對(duì)訪問最頻繁、更新最頻繁的表和鎖等待時(shí)間最長的SQL等內(nèi)容的多維度分析、搜索、過濾服務(wù),幫助用戶全面對(duì)SQL進(jìn)行洞察和審計(jì),快速找出異常,保障云數(shù)據(jù)庫穩(wěn)定運(yùn)行。8.2.3 云數(shù)據(jù)庫服務(wù)安全華為云上有許多衍生的華為云服務(wù)用于輔助云數(shù)據(jù)庫服務(wù)安全,包括:從云服務(wù)角度出發(fā)數(shù)據(jù)庫安全服務(wù)01OPTION數(shù)據(jù)庫安全服務(wù)(DatabaseSecurityService,DBSS)是一種智能的數(shù)據(jù)庫安全服務(wù),基于機(jī)器學(xué)習(xí)機(jī)制和大數(shù)據(jù)分析技術(shù),提供數(shù)據(jù)庫安全審計(jì)、SQL注入攻擊檢測、風(fēng)險(xiǎn)操作識(shí)別等功能,保障云上數(shù)據(jù)庫的安全。數(shù)據(jù)庫安全審計(jì)是指通過在旁路模式下安裝數(shù)據(jù)庫客戶端,讓用戶通過該客戶端進(jìn)行數(shù)據(jù)庫操作,這個(gè)客戶端可以對(duì)數(shù)據(jù)庫的操作進(jìn)行風(fēng)險(xiǎn)行為實(shí)時(shí)告警,并對(duì)攻擊行為進(jìn)行阻斷;同時(shí)還可以生成數(shù)據(jù)庫安全標(biāo)準(zhǔn)的合規(guī)報(bào)告數(shù)據(jù)庫安全審計(jì)架構(gòu)8.2.3 云數(shù)據(jù)庫服務(wù)安全云審計(jì)服務(wù)02OPTION云審計(jì)服務(wù)(CloudTraceService,CTS)是華為云安全解決方案中專業(yè)的日志審計(jì)服務(wù),提供對(duì)各種云資源操作記錄的收集、存儲(chǔ)和查詢功能,可用于支撐安全分析、合規(guī)審計(jì)、資源跟蹤和問題定位等常見應(yīng)用場景。CTS介紹企業(yè)數(shù)據(jù)上云以后,為了有效地管理企業(yè)數(shù)據(jù)資源,一般通過華為云賬戶進(jìn)行統(tǒng)一的操作,而CTS就是針對(duì)華為云賬戶而設(shè)立的審計(jì)服務(wù)。它可以有效地監(jiān)聽用戶的各種針對(duì)資源的操作,識(shí)別高風(fēng)險(xiǎn)操作并記錄,從而進(jìn)行資源跟蹤和合規(guī)審計(jì)等工作。8.2.3 云數(shù)據(jù)庫服務(wù)安全VPC網(wǎng)絡(luò)安全03OPTION數(shù)據(jù)庫上云后,如何避免數(shù)據(jù)庫因網(wǎng)絡(luò)攻擊導(dǎo)致數(shù)據(jù)丟失造成數(shù)據(jù)安全隱患,是企業(yè)必須要考慮的問題。華為云服務(wù)提供了隔離的虛擬私有網(wǎng)絡(luò)環(huán)境(VPC),用戶的資源和應(yīng)用與云中的其他用戶是完全隔離的,安全性更高。VPC網(wǎng)絡(luò)環(huán)境8.2.3 云數(shù)據(jù)庫服務(wù)安全統(tǒng)一身份認(rèn)證服務(wù)04OPTION數(shù)據(jù)庫上云后,操作數(shù)據(jù)庫的方式從直接的命令端訪問變?yōu)橥ㄟ^云賬號(hào)進(jìn)行的上云操作。由于云賬號(hào)是一種主要的操作數(shù)據(jù)庫的方式,因此用戶需要對(duì)其進(jìn)行權(quán)限管控。統(tǒng)一身份認(rèn)證服務(wù)(IdentityandAccessManagement,IAM)提供了適合企業(yè)級(jí)組織結(jié)構(gòu)的用戶賬號(hào)管理服務(wù),可為企業(yè)用戶分配不同的資源及操作權(quán)限。用戶通過使用訪問密鑰獲得基于IAM的認(rèn)證和鑒權(quán)后,以調(diào)用API的方式訪問云資源。IAM按層次和細(xì)粒度授權(quán),保證同一企業(yè)租戶的不同用戶在使用云資源上得到有效管控,避免單個(gè)用戶因?yàn)檎`操作等導(dǎo)致整個(gè)云服務(wù)的不可用,確保租戶業(yè)務(wù)的持續(xù)性。IAM賬號(hào)精細(xì)化訪問控制8.1傳統(tǒng)數(shù)據(jù)庫8.2云數(shù)據(jù)庫服務(wù)8.3華為云數(shù)據(jù)庫服務(wù)學(xué)習(xí)要點(diǎn)8.4華為云數(shù)據(jù)庫實(shí)踐8.3 華為云數(shù)據(jù)庫服務(wù)該架構(gòu)一方面能夠盡量減少跨核內(nèi)存訪問的時(shí)延問題,另一方面能夠充分發(fā)揮華為芯片的多核算力優(yōu)勢,所提供的關(guān)鍵技術(shù)包括重做日志批插、熱點(diǎn)數(shù)據(jù)NUMA分布、CLog分區(qū)等,可以大幅提升系統(tǒng)的處理性能?;谌A為芯片所使用的ARMv8.1架構(gòu),利用LSE擴(kuò)展指令集來實(shí)現(xiàn)高效的原子操作,可以有效提升CPU利用率,從而提升多線程間同步性能、XLog持久化記錄數(shù)據(jù)庫中的變更信息寫入性能等。華為芯片支持NUMA架構(gòu),能夠很好地解決同時(shí)多線程(SMT)技術(shù)對(duì)CPU核數(shù)的制約。華為芯片的NUMA架構(gòu)華為芯片非統(tǒng)一內(nèi)存訪問架構(gòu)優(yōu)化GaussDB(foropenGauss)基于華為處理器的多核非統(tǒng)一內(nèi)存訪問(NUMA)架構(gòu),進(jìn)行一系列針對(duì)NUMA架構(gòu)的相關(guān)優(yōu)化。8.3 華為云數(shù)據(jù)庫服務(wù)SMP并行執(zhí)行技術(shù)華為云數(shù)據(jù)庫服務(wù)GaussDB(foropenGauss)基于SMP并行執(zhí)行技術(shù)實(shí)現(xiàn)算子級(jí)的并行,能夠有效減少查詢的執(zhí)行時(shí)間,提升查詢性能及資源利用率。SMP并行執(zhí)行技術(shù)的整體實(shí)現(xiàn)思想是對(duì)于能夠并行的查詢算子,將數(shù)據(jù)分片并啟動(dòng)若干個(gè)工作線程分別計(jì)算,最后將結(jié)果匯總并返回前端。SMP并行執(zhí)行可以增加數(shù)據(jù)交互算子(Stream),實(shí)現(xiàn)多個(gè)工作線程之間的數(shù)據(jù)交互,以確保查詢的正確性,完成整體的查詢。SMP并行執(zhí)行是在線程級(jí)別上完成的,理論上可以使并行執(zhí)行的子任務(wù)數(shù)達(dá)到物理服務(wù)器核數(shù)的上限。SMP并行線程是在同一個(gè)進(jìn)程內(nèi)的,可以直接通過內(nèi)存進(jìn)行數(shù)據(jù)交換,不需要占用網(wǎng)絡(luò)連接與帶寬,降低了限制MPP系統(tǒng)性能提升的網(wǎng)絡(luò)因素的影響。由于并行子任務(wù)啟動(dòng)后不需要附帶其他后臺(tái)工作線程,可以提高系統(tǒng)計(jì)算資源的有效利用率。8.3 華為云數(shù)據(jù)庫服務(wù)SwitchTurbo技術(shù)GaussDB(foropenGauss)提供了多種高可用方案,包括同城AZ內(nèi)高可用、跨AZ高可用、異地跨區(qū)域的“兩地三中心”容災(zāi)方案,滿足金融級(jí)監(jiān)管要求。GaussDB(foropenGauss)通過獨(dú)有的SwitchTurbo技術(shù),保障了同城AZ內(nèi)出現(xiàn)單點(diǎn)故障時(shí)能夠快速切換,RPO為0,RTO小于10s。SwitchTurbo技術(shù)支持大并發(fā)、大數(shù)據(jù)量、以聯(lián)機(jī)事務(wù)處理為主的交易型應(yīng)用,并且具備PB級(jí)數(shù)據(jù)負(fù)載能力,通過內(nèi)存分析技術(shù)滿足海量數(shù)據(jù)邊入庫邊查詢要求,適用于安全、電信、金融、物聯(lián)網(wǎng)等行業(yè)的詳單查詢業(yè)務(wù)。8.3 華為云數(shù)據(jù)庫服務(wù)底層虛擬機(jī)動(dòng)態(tài)編譯技術(shù)在CPU內(nèi)存計(jì)算上,傳統(tǒng)數(shù)據(jù)處理引擎面臨著諸多短板,具體如下。這些短板制約了數(shù)據(jù)庫執(zhí)行性能的提升,無法構(gòu)建數(shù)據(jù)庫產(chǎn)品核心競爭力。條件邏輯冗余頻繁虛函數(shù)調(diào)用數(shù)據(jù)局域化程度低難以發(fā)揮新硬件擴(kuò)展指令集性能GaussDB(foropenGauss)借助LLVM提供的庫函數(shù),依據(jù)查詢執(zhí)行計(jì)劃樹,將原本在執(zhí)行器階段才會(huì)確定查詢實(shí)際執(zhí)行路徑的過程提前到執(zhí)行初始化階段,從而規(guī)避原本查詢執(zhí)行時(shí)候伴隨的函數(shù)調(diào)用、邏輯條件分支判斷及大量的數(shù)據(jù)讀取等問題,以達(dá)到提升查詢性能的目的。底層虛擬機(jī)(LowLevelVirtualMachine,LLVM)技術(shù)提供了完整編譯系統(tǒng)的中間層,它會(huì)將中間表示(IntermediateRepresentation,IR)從編譯器取出與優(yōu)化,優(yōu)化后的IR接著被轉(zhuǎn)換及鏈接到目標(biāo)平臺(tái)的匯編語言。LLVM也可以在編譯時(shí)期、鏈接時(shí)期,甚至是運(yùn)行時(shí)期產(chǎn)生可重新定位的代碼(RelocatableCode)。8.3 華為云數(shù)據(jù)庫服務(wù)行級(jí)訪問控制ACB傳統(tǒng)的數(shù)據(jù)庫在數(shù)據(jù)庫安全層面只能做到最小為表級(jí)的權(quán)限訪問控制。GaussDB(foropenGauss)的行級(jí)訪問控制特性將數(shù)據(jù)庫訪問粒度控制到數(shù)據(jù)行級(jí)別,使數(shù)據(jù)庫擁有行級(jí)訪問控制的能力。這使得不同用戶執(zhí)行相同的SQL查詢操作,讀取到的結(jié)果可能是不同的。用戶可以在數(shù)據(jù)表創(chuàng)建行級(jí)安全策略,該策略是指針對(duì)特定數(shù)據(jù)庫用戶、特定SQL操作生效的表達(dá)式。當(dāng)數(shù)據(jù)庫用戶對(duì)數(shù)據(jù)表進(jìn)行訪問時(shí),若SQL滿足數(shù)據(jù)表特定的行級(jí)安全策略,則在查詢優(yōu)化階段將滿足條件的表達(dá)式按照屬性類型,通過AND或OR方式拼接,應(yīng)用到執(zhí)行計(jì)劃上。行級(jí)訪問控制旨在控制表中行級(jí)數(shù)據(jù)可見性,通過在數(shù)據(jù)表上預(yù)定義Filter,在查詢優(yōu)化階段將滿足條件的表達(dá)式應(yīng)用到執(zhí)行計(jì)劃上,影響最終的執(zhí)行結(jié)果。當(dāng)前行級(jí)訪問控制支持的SQL語句包括SELECT、UPDATE、DELETE等。8.3 華為云數(shù)據(jù)庫服務(wù)支持HyperLogLogHLL在計(jì)算速度和所占存儲(chǔ)空間上都占優(yōu)勢。在時(shí)間復(fù)雜度上,Sort算法進(jìn)行排序至少需要O(nlogn);Hash算法和HLL均為掃描一次全表O(n)的時(shí)間就可以得出結(jié)果。在存儲(chǔ)空間上,Sort算法和Hash算法都需要先保存原始數(shù)據(jù)再進(jìn)行統(tǒng)計(jì),導(dǎo)致存儲(chǔ)空間消耗巨大;而對(duì)HLL來說,它不需要保存原始數(shù)據(jù),只需要維護(hù)HLL數(shù)據(jù)結(jié)構(gòu),故其占用的空間始終是1280字節(jié)。GaussDB(foropenGauss)采用分布式HLL架構(gòu)。數(shù)據(jù)節(jié)點(diǎn)承擔(dān)計(jì)算HLL的任務(wù),使其結(jié)果在CN(CoordinatorNode)匯總,避免了CN計(jì)算瓶頸。HyperLogLog(HLL)是統(tǒng)計(jì)數(shù)據(jù)集中唯一值個(gè)數(shù)的高效近似算法。它有著計(jì)算速度快、節(jié)省空間的特點(diǎn),不需要直接存儲(chǔ)集合本身,而是存儲(chǔ)一種名為HLL的數(shù)據(jù)結(jié)構(gòu)。每當(dāng)有新數(shù)據(jù)加入統(tǒng)計(jì)時(shí),只需將數(shù)據(jù)經(jīng)過Hash計(jì)算插入HLL中,最后根據(jù)HLL就可以得到結(jié)果。010203在GaussDB的AI全景圖中,主要有AI4DB和DB4AI兩個(gè)部分。其中AI4DB是指用人工智能技術(shù)優(yōu)化數(shù)據(jù)庫的性能,從而獲得更好的執(zhí)行表現(xiàn),也可以通過人工智能的手段實(shí)現(xiàn)自治、免運(yùn)維等功能。DB4AI指的是打通數(shù)據(jù)庫到人工智能應(yīng)用的端到端流程,統(tǒng)一人工智能技術(shù)棧,達(dá)到開箱即用、高性能、節(jié)約成本等目的。8.3 華為云數(shù)據(jù)庫服務(wù)為更好地滿足時(shí)下數(shù)據(jù)庫日益增長的性能需求,GaussDB(foropenGauss)提前做好規(guī)劃,引入AI能力,打造智能數(shù)據(jù)庫。GaussDB的AI全景AI能力8.1傳統(tǒng)數(shù)據(jù)庫8.2云數(shù)據(jù)庫服務(wù)8.3華為云數(shù)據(jù)庫服務(wù)學(xué)習(xí)要點(diǎn)8.4華為云數(shù)據(jù)庫實(shí)踐8.4 華為云數(shù)據(jù)庫實(shí)踐操作流程本實(shí)踐使用DRS的實(shí)時(shí)同步功能將本地Oracle數(shù)據(jù)庫實(shí)時(shí)遷移至華為云GaussDB。通過全量+增量同步,實(shí)現(xiàn)源數(shù)據(jù)庫Oracle和目標(biāo)數(shù)據(jù)庫GaussDB的數(shù)據(jù)長期同步。8.4.1 創(chuàng)建VPC單擊

按鈕,在右側(cè)選擇“網(wǎng)絡(luò)>虛擬私有云VPC”選項(xiàng),根據(jù)界面提示填寫基本信息。單擊“創(chuàng)建虛擬私有云”按鈕,購買VPC。單擊“立即創(chuàng)建”按鈕,返回VPC列表,查看創(chuàng)建VPC是否創(chuàng)建完成。(1)(2)(3)登錄華為云控制臺(tái),單擊控制臺(tái)左上角的

按鈕,選擇地區(qū)。選擇“網(wǎng)絡(luò)>虛擬私有云VPC”選項(xiàng)虛擬私有云信息界面8.4.2 創(chuàng)建安全組單擊“創(chuàng)建安全組”按鈕,根據(jù)界面提示,填寫安全組名稱等信息,單擊“確定”按鈕。(1)(2)(3)登錄華為云控制臺(tái),選擇地區(qū),單擊

按鈕,選擇“網(wǎng)絡(luò)>虛擬私有云VPC”選項(xiàng),再選擇“訪問控制>安全組”選項(xiàng)。“創(chuàng)建安全組”界面配置入方向規(guī)則返回安全組列表,單擊安全組名稱“sg-01”,選擇“入方向規(guī)則”選項(xiàng),單擊“添加規(guī)則”按鈕,配置入方向規(guī)則,添加源庫的IP地址等信息。

添加規(guī)則8.4.3 創(chuàng)建GaussDB實(shí)例單擊“購買數(shù)據(jù)庫實(shí)例”按鈕,配置實(shí)例名稱和實(shí)例基本信息(1)(2)(3)登錄華為云控制臺(tái),選擇地區(qū),單擊

按鈕,,選擇“數(shù)據(jù)庫>云數(shù)據(jù)庫GaussDB”選項(xiàng),在左側(cè)導(dǎo)航欄選擇“GaussDB>實(shí)例管理”選項(xiàng)。配置實(shí)例名稱和實(shí)例基本信息配置實(shí)例規(guī)格根據(jù)界面提示,配置實(shí)例規(guī)格,需要注意的是,本實(shí)例為測試實(shí)例,因此應(yīng)選擇較小的測試規(guī)格,在實(shí)際情況中,用戶可選規(guī)格以界面為準(zhǔn)。8.4.3 創(chuàng)建GaussDB實(shí)例配置實(shí)例密碼等信息,單擊“立即購買”按鈕,確認(rèn)信息并提交。(4)(5)(6)選擇實(shí)例所屬的VPC(創(chuàng)建VPC)和安全組(創(chuàng)建安全組),配置數(shù)據(jù)庫端口。創(chuàng)建VPC和安全組配置實(shí)例密碼返回實(shí)例列表。當(dāng)實(shí)例運(yùn)行狀態(tài)為“正常”時(shí),表示實(shí)例創(chuàng)建完成。8.4.4 構(gòu)造遷移前數(shù)據(jù)遷移前需要在源庫構(gòu)造一些數(shù)據(jù)類型,供遷移完成后驗(yàn)證數(shù)據(jù)使用。用戶可通過執(zhí)行如下步驟在源庫構(gòu)造數(shù)據(jù)。①執(zhí)行以下命令,創(chuàng)建一個(gè)用戶供實(shí)踐測試使用。createusertest_infoidentifiedbyxxx;其中,test_info為本次實(shí)踐創(chuàng)建的用戶,xxx為用戶的密碼,用戶可根據(jù)實(shí)際情況自行替換。②執(zhí)行以下命令,給用戶賦權(quán)。grantdbatotest_info;③在當(dāng)前用戶下創(chuàng)建一個(gè)數(shù)據(jù)表,具體命令及數(shù)據(jù)表元素類型如下所示。CREATETABLEtest_info.DATATYPELIST(IDINT,COL_01_CHAR______ECHAR(100),(1)根據(jù)本地的Oracle數(shù)據(jù)庫的IP地址,通過數(shù)據(jù)庫連接工具(如DBeaver、Navicat、SQLDeveloper和DataGrip等)連接數(shù)據(jù)庫。根據(jù)DRS支持的數(shù)據(jù)類型,在源庫執(zhí)行語句構(gòu)造數(shù)據(jù),具體步驟如下。(2)8.4.4 構(gòu)造遷移前數(shù)據(jù)COL_02_NCHAR_____ENCHAR(100),COL_03_VARCHAR___EVARCHAR(1000),COL_04_VARCHAR2__EVARCHAR2(1000),COL_05_NVARCHAR2_ENVARCHAR2(1000),COL_06_NUMBER____ENUMBER(38,0),COL_07_FLOAT_____EFLOAT(126),COL_08_BFLOAT____EBINARY_FLOAT,COL_09_BDOUBLE___EBINARY_DOUBLE,COL_10_DATE______EDATEDEFAULTSYSTIMESTAMP,COL_11_TS________ETIMESTAMP(6),COL_12_TSTZ______ETIMESTAMP(6)WITHTIMEZONE,COL_13_TSLTZ_____ETIMESTAMP(6)WITHLOCALTIMEZONE,COL_14_CLOB______ECLOBDEFAULTEMPTY_CLOB(),COL_15_BLOB______EBLOBDEFAULTEMPTY_BLOB(),COL_16_NCLOB_____ENCLOBDEFAULTEMPTY_CLOB(),COL_17_RAW_______ERAW(1000),COL_19_LONGRAW___ELONGRAW,COL_24_ROWID_____EROWID,PRIMARYKEY(ID));④執(zhí)行以下命令,在數(shù)據(jù)表中插入兩行數(shù)據(jù)。insertintotest_info.DATATYPELISTvalues(4,'huawei','xian','shanxi','zhongguo','shijie',666,12.321,1.123,2.123,sysdate,sysdate,sysdate,sysdate,'hw','cb','df','FF','FF','AAAYEVAAJAAAACrAAA');insertintotest_info.DATATYPELISTvalues(2,'Migratetest','test1','test2','test3','test4',666,12.321,1.123,2.123,sysdate,sysdate,sysdate,sysdate,'hw','cb','df','FF','FF','AAAYEVAAJAAAACrAAA');⑤完成數(shù)據(jù)表提交,使語句生效。8.4.4 構(gòu)造遷移前數(shù)據(jù)在目標(biāo)端創(chuàng)建庫,具體步驟如下。(3)①登錄華為云控制臺(tái)。②單擊控制臺(tái)左上角的

按鈕,選擇地區(qū)。③單擊

按鈕,選擇“數(shù)據(jù)庫>數(shù)據(jù)管理服務(wù)DAS”選項(xiàng)。④在左側(cè)導(dǎo)航欄選擇“數(shù)據(jù)管理服務(wù)DAS>開發(fā)工具”選項(xiàng),進(jìn)入開發(fā)工具數(shù)據(jù)庫登錄列表界面。⑤單擊“新增數(shù)據(jù)庫實(shí)例登錄”按鈕,打開“新增數(shù)據(jù)庫實(shí)例登錄”窗口。⑥選擇“數(shù)據(jù)庫引擎”“數(shù)據(jù)庫來源”目標(biāo)實(shí)例,填寫登錄用戶名、密碼以及描述(非必填項(xiàng))信息,開啟定時(shí)采集、SQL執(zhí)行記錄功能。如果開啟“定時(shí)采集”,則用戶需要勾選“記住密碼”。⑦單擊“測試連接”按鈕測試連接是否成功。如測試連接成功,將提示“連接成功”,則用戶可繼續(xù)新增操作;如果測試連接失敗,將提示連接失敗原因,則用戶需要根據(jù)提示信息進(jìn)行修改。⑧設(shè)置完登錄信息后單擊“立即新增”按鈕。⑨新增完成后,單擊新增數(shù)據(jù)庫實(shí)例對(duì)應(yīng)的“登錄”按鈕,登錄當(dāng)前數(shù)據(jù)庫。⑩進(jìn)入登錄的數(shù)據(jù)庫界面,選擇“SQL操作”>“SQL查詢”選項(xiàng),進(jìn)入SQL查詢界面。

執(zhí)行如下命令,創(chuàng)建兼容Oracle的GaussDB數(shù)據(jù)庫。例如,創(chuàng)建名為test_database_info的數(shù)據(jù)庫,用戶也可根據(jù)實(shí)際情況自行選擇。CREATEDATABASEtest_database_infoDBCOMPATIBILITY'ORA';8.4.4 構(gòu)造遷移前數(shù)據(jù)登錄數(shù)據(jù)庫進(jìn)入登錄的數(shù)據(jù)庫界面8.4.5 遷移數(shù)據(jù)庫在左側(cè)導(dǎo)航欄選擇“實(shí)時(shí)同步管理”選項(xiàng),進(jìn)入“實(shí)時(shí)同步管理”界面。(1)(2)登錄華為云控制臺(tái),選擇地區(qū),單擊

按鈕,選擇“數(shù)據(jù)庫>數(shù)據(jù)復(fù)制服務(wù)DRS”選項(xiàng)?!皩?shí)時(shí)同步管理”界面本節(jié)創(chuàng)建DRS實(shí)例,將本地Oracle上的test_info數(shù)據(jù)庫遷移到GaussDB實(shí)例的test_database_info數(shù)據(jù)庫中。8.4.5 遷移數(shù)據(jù)庫(3)配置同步實(shí)例信息,具體步驟如下。①選擇地區(qū),填寫任務(wù)名稱,創(chuàng)建同步任務(wù)。②配置同步實(shí)例信息,選擇“數(shù)據(jù)流動(dòng)方向”“源數(shù)據(jù)庫引擎”“目標(biāo)數(shù)據(jù)庫引擎”“網(wǎng)絡(luò)類型”“DRS任務(wù)類型”“目標(biāo)數(shù)據(jù)庫實(shí)例”“同步實(shí)例所在子網(wǎng)”(非必選)“同步模式”,選擇“規(guī)格類型”和“可用區(qū)”,也可以選填“標(biāo)簽”。③單擊“開始創(chuàng)建”按鈕。創(chuàng)建同步任務(wù)配置同步實(shí)例信息8.4.5 遷移數(shù)據(jù)庫(4)配置源庫及目標(biāo)庫信息,具體步驟如下。①設(shè)置源庫信息,填寫源庫的IP地址、端口、用戶、密碼等信息。填寫完成后,單擊“測試連接”按鈕,測試連接信息是否正確。②填寫目標(biāo)庫的用戶名和密碼,填寫完成后,單擊“測試連接”按鈕,測試連接信息是否正確。③單擊“下一步”按鈕,仔細(xì)閱讀提示內(nèi)容后,單擊“同意,并繼續(xù)”按鈕。設(shè)置源庫信息并測試連接填寫目標(biāo)庫的用戶名和密碼8.4.5 遷移數(shù)據(jù)庫(5)設(shè)置同步,具體步驟如下。①在源庫中選擇需要遷移的數(shù)據(jù)庫和表,本實(shí)踐選擇“test_info”中的“DATATYPELIST”表。②選擇完成后,單擊“編輯”按鈕,可以重新為遷移后的庫和表命名。選擇需要遷移的數(shù)據(jù)庫和表為庫和表重新命名8.4.5 遷移數(shù)據(jù)庫③重命名表名,在本實(shí)踐中,將表名重新命名為“DATATYPELIST_After”。注意重新命名時(shí)不要使用特殊符號(hào),否則會(huì)導(dǎo)致遷移后執(zhí)行SQL語句時(shí)報(bào)錯(cuò)。④確認(rèn)重命名設(shè)置內(nèi)容,單擊“下一步”按鈕。重命名表名確認(rèn)重命名8.4.5 遷移數(shù)據(jù)庫(6)高級(jí)設(shè)置,確認(rèn)信息,本界面內(nèi)容僅做確認(rèn),無法修改,確認(rèn)完成后單擊“下一步”按鈕。確認(rèn)信息8.4.5 遷移數(shù)據(jù)庫(7)數(shù)據(jù)加工。在該界面可以對(duì)遷移的表進(jìn)行加工,包括選擇遷移的列,重新命名遷移后的列名,本實(shí)踐將“COL_01_CHAR______E”重新命名為“new-line”。具體操作步驟如下。選擇需要加工的表①選擇需要加工的表。②編輯“COL_01_CHAR______E”列。編輯列8.4.5 遷移數(shù)據(jù)庫檢查所有配置項(xiàng)是否正確③將“COL_01_CHAR______E”重新命名為“new-line”,單擊“確定”按鈕。④所有配置完成后,進(jìn)行預(yù)檢查,確保遷移成功。⑤檢查所有配置項(xiàng)是否正確。⑥單擊“啟動(dòng)任務(wù)”按鈕,仔細(xì)閱讀提示后,勾選“我已閱讀啟動(dòng)前須知”復(fù)選框。⑦單擊“啟動(dòng)任務(wù)”按鈕,完成任務(wù)創(chuàng)建。⑧任務(wù)創(chuàng)建成功后,返回任務(wù)列表查看創(chuàng)建的任務(wù)狀態(tài)。查看創(chuàng)建的任務(wù)狀態(tài)學(xué)習(xí)進(jìn)步!華為云計(jì)算技術(shù)與應(yīng)用第9章

華為云計(jì)算綜合實(shí)踐華為云計(jì)算技術(shù)與應(yīng)用9.1華為Web網(wǎng)站應(yīng)用實(shí)踐9.2華為云服務(wù)運(yùn)維管理實(shí)踐學(xué)習(xí)要點(diǎn)9.1.1 網(wǎng)站應(yīng)用方案介紹小型網(wǎng)站一般會(huì)部署在單臺(tái)服務(wù)器上,用戶對(duì)頁面的訪問、動(dòng)靜態(tài)內(nèi)容的使用、數(shù)據(jù)庫的使用和計(jì)算全部是在一臺(tái)服務(wù)器上完成的。當(dāng)網(wǎng)站業(yè)務(wù)發(fā)展到中型規(guī)模時(shí),用戶對(duì)數(shù)據(jù)庫的訪問量劇增,單臺(tái)服務(wù)器配置已不能滿足業(yè)務(wù)要求,此時(shí),可將數(shù)據(jù)庫和網(wǎng)站程序分開部署在不同的服務(wù)器上分擔(dān)性能壓力。根據(jù)我國規(guī)定,網(wǎng)站所使用的服務(wù)器需要進(jìn)行ICP備案(又稱域名備案),備案可由網(wǎng)站所在的服務(wù)器托管商完成,沒有經(jīng)過備案的網(wǎng)站域名不能被訪問??蓪?shù)據(jù)節(jié)點(diǎn)與業(yè)務(wù)節(jié)點(diǎn)分開部署在不同的服務(wù)器上??舍槍?duì)不同業(yè)務(wù)量動(dòng)態(tài)調(diào)整服務(wù)器個(gè)數(shù)。可自動(dòng)將流量分發(fā)到多臺(tái)服務(wù)器??蛇M(jìn)行域名注冊及解析??蛇M(jìn)行網(wǎng)站備案。應(yīng)用場景以使用華為云搭建某論壇網(wǎng)站為例,這種場景下的需求如左所示9.1.1 網(wǎng)站應(yīng)用方案介紹針對(duì)應(yīng)用場景的各項(xiàng)需求,使用華為云搭建論壇網(wǎng)站的方案及所需服務(wù)如下表所示。設(shè)計(jì)方案需求華為云方案服務(wù)將數(shù)據(jù)節(jié)點(diǎn)與業(yè)務(wù)節(jié)點(diǎn)分開部署搭建網(wǎng)站:購買兩臺(tái)彈性云服務(wù)器代替?zhèn)鹘y(tǒng)服務(wù)器,分別作為網(wǎng)站的數(shù)據(jù)節(jié)點(diǎn)和基礎(chǔ)業(yè)務(wù)節(jié)點(diǎn)。由虛擬私有云為彈性云服務(wù)器提供網(wǎng)絡(luò)資源。在購買服務(wù)器過程中,用戶可以根據(jù)實(shí)際部署方案的要求,選擇是否為云服務(wù)器掛載云硬盤作為數(shù)據(jù)盤彈性云服務(wù)器虛擬私有云、云硬盤(可選)針對(duì)不同業(yè)務(wù)量動(dòng)態(tài)調(diào)整服務(wù)器個(gè)數(shù)配置特性:根據(jù)業(yè)務(wù)需求和策略采用彈性伸縮,使用基礎(chǔ)業(yè)務(wù)節(jié)點(diǎn)的鏡像動(dòng)態(tài)地調(diào)整作為業(yè)務(wù)節(jié)點(diǎn)的彈性云服務(wù)器實(shí)例個(gè)數(shù),保證業(yè)務(wù)平穩(wěn)、健康運(yùn)行彈性伸縮自動(dòng)將流量分發(fā)到多臺(tái)服務(wù)器配置特性:使用負(fù)載均衡將訪問流量自動(dòng)分發(fā)到多臺(tái)業(yè)務(wù)節(jié)點(diǎn)彈性云服務(wù)器,擴(kuò)展應(yīng)用系統(tǒng)對(duì)外的服務(wù)能力,實(shí)現(xiàn)更高水平的應(yīng)用程序容錯(cuò)性能彈性負(fù)載均衡在Internet上通過域名直接訪問該網(wǎng)站訪問網(wǎng)站:為該網(wǎng)站注冊域名,并為域名配置解析記錄。注冊域名后,通過DNS獲取域名與IP地址的對(duì)應(yīng)關(guān)系,從而查找到相應(yīng)的服務(wù)器,打開網(wǎng)頁域名注冊云解析服務(wù)9.1.1 網(wǎng)站應(yīng)用方案介紹邏輯架構(gòu)網(wǎng)站搭建(參考如圖所示的方案進(jìn)行)01OPTION為彈性云服務(wù)器1綁定彈性IP,搭建數(shù)據(jù)庫。先解綁彈性云服務(wù)器1上的彈性IP,再將彈性IP綁定至彈性云服務(wù)器2上,搭建Web環(huán)境并部署網(wǎng)站程序。彈性伸縮可以根據(jù)業(yè)務(wù)量的變化,通過彈性云服務(wù)器2的鏡像生成彈性伸縮組中的彈性云服務(wù)器。彈性伸縮組使用彈性負(fù)載均衡監(jiān)聽器。通過彈性負(fù)載均衡服務(wù)的公網(wǎng)IP訪問網(wǎng)站。彈性負(fù)載均衡服務(wù)將訪問流量自動(dòng)分發(fā)到多臺(tái)彈性云服務(wù)器。(1)(2)(3)(4)9.1.1 網(wǎng)站應(yīng)用方案介紹域名配置及備案(整體流程如圖所示)02OPTION購買域名:如果用戶想要通過域名訪問網(wǎng)站,那么用戶首先需要擁有域名。用戶可以在華為云或第三方購買域名。通過華為云購買域名并進(jìn)行域名注冊的步驟如下。(1)9.1.1 網(wǎng)站應(yīng)用方案介紹a.域名注冊c.域名購買b.“域名查詢”界面9.1.1 網(wǎng)站應(yīng)用方案介紹域名備案:當(dāng)前法律法規(guī)規(guī)定所有網(wǎng)站都需要備案才能運(yùn)營,備案分為網(wǎng)站域名備案(中華人民共和國工業(yè)和信息化部備案)和公安局備案兩種。解析并綁定域名:通過配置域名解析與綁定,將域名解析至云速建站,實(shí)現(xiàn)域名與IP地址的轉(zhuǎn)換。云速建站支持在華為云或第三方解析域名,然后在云速建站中綁定已解析的域名。添加SSL證書:如果用戶想通過HTTPS訪問網(wǎng)站,則需要為域名添加對(duì)應(yīng)的SSL證書。對(duì)購買的域名進(jìn)行解析及備案后,用戶及其他訪客可以通過域名直接訪問網(wǎng)站。(2)(3)(4)網(wǎng)站域名備案的域名備案原則是服務(wù)器資源在哪里就在哪里備案。購買云速建站后,需要在華為云備案。如果域名已在第三方備案過,當(dāng)前需要把此域名綁定到云速建站,依然要在華為云備案。一些網(wǎng)站需要到公安局備案,由于各個(gè)地區(qū)的政策有可能不相同,在不同的公安局進(jìn)行備案可能會(huì)有不同的要求。在某些地區(qū),公安局備案需要申辦人本人攜帶身份證去當(dāng)?shù)毓簿种付ňW(wǎng)警大隊(duì)進(jìn)行核對(duì)、驗(yàn)證。9.1.2 搭建論壇網(wǎng)站搭建論壇網(wǎng)站需要的云服務(wù)資源如下圖所示,步驟依次為:創(chuàng)建虛擬私有云、申請彈性IP、創(chuàng)建安全組并添加規(guī)則、購買華為彈性云服務(wù)器,以及購買域名。云服務(wù)購買Discuz!論壇是全球成熟度最高、覆蓋率最大的論壇軟件系統(tǒng)之一。Discuz!將論壇、社交、平臺(tái)等功能融為一體,能夠?qū)崿F(xiàn)一站式服務(wù)。9.1.2 搭建論壇網(wǎng)站搭建流程搭建數(shù)據(jù)庫安裝MySQL,具體步驟如下。01OPTION遠(yuǎn)程登錄云服務(wù)器discuz01。執(zhí)行以下命令,安裝MySQL數(shù)據(jù)庫服務(wù)器、MySQL客戶端和MySQL開發(fā)所需的庫及包含文件。(1)(2)yuminstall-ymysql-servermysqlmysql-devel9.1.2 搭建論壇網(wǎng)站配置MySQL,具體步驟如下。02OPTION①servicemysqldstart//啟動(dòng)MySQL服務(wù)②mysqladmin-urootpassword'Huawei@123'//設(shè)置數(shù)據(jù)庫管理員賬號(hào)密碼③mysql-uroot-p//根據(jù)提示輸入數(shù)據(jù)庫管理員root賬號(hào)密碼④usemysql//使用MySQL數(shù)據(jù)庫⑤selecthost,userfromuser;//查看用戶列表⑥updateusersethost='%'whereuser='root'LIMIT1;//刷新用戶列表并允許所有IP對(duì)數(shù)據(jù)庫訪問⑦flushprivileges;//強(qiáng)制刷新權(quán)限⑧quit;//退出數(shù)據(jù)庫⑨servicemysqldrestart;//重啟MySQL服務(wù)⑩chkconfigmysqldon;//設(shè)置開機(jī)自動(dòng)啟動(dòng)MySQL服務(wù)serviceiptablesstop;//關(guān)閉防火墻chkconfigiptablesoff;//設(shè)置服務(wù)器重啟后永久關(guān)閉防火墻9.1.2 搭建論壇網(wǎng)站搭建Web環(huán)境安裝Web環(huán)境01OPTION將彈性IP從彈性云服務(wù)器discuz01上解綁,并綁定至彈性云服務(wù)器discuz02上,云服務(wù)器解綁操作步驟如下圖所示。(1)9.1.2 搭建論壇網(wǎng)站9.1.2 搭建論壇網(wǎng)站遠(yuǎn)程登錄云服務(wù)器discuz02。執(zhí)行以下命令,安裝Apache服務(wù)器、PHPFastCGI管理器、MySQL客戶端和MySQL數(shù)據(jù)庫服務(wù)器。yuminstall-yhttpdphpphp-fpmmysqlmysql-serverphp-mysql執(zhí)行以下命令,更新Apache服務(wù)器、PHPFastCGI管理器、MySQL客戶端和MySQL數(shù)據(jù)庫服務(wù)器。yumreinstall-yhttpdphpphp-fpmmysqlmysql-serverphp-mysql(2)(3)(4)9.1.2 搭建論壇網(wǎng)站配置Web環(huán)境02OPTION①servicehttpdstart//啟動(dòng)httpd服務(wù)②chkconfighttpdon //設(shè)置開機(jī)自動(dòng)啟動(dòng)httpd服務(wù)③servicephp-fpmstart//啟動(dòng)php-fpm服務(wù)④chkconfigphp-fpmon//設(shè)置開機(jī)自動(dòng)啟動(dòng)php-fpm服務(wù)⑤serviceiptablesstop //關(guān)閉防火墻⑥chkconfigiptablesoff //設(shè)置服務(wù)器重啟后永久關(guān)閉防火墻⑦servicemysqldstart//啟動(dòng)MySQL服務(wù)⑧chkconfigmysqldon//設(shè)置開機(jī)自動(dòng)啟動(dòng)MySQL服務(wù)⑨在瀏覽器地址欄中輸入“http://彈性IP地址”并按回車鍵,訪問服務(wù)器的默認(rèn)主頁9.1.2 搭建論壇網(wǎng)站①遠(yuǎn)程登錄云服務(wù)器discuz02,下載Discuz!軟件。②解壓Discuz!安裝包。 //設(shè)置開機(jī)自動(dòng)啟動(dòng)httpd服務(wù)③cp-rupload/*/var/www/html//將解壓后的“upload”文件夾下的所有文件復(fù)制到“var/www/html”路徑下④chmod-R777/var/www/html//將寫權(quán)限賦予其他用戶⑤在瀏覽器地址欄里輸入“http://彈性IP地址”并按回車鍵,進(jìn)入“安裝向?qū)А苯缑?,按照向?qū)нM(jìn)行安裝。部署網(wǎng)站代碼9.1.2 搭建論壇網(wǎng)站驗(yàn)證搭建結(jié)果在瀏覽器地址欄中輸入“http://彈性IP地址/forum.php”并按回車鍵,可登錄Discuz!主頁則說明網(wǎng)站搭建成功,Discuz!主頁如下圖所示。9.1.3 配置特性彈性伸縮可幫助解決以上問題。當(dāng)在論壇的服務(wù)器系統(tǒng)中應(yīng)用彈性伸縮后,系統(tǒng)可以根據(jù)設(shè)定的策略,自動(dòng)地增加或減少服務(wù)器的數(shù)量,在保證網(wǎng)站正常運(yùn)轉(zhuǎn)的同時(shí)節(jié)約成本。下面介紹如何使用彈性伸縮服務(wù)搭建一個(gè)可自動(dòng)增加或減少彈性云服務(wù)器數(shù)量的Web服務(wù)。釋放彈性IP創(chuàng)建彈性負(fù)載均衡配置彈性負(fù)載均衡制作鏡像配置彈性伸縮驗(yàn)證配置結(jié)果①創(chuàng)建彈性伸縮組及伸縮配置。②為彈性伸縮組配置策略。③增加伸縮實(shí)例。④修改伸縮組。①獲取彈性負(fù)載均衡服務(wù)的彈性IP地址。②在瀏覽器地址欄中輸入“http://彈性IP地址/forum.php”并按回車鍵,可以訪問網(wǎng)站則說明網(wǎng)站的特性配置成功。用戶所能使用的彈性IP數(shù)目默認(rèn)為一個(gè),如果需要擴(kuò)大彈性IP的配額,則需要另外申請。使用彈性負(fù)載均衡功能時(shí),系統(tǒng)會(huì)自動(dòng)分配一個(gè)公網(wǎng)IP,該公網(wǎng)IP屬于彈性IP。9.1.4 訪問網(wǎng)站下圖所示為訪問網(wǎng)站示意,訪客可以在Internet上通過已備案的域名訪問網(wǎng)站。9.1華為Web網(wǎng)站應(yīng)用實(shí)踐9.2華為云服務(wù)運(yùn)維管理實(shí)踐學(xué)習(xí)要點(diǎn)9.2.1 云服務(wù)運(yùn)維管理概述隨著企業(yè)IT信息化的不斷深入,企業(yè)對(duì)IT系統(tǒng)的依賴程度與日俱增。企業(yè)各種IT系統(tǒng)成為企業(yè)業(yè)務(wù)的助推器,提升了企業(yè)業(yè)務(wù)的管理效率。但是隨著企業(yè)愈發(fā)離不開IT系統(tǒng),如何保障IT系統(tǒng)高效、穩(wěn)定、持續(xù),甚至“7×24h”不間斷地提供服務(wù),成為企業(yè)中各級(jí)IT人員急需解決的關(guān)鍵問題。傳統(tǒng)的IT運(yùn)維是指等到IT系統(tǒng)出現(xiàn)故障后,再由運(yùn)維人員采取相應(yīng)的補(bǔ)救措施。這種被動(dòng)的、孤立的IT運(yùn)維管理模式往往使IT部門疲憊不堪,主要表現(xiàn)在以下3個(gè)方面。運(yùn)維人員被動(dòng)、效率低。缺乏有效的IT運(yùn)維機(jī)制。缺乏高效的IT運(yùn)維工具。9.2.1 云服務(wù)運(yùn)維管理概述自動(dòng)化運(yùn)維的價(jià)值在于將運(yùn)維與煩瑣、日常、易發(fā)生事故的工作分離,實(shí)現(xiàn)更有價(jià)值的業(yè)務(wù)運(yùn)維,其最終目標(biāo)是擺脫所有人力的干預(yù),實(shí)現(xiàn)運(yùn)維服務(wù)便捷化。云服務(wù)的運(yùn)維管理方式可大致分為以下4種,其中除方式①以外,其余都可以被用于實(shí)現(xiàn)運(yùn)維自動(dòng)化或半自動(dòng)化。②云平臺(tái)提供各類云服務(wù)的API,用戶可以通過調(diào)用接口的工具對(duì)云服務(wù)進(jìn)行管理,如調(diào)用華為云的APIExplorer工具。①直接登錄云平臺(tái)的管控界面,如在華為云控制臺(tái)手動(dòng)創(chuàng)建云服務(wù)資源并管理。④使用Terraform、Ansible等專業(yè)的云運(yùn)維管理工具。③云平臺(tái)提供多種SDK,把云服務(wù)的操作拆解成多個(gè)API,供使用廠商通過代碼進(jìn)行調(diào)用。本節(jié)主要介紹方式③下華為云服務(wù)的運(yùn)維管理。9.2.2 華為云PythonSDK獲取和安裝安裝VPC服務(wù)庫:在Windows終端中執(zhí)行如下命令安裝VPC服務(wù)庫。pipinstallhuaweicloudsdkvpc安裝ECS服務(wù)庫:在Windows終端中執(zhí)行如下命令安裝ECS服務(wù)庫。pipinstallhuaweicloudsdkecs安裝EVS服務(wù)庫:在Windows終端中執(zhí)行如下命令安裝EVS服務(wù)庫。pipinstallhuaweicloudsdkevs(2)(3)(4)安裝核心庫:在Windows終端中執(zhí)行如下命令安裝核心庫。pipinstallhuaweicloudsdkcore(1)安裝華為云PythonSDK核心庫及其他相關(guān)服務(wù)庫,可以使用pip或源碼進(jìn)行安裝,具體步驟如下。9.2.2 華為云PythonSDK獲取和安裝#安裝核心庫cd.\huaweicloud-sdk-python-v3-master\huaweicloud-sdk-core\huaweicloudsdkcorepythonsetup.pyinstall#安裝VPC服務(wù)庫cd..\..\huaweicloud-sdk-vpc\huaweicloudsdkvpcpythonsetup.pyinstall#安裝ECS服務(wù)庫cd..\..\huaweicloud-sdk-ecs\huaweicloudsdkecspythonsetup.pyinstall#安裝EVS服務(wù)庫cd..\..\huaweicloud-sdk-evs\huaweicloudsdkevspythonsetup.pyinstall除了使用pip安裝,也可以使用源碼安裝。下載華為云PythonSDK源碼并解壓,執(zhí)行如下命令安裝華為云PythonSDK核心庫以及相關(guān)服務(wù)庫。9.2.3 華為云SDK在PythonConsole中的使用示例使用PythonConsole同步查詢特定Region下的VPC列表。進(jìn)入PythonConsole01OPTION在Windows終端中輸入“python”并執(zhí)行,進(jìn)入PythonConsole,如圖所示。執(zhí)行如下命令進(jìn)行測試。print("helloworld")9.2.3 華為云SDK在PythonConsole中的使用示例導(dǎo)入依賴模塊02OPTION在PythonConsole中執(zhí)行如下命令導(dǎo)入依賴模塊。#導(dǎo)入核心庫依賴模塊fromhuaweicloudsdkcore.auth.credentialsimportBasicCredentialsfromhuaweicloudsdkcore.exceptionsimportexceptionsfromhuaweicloudsdkcore.http.http_configimportHttpConfig#導(dǎo)入VPC服務(wù)庫依賴模塊fromhuaweicloudsdkvpc.v2import*9.2.3 華為云SDK在PythonConsole中的使用示例配置客戶端屬性03OPTION①使用默認(rèn)配置。配置客戶端屬性時(shí),可以使用默認(rèn)配置或代理配置,執(zhí)行如下命令使用默認(rèn)配置。config=HttpConfig.get_default_config()②代理配置(可選)。輸入并按實(shí)際情況修改如下代碼以使用代理配置。xy_protocol='http'xy_host=''xy_port=80xy_user='username'xy_password='password'③連接配置。配置連接超時(shí)時(shí),支持統(tǒng)一指定超時(shí)時(shí)長timeout=timeout,或者分別指定超時(shí)時(shí)長timeout=(connecttimeout,readtimeout),執(zhí)行如下命令統(tǒng)一指定超時(shí)時(shí)長。config.timeout=3④SSL配置。執(zhí)行如下命令配置跳過服務(wù)端證書驗(yàn)證。config.ignore_ssl_verification=True⑤配置服務(wù)器端證書授權(quán)(CertificateAuthority,CA)(可選)。config.ssl_ca_cert=ssl_ca_cert9.2.3 華為云SDK在PythonConsole中的使用示例輸入認(rèn)證信息,輸入并修改如下代碼以輸入認(rèn)證信息。04OPTIONak="{yourakstring}"sk="{yourskstring}"endpoint="{yourendpoint}"project_id="{yourprojectid}"①在華為云控制臺(tái)“我的憑證-訪問密鑰”界面單擊“新增訪問密鑰”按鈕,控制臺(tái)會(huì)自動(dòng)下載credentials.csv文件,打開文件即可找到ak、sk密鑰。②查看地區(qū)和終端節(jié)點(diǎn)(華為云各服務(wù)應(yīng)用地區(qū)和各服務(wù)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論