【云駐共創】華為云數據庫之走進GaussDB數據庫

      網友投稿 811 2025-03-31

      第1章 課程簡介

      數據庫原理以及應用是高等院校計算機專業的核心課程,是有關數據庫理論和技術相結合的課程,大家知道在我國近二十年的數據庫原理及應用的教學活動中,教學實驗環節幾乎沒有國產數據庫的身影,近年來國產數據庫軟件日益成熟,尤其是華為公司自主研發的國產云數據庫GaussDB家族的出現,給我們帶來新的氣息,本課程是以GaussDB for MySQL為背景,構建的一門新課,講述了數據庫原理及應用的相關的教學內容。

      學習這門課程同學們首先要明確數據庫原理及應用課程的重要性,時代價值,和現實意義,大家知道我們正處在新時代,而所謂的新時代,一個重要的內涵,就是進入了一個數字社會,以數字化為特征的第四次工業革命的到來,數字化了一切可以數字化的事物,這場以數字化為核心的革命其速度之快,范圍之廣,程度之深,前所未有,深刻的改造了我們每一個人,改造了社會生活,在新時代,我們已離不開數字化,數據已經成為萬事萬物和人們生存,首屈一指的象征,有無數的例子可以證明,數據就是生產資料,計算就是生產力。

      在今天一切皆可用數據表達,而數據庫技術就是人們采集、存儲、加工和使用數據的技術,是創造新時代數據生活和數字化生存的技術,數據庫技術現如今已經成為我們身邊的科學,成為我們提升業務水平的技術,成為我們事業競爭的武器,成為我們衣食住行的生存工具,具體的落實到教學中,我們的課程目標有如下三個方面:

      (1)培養學習者對數據“來源、組成、內涵、運行邏輯和相互關系理解”的素養,增強學習者分析問題和數據表達的能力。

      (2)培養學習者運用數據庫技術解決實際應用的意識,增強學習者利用數據庫管理系統進行應用系統開發的能力。

      (3)培養學習者積極探索“新技術、新方法”的理念,增強學習者團隊協作、自主創新的能力。

      為了達成課程目標,我們把教學內容設計成了三個教學模塊,分別是數據庫基礎理論,數據庫技術,數據庫系統控制,對這三個教學模塊,我們又細分了多個教學單元,在數據庫基礎理論模塊中,各教學單元的主要內容有數據庫基本概念,關系數據庫,關系規范化,關系代數,數據庫設計方法與步驟。在數據庫技術模塊中各教學單元的主要內容包括數據庫的操縱、數據庫表與視圖的操作、SQL語言、數據查詢語言的應用、存儲過程、與觸發器的創建和使用。在數據庫系統控制模塊中,各教學單元的主要內容有事務的ACID特性、并發控制、數據恢復、安全控制以及GaussDB for MySql數據庫管理系統軟件性能、體系結構等內容。

      以上的教學內容怎么學,大家可以通過三種方式來進行,一是通過中國大學慕課教學平臺來學習這門課程,我們教學團隊八位教師通過教學視頻向大家講述這門課程的全部的內容,另外我們還專門邀請了華為公司的數據庫專家,就GaussDB數據庫管理系統做了相關的講解,同時我們還將通過慕課教學平臺進行解惑答疑和論點討論,支持本課程的教學資源豐富,除了慕課課程之外,大家還可以通過我們提供的一體化教材進行學習,與本課程配套的主輔教材共有兩冊,其中主教材共有三篇13個篇章,在基礎理論篇,技術篇、系統篇三個篇章只有配有60個視頻擴展內容的講述,學習者在閱讀教材的過程中通過掃描書中的二維碼,便可以在線學習,實驗教材共有12個篇章,詳細的介紹了在GaussDB for MySQL的系統環境下進行數據庫應用的實驗方法與步驟,實驗教材配有37個微視頻,手把手教大家使用云數據庫,另外實驗教材還配有習題指導,數據庫設計案例、實例介紹供大家學習及參考,我們也歡迎感興趣的高校教師利用線上的教學資源在線下采用翻轉課堂的教學模式展開教學活動,可以講數據庫原理及應用課程的教學環境,搭建成線上線下+實踐聯動的教學場景,讓學生通過線上的慕課學習數據庫基礎理論和相關技術,讓教師通過線下課堂講述和討論延展線上的教學內容,讓學生通過實踐教學環境進行模擬和創新實驗,檢驗、消化和理解數據庫基礎理論及數據庫應用技術。

      第2章 基本概念

      從科學研究到醫療健康,從教育到金融,從企業到互聯網,各個不同的領域的都在講述著一個類似的故事,那就是數據量爆發式增長的故事,和對數據量增長進行有效應用的故事,這是一個故事的兩個側面,前一個是數據的故事,后一個則是有關數據庫的故事,走進數據庫我們可以去體會數據庫世界帶給我們無窮無盡的景觀,去發現數據之美,這門課程的第一章走進GaussDB數據庫,本章的主要內容是向大家介紹信息、數據、數據庫、數據庫管理系統、數據庫系統、分布式數據庫系統等基本概念,介紹數據庫系統體系結構,數據庫應用系統的組成,以及GaussDB數據庫管理系統的特點和應用系統架構

      2.1 與數據庫相關的基本概念

      信息

      走進數據庫應用領域,首先遇到的是信息、數據、數據庫等基本概念,我們先來介紹信息的概念,什么是信息,信息可以定義為人們對客觀事物屬性和運動狀態的反映,它所反映的是關于某一客觀系統中,某一事物的存在方式或者某一時刻的運動狀態。從圖1我們可以看到這是長白山天池,我們可以看到它的美,它的壯觀,從圖2可以看到這是九寨溝密集的游客,如果我們身處其中,這種感受更為強烈,這就是人們對客戶事物屬性的反映,是信息的發現,由此可知,信息是人們在進行社會活動、經濟活動以及生產活動中的產物,并用于參與指導人類的社會活動過程,信息是有價值的,是可以被人感知的,信息可以通過載體來傳遞,可以通過信息處理工具進行存儲、加工、傳播、再生和增值。從圖1和圖2我們可以看到美麗的長白山天池和游客爆滿的九寨溝,這就是信息載體傳遞的投射。

      我們了解了信息是人們對于客觀事物屬性和運動狀態的反映,下面我們了解一下信息具有哪些特征:

      (1)信息是關于客觀事物或者思想方面的知識,信息的內容能反映已存在的客觀事實,能預測決策未發生事物的狀態,能用于指揮控制事物的發展。

      (2)信息具有有用性,信息是人類活動的必須知識,利用信息能夠克服工作中的盲目性,增強主動性和科學性

      (3)信息具有可傳遞性,信息可以在空間上傳遞,也可以在時間上傳遞,空間上傳遞為信息通訊,時間上傳遞成為信息存儲。

      (4)信息具有可表現形式,信息是通過數據來表現記錄的。

      簡單的說信息具有知識性,當我們閱讀了第四次工業革命一書時,就可以從中了解到當今社會的大趨勢、大機遇、大挑戰、這說明信息是具有知識性,另外一方面信息要具有有用性,才能被關注,信息一定是人類活動所需、所關心的客觀世界的反映。信息是可傳遞的,只要構建良好的數據庫系統,信息就可以在時空中遨游。信息具有可表現性,信息是通過專門的符號來表現的,這么課程介紹的主要內容就是數據庫的相關知識,它可以讓信息插上翅膀。

      數據

      表示數據的專門符號就是數據,準確的講,數據是反應客觀事物存在方式和運動狀態的記錄,是信息的載體。對客觀事物屬性和運動狀態的記錄是用一定的符號來表達的,因此說數據是信息的具體表現。對一某具體事物而言,信息的數據表現形式是多種多樣的,它不僅僅是由0到1數字符號組成的符號序列,它可以是文字字符,圖形,圖像,音頻,視頻文件等,從計算機的角度看,我們還可以說數據泛指那些可以被計算機接受,并能夠被計算機處理的符號,數據是數據庫中存儲的基本對象,數據是信息的表現形式,數據有如下四個主要的特征:

      (1)數據有“型”和“值”之分;

      (2)數據在使用時受數據范圍和取值范圍的約束

      (3)數據有多種表現形式

      (4)數據有明確的語義

      例如有下面兩組數據,在學生檔案和員工檔案中,李響,男,1972,江蘇,計算機系,2009,這個完全相同的一組數據,在學生檔案中,我們講數據的類型定義為姓名、性別、出生年月、籍貫、所在系、入學時間,這組數據表現的信息為李響是一個男同學,1972年出生,江蘇人,2009年考入計算機系;再看下面員工檔案中的數據,其值完全相同,數據的型只有入學時間對應的是入職時間,由于數據的型發生了變化,我們對這組數據表示的內容解釋就完全不同,后一組數據表示的信息就是李響是一名男職工,1972年出生,江蘇人,2009年入職計算機信息,由此可見數據的型和值的不同決定了數據的語義的不同。

      再比如這里展示的兩幅圖片,看似毫無關系,結果卻是一個客觀事物的記錄,當我們對圖2所示的課堂的所有學生進行一次問卷調查,讓學生們回答你都認識誰,然后將調查結果所獲得的數據進行加工處理后就可以得到圖1的結果,從圖1我們可以看到這個課堂中的學生,有的人人氣很高,與很多人相識,有的誰也不認識,通過這張抽象的圖形,我們就可以對每個學生的人氣、人際關系、價值進行評估,由此可知,數據的型和數據值,以及數據的表現形式與數據的價值都有直接關聯,有了信息和數據的概念,我們再看看什么是數據庫。

      數據庫

      數據庫從字面上理解是存儲數據的倉庫,但是它是有著特殊意義存儲數據的倉庫,所謂的數據庫是以一定的組織方式,將相關的方式組織在一起,長期存放在計算機內,可為多個用戶共享與應用程序彼此獨立,統一管理的數據的集合。

      這四張圖是四個不同物品的倉庫的局部圖,圖1是存放器材的倉庫,圖2是存放膠片的倉庫,圖3是存放物品的倉庫,圖4是存放圖書的倉庫,從這些圖不難看出,一個存放大量貨物的倉庫,需要占有足夠的存儲空間,即存放物品的空間要足夠大,二是存放物品,放置一定要有規矩,這是為了存取方便,再有要有統一管理的方法,符合這三點,這樣才能使倉庫功能更好的實現。

      參照上面的圖示,參考數據庫的定義,我們不難看出數據庫有如下特征:

      (1)數據庫按一定的數據模型進行組織、描述和存儲,這就說明數據庫不僅能存儲客觀事物的信息,還包括記錄了各事物間的聯系,數據庫的性質是由數據模型決定的,有嚴格的數學計算法則,二是長期存儲,數據庫是以文件的形式,存放在計算機的外部存儲介質中,可以長期存放。

      (2)可為多用戶共享;因為數據庫以嚴格的數學模式建構數據的文件組織,又能長期存放,由此提供了多用戶共享的可能。

      冗余度較小;

      數據獨立性較高,數據庫與應用程序彼此獨立,應用程序的改變不影響數據庫的數據組織。

      【云駐共創】華為云數據庫之走進GaussDB數據庫

      (5)易擴展;統一管理,數據庫的創建、操作、管理是由專門的軟件來進行管理的。

      2.2 數據庫應用系統的組成

      數據庫管理系統

      數據庫管理系統(DataBase Management System DBMS)是位于用戶與操作系統之間,具有數據定義、管理和操縱功能的軟件集合。

      數據庫管理系統提供了對數據庫資源進行統一管理和控制的功能,使數據與應用程序隔離,且使數據具有獨立性。

      數據庫管理系統使數據結構及數據存儲具有一定的規范性,減少了數據的冗余,并有利于數據共享。

      數據庫管理系統提供了安全性和保密性措施,使數據不被破壞,不被竊用;提供了并發控制,在多用戶共享數據時保證數據庫的一致性。

      數據庫管理系統提供恢復機制,當出現故障時,數據恢復到一致性狀態。

      從數據結構維度看,數據庫管理系統從層次數據庫、網狀數據庫、關系數據庫、面向對象數據庫。

      目前流程的關系數據庫管理系統:MySQL、Oracle、Access、SQL Server等

      GaussDB(for MySQL)是由華為公司研發的國產關系數據庫管理軟件。

      從數據庫管理系統體系結構的維度看,數據庫管理系統從集中式數據庫、分布式數據庫、云數據庫、多模數據庫一路發展而來,GaussDB(for MySQL)是關系型、云數據庫管理系統軟件。目前不僅服務許多企業用戶,也開始走進高等院校的課堂,并支持和服務于科研院所等單位,但是無論是哪款數據庫管理系統軟件,無論是MySQL、Oracle、還是GaussDB都具有如下的主要功能:

      數據定義功能

      數據操縱功能

      數據庫運行和管理功能

      數據庫建立和維護功能

      接下來我們介紹另外一個基本概念,數據庫系統(DataBase System,DBS)是支持數據庫得以運營的基礎性的系統,數據庫是數據庫系統的核心和管理對象,或者說數據庫系統是實現有組織、動態的存儲大量相關的結構化數據,方便各類用戶訪問數據庫的計算機軟硬件資源的集合。每個具體的數據庫及其數據的存儲、維護是為應用系統提供數據支持,這些支持的操作都是在數據庫系統環境下運行完成的,具體的說數據庫系統的組成,是在計算系統的意義上來理解數據庫系統,它一般由支持數據庫的硬件環境、數據庫軟件支持環境(操作系統、數據庫管理系統、應用開發工具軟件、應用程序等)、數據庫、以及開發、使用和管理數據庫應用系統的人員組成,在數據庫系統中數據將不再散載、不再孤單、從而形成了一種數據庫系統環境,形成了一種數據的生態系統,達成了一攬子的數據管理與數據應用服務,我們走進數據庫系統,就如同走進了一片數據的森林,了解其結構、了解其性質,了解其作用、熟悉其環境所構成的數據生態之后,才能夠駕馭這個特定的數據環境,達成管理或者服務的整體目的。

      分布式數據庫系統

      分布式數據庫系統(Distributed Database System DDBS)是以數據“分布”的方式實現有組織地、動態地存儲大量相關結構化數據,方便各類用戶訪問數據的計算機軟/硬件資源的集合。所謂分布方式指在一般的情況下將一個大型的復雜的數據庫拆分成多個獨立的數據庫,分散存儲在不同的物理空間,用戶具有多個局部數據庫,通過網絡互相連接,使物理上分布的各局部數據庫共同組建成一個完整的全局的邏輯視圖,對于用戶而言,相當于一個集中的數據庫為其所用,分布式數據庫系統的出現,擴大了數據的存儲空間,可以按需分配數據庫存儲單元,也對數據庫的結構的要求不那么嚴格,雖然使的數據庫的管理和計算的復雜度也有所降低,但是數據管理方式在不斷變化,非結構化的數據處理也能帶來它所具有的方便,應該靈活的對待因地制宜。

      第3章 GaussDB(for MySQL)系統概述

      3.1 什么是GaussDB(for MySQL)

      云數據庫GaussDB(for MySQL)是一款華為自研的最新一代企業級高擴展海量存儲分布式數據庫,完全兼容開源MySQL,基于華為最新一代DFV存儲,采用計算存儲分離架構,單實例容量最大可以支持128TB的海量存儲,無需分庫分表、數據0丟失,既擁有商業數據庫的高可用和性能,又具備開源低成本效益,從下圖可以看出,GaussDB已經被廣泛應用在電信、金融、電力、互聯網等行業,在企業前臺交易、CRM、Boss等有著非常穩定的表現。

      為了更好的理解GaussDB(for MySQL),我們先來了解下云計算相關的一些概念。

      集群:GaussDB(for MySQL)采用集群架構,一個集群包含一個主節點和多個只讀節點。

      區域(Region):區域是指物理的數據中心,一般情況下,GaussDB(for MySQL)集群應該和彈性云服務器實例位于同一地域,以實現最高的訪問性能。

      (3)可用區(Availability Zone,簡稱AZ):一個AZ是一個或者多個物理數據中心的集合,有獨立的風火水電,AZ內邏輯上再講計算、網絡、存儲等資源劃分成多個集群,可用區是指在某個地域內擁有獨立電力和網絡的物理區域,可用區之間內網互通,不同可用區之間物理隔離。每個可用區都不受其他可用區故障的影響,并提供低價、低延遲的網絡連接,以連接到同一地區其他可用區,通過使用獨立可用區內的GaussDB(for MySQL),可以保護應用程序不受單一位置故障的影響,同一Region的不同AZ之間沒有實質性區別。比如手機的12306 APP,該系統事關國計民生,對可用性要求非常高,如果12306部署在同一個區域會面臨什么問題,當電力中斷, 12306就不可用,這種系統一般都要跨區域部署,當一個區域出現故障,整個系統不受影響。

      3.2 開源MySQL瓶頸

      開源MySQL的主備架構已經發展多年,在各行各業都有廣泛的應用,在互聯網、5G、AI等技術的不斷發展,各種結構數據量也在爆炸式的增長,同樣在關系型場景,數據量也在不斷的突破上限,數據量的不斷的暴增,超過并發場景的不斷出現,對傳統數據庫架構帶來了極大的挑戰,開源MySQL架構的瓶頸逐漸暴露,首先開源MySQL架構中為確保整體架構的可用性,背后是不承擔讀寫流量的,只做高可用,這本身就是一種資源的浪費,其次在電商促銷等場景,數據庫的訪問壓力會因為活動的到來會成倍的增長,這時候只能添加只讀節點來承載流量是通用的解決方案,但是添加只讀節點的時間和數據量成正比,數據量越大,添加只讀節點的時間越長,往往都是小時級,這可能會多業務帶來較大的影響;另外在一些數據物理刪除的場景,急需找回數據,傳統的MySQL恢復在TB級以上,數據量需要數個小時,這也極大的影響業務的恢復時間,同樣傳統的MySQL主備架構由于網絡的穩定性以及數據本身性能問題帶來的復制延時會進一步影響數據庫的整體性能,開源MySQL主備架構的瓶頸已經存在很多年,那么GaussDB(for MySQL)就是為了解決這些問題開發的。

      3.3 GaussDB(for MySQL)設計原則

      設計原則主要有以下幾點,第一就是解耦,由于開源MySQL主備之間需要同步數據,無法做到計算和存儲的解耦,所以面臨上面講的很多問題,而GaussDB在設計上采用了計算和存儲分離架構,節點之間不需要同步數據,可以做到主節點從節點解耦;第二個設計原則就是近數據計算下推(NDP),就相比傳統架構,所有的SQL查詢都在計算節點完成,一般的數據庫一條SQL查詢發給數據庫后,需要將查詢的數據從存儲上推到內存,由計算節點進行查詢計算得到結果,無法充分利用存儲本身的計算能力,NDP就是將SQL查詢算子,下推到存儲層,直接在存儲層完成,聚合后再返回給用戶,這樣就充分利用了存儲的計算能力,可以極大的提升查詢的速度;第三個設計原則就是充分利用云存儲本身的能力來實現故障容錯,一寫多讀讓整個架構更加簡潔;第四、五個設計原則就是充分利用最新的硬件,做好軟硬件一體的垂直優化以及日志即數據架構,只要寫入日志事務即可返回成功,頁面由存儲層異步回訪,減少網絡流量,將性能發揮到極致。

      GaussDB(for MySQL)產品特點

      (1)超高性能:由于采用了存儲和計算分離架構,日志即數據,也是采用RDMV、MVME等最新的硬件,使得性能相比開源MySQL提升了數倍,單個節點QPS可以達到百萬級別,純寫性能相比開源MySQL提升7倍

      (2)高擴展性:由于采用了存儲計算分離架構,計算和存儲做到了解耦,添加只讀節點,不再需要同步數據,所以添加一個只讀節點5分鐘即可完成,并且最多可以支持15個只讀節點,同時存儲也支持自動彈性擴展,按需計費。

      高可用性:數據采用3副本存儲,同時支持跨AZ部署,還支持自動數據全量、增量備份,可做到數據零丟失。

      高兼容性:完全兼容開源MySQL,原有MySQL應用無需任何改造便可運行。

      (5)海量存儲:采用計算存儲分離架構,節點之間不需要同步數據,單實例最大可以支持128TB數據量,相比開源MySQL2TB數據量就需要采用分庫分表來解決性能問題,GaussDB(for MySQL)無需分庫分表,極大減少企業的改造成本,滿足業務極速上云

      (6)易開發:兼容SQL2003標準,支持存儲過程和豐富的API接口如(JDBC、ODBC、Python、C-API、GO)等為數據庫應用開發提供了很大的便利,代碼無需修改就可以進行開發和適配。

      3.5 GaussDB(for MySQL)實例管理

      企業在華為云創建GaussDB(for MySQL)后,即可在管理控制臺查看到該實例,通過管理控制臺,用戶可以做相關的運維管理動作,比如隨著業務的增長,實例的規格無法做到滿足業務的要求時,這時候可以在管理控制臺做規格變更,增加規格的CPU、內存、或者存儲來提升規格的性能,同時還可以做重置密碼,創建備份,創建節點等操作,管理控制臺的對實例的管理能力,相比自建數據庫,極大的提升了企業的開發和DBA的工作效率

      不僅如此,還提供了管理控制的開發工具,用戶可以登錄開發工具,使用標準的MySQL語法,對數據庫做增刪改查等操作,同時這個開發工具還有很多功能,如查看MySQL,查看MySQL的執行指標等,是DBA和開發人員的好幫手。

      第4章 總結

      本文第1章系統的闡述了數據庫原理以及應用課程的重要性,第2章主要從信息、數據、數據庫、數據庫系統、數據庫管理系統等方面介紹了相關的基本概念,隨著數據庫技術的發展,為了解決開源MySQL存在的瓶頸,更好的滿足各行業業務對數據庫高可用、高性能的要求,華為自主研發的GaussDB(for MySQL)國產數據庫應運而生,第3章從什么是GaussDB(for MySQL)、設計原則、產品特點、實例管理等5個方面系統的闡述了GaussDB(for MySQL)數據庫的相關知識,本篇只是GaussDB(for MySQL)數據庫的一個簡單的介紹,要想深入學習這款國產自主的數據庫,還需要學習更多關于GaussDB(for MySQL)的知識。

      本文整理自華為云社區【內容共創】活動第15期。

      https://bbs.huaweicloud.com/blogs/345822

      任務17:華為云數據庫之走進GaussDB數據庫

      上云必讀

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:如何通過微信向 Field Service Management 系統發起交互
      下一篇:如何在 Kubernetes 集群中搭建一個復雜的 MySQL 數據庫?
      相關文章
      亚洲av午夜成人片精品网站 | 亚洲国产精品美女| 亚洲精品国产字幕久久不卡| 亚洲AV第一成肉网| 亚洲 暴爽 AV人人爽日日碰| 亚洲一区二区三区免费视频| 亚洲成a人片在线观| 久久久久久久亚洲Av无码| 亚洲AV成人片色在线观看| 久久久久亚洲AV片无码| 亚洲Av无码精品色午夜| 亚洲综合久久综合激情久久| 亚洲第一福利网站| 亚洲A∨精品一区二区三区| 国产亚洲视频在线观看| 亚洲XX00视频| 久久久久久A亚洲欧洲AV冫| 亚洲精品成人无限看| 久久亚洲国产成人亚| 久久亚洲精品无码AV红樱桃| 亚洲视频精品在线观看| 亚洲三级在线播放| 亚洲色偷偷综合亚洲av78| 亚洲精品美女视频| 亚洲国产精品久久久久秋霞影院| 亚洲国产精品人久久电影| 亚洲国产日韩综合久久精品| 亚洲国产精品美女久久久久| 国产精品无码亚洲精品2021 | 亚洲国产欧美国产综合一区| 激情小说亚洲图片| 相泽亚洲一区中文字幕| 亚洲国产三级在线观看| 亚洲男人天堂2017| 91亚洲性爱在线视频| 亚洲欧洲AV无码专区| 国产亚洲男人的天堂在线观看| 丁香亚洲综合五月天婷婷| 亚洲国产乱码最新视频| 亚洲av成人一区二区三区在线播放| 国产亚洲综合视频|