什麼是資料庫?
數據庫是數據的電子存儲,系統的收集。它可以包含任何類型的數據,包括單詞,數字,圖像,視頻和文件。您可以使用稱為數據庫管理系統(DBMS)的軟件來存儲,檢索和編輯數據。在計算機系統中,字 數據庫 也可以指任何 DBMS,數據庫系統,或與數據庫相關聯的應用程序。
資料庫的重要之處為何?
高效能的資料庫對任何組織來說都至關重要。資料庫負責支援公司的內部營運,並儲存與客戶和供應商的互動。其中還會保存管理資訊和更專業的資料,例如工程或經濟模型。範例包括數位圖書館系統、旅行預訂系統和庫存系統。以下是資料庫是不可或缺的一些原因。
高效擴展
資料庫應用程式可以管理大量資料,擴充至數百萬、數十億等規模。如果沒有資料庫,將難以儲存這種量級的數位資料。
資料完整性
資料庫通常具有內建的規則和條件可保持資料一致性。
資料安全
資料庫支援任何資料相關的隱私權和合規性要求。例如,若要取得資料庫存取權,使用者必須登入。還可以為不同的使用者設定不同層級的存取權限,例如唯讀。
資料分析
現代軟體系統使用資料庫來分析資料。這些系統可以識別趨勢和模式,或是做出預測。資料分析可協助組織充滿信心地做出業務決策。
資料庫有哪些類型?
您可以根據資料庫的使用案例、資料類型和資料儲存方法來分類資料庫。以下是對資料庫進行分類的三個範例:
- 根據內容,例如文件文字、統計資料或多媒體物件
- 根據應用領域,例如會計、電影或製造
- 根據其技術方面,比如資料庫結構或界面類型
什麼是資料庫模型?
資料庫模型會顯示資料庫的邏輯結構。此模型會定義關係和規則,決定如何儲存、組織和操作資料。每個資料庫應用程式都建立在特定的資料模型上。個別資料庫模型的設計是根據基礎應用程式所採用更廣泛資料模型的規則和概念。
資料庫的演變過程?
最早的資料庫是磁帶,按順序儲存資料記錄。隨著技術的進步,資料庫也在不斷發展。現在,資料庫已成為複雜且高效能的系統,形成專屬的研究領域。讓我們來看看資料模型的演變過程。
階層式資料庫
階層式資料庫盛行於 1970 年代。 這種資料庫不是按順序儲存資料記錄,而是保存在「樹狀結構」中,在兩個文件之間建立父子關係。例如,若要為家具零售商店建立資料庫系統,您可以將「臥室」定義為父記錄,並將「床」、「床頭櫃」和「衣櫃」設為子記錄。「床」記錄可以進一步包含更多的子記錄,例如「單人床」、「雙人床」、「特大床」等等。不幸的是,階層式資料模型實行起來很複雜,而且處理多個父子關係會產生大量的資料重複。
網路資料庫
另一個早期的資料庫是網路資料模型,允許一個子記錄有多個父記錄,反之亦然。所以在家具店的例子中,如果你有兩個父記錄,「臥室」和「兒童房」,兩者都可以鏈接到子記錄「衣櫃」。
關聯式資料庫
在 1980 年代,關聯式資料庫憑藉其生產力、靈活性以及對更高速硬體的兼容性,成為一種流行的企業模式。關聯式資料庫將記錄組織為幾個表格,而不是鏈接清單。
在關聯式資料庫模型中,每個類別都有一個表格,類別屬性作為欄,資料記錄為列。例如,您可以將家具零售商店建立一組表格模型:「房間」與「家具」。表格會依照資料欄連結:「房間編號」和「家具名稱」。這兩個列也被稱為「主索引鍵」。
房間編號 |
房間名稱 |
1 |
臥室 |
2 |
兒童房 |
家具名稱 |
顏色 |
床 |
棕色 |
衣櫃 |
白色 |
床頭櫃 |
黑色 |
房間編號 |
家具名稱 |
1 |
床 |
1 |
衣櫃 |
2 |
衣櫃 |
物件導向型資料庫
1990 年代,為回應物件導向型程式設計的興起,發展出物件導向型資料庫。程式設計人員和設計者開始將資料庫中的資料視為物件。例如,您可以將椅子的屬性 (例如顏色和大小) 對應至「椅子資料物件」。此物件是真實世界椅子在物件導向型資料庫中的虛擬表現法。
NoSQL 資料庫
SQL 是用來擷取、存取和編輯關聯式資料庫中資料的查詢語言。NoSQL 則與之相反,屬於在資料模型中不使用表格關係的資料庫機制。NoSQL 資料庫出現於 21 世紀初,當時興起了叢集運算和分佈式資料庫架構。分佈式架構會將一個大型資料庫儲存在多個基礎儲存裝置上。這種佈局稱為水平擴展。NoSQL 採用的軟體機制是高速、不需要固定的表格結構描述,可儲存重複或分組資料,並且支援水平擴展。
什麼是現代資料庫?
現今的資料庫已發展到在垂直和水平方向進行擴展。這些資料庫可以將大量資料儲存在雲端,並為機器學習和其他資料分析提供進階軟體介面。
雲端資料庫
雲端資料庫通常在雲端運算平台上執行。共有兩種標準部署模式:使用者可以獨立在雲端上執行資料庫,或向雲端資料庫供應商購買存取權限。雲端資料庫可以同時遵循 SQL 和 NoSQL 資料模型。
圖形資料庫
圖形資料庫非常實用,因為這類資料庫會優先考慮不同資料記錄之間的關係。專門用於存放和導覽關係。圖形資料庫由「節點」和「邊緣」組成。節點會儲存資料對象,而邊緣負責儲存對象之間的關係。邊緣一律具有起始節點、結束節點、類型和方向。可以描述父子關係、動作和所有權。單一節點所能擁有的關係數量與關係類型沒有限制。
記憶體內資料庫
雖然大多數資料庫都儲存在外部儲存裝置上,但記憶體資料庫則位於電腦的內部記憶體中。不過,這種資料庫通常也會由電腦資料儲存備份。記憶體資料庫的速度比磁碟資料庫更快。通常用於重視回應時間的裝置,例如電信網路設備。
什麼是資料儲存?
「資料儲存」一詞泛指任何企業中的超大型資料儲存庫。組織會產生各種類型的資料,包括檔案、文件、影片、客戶資料、應用程式資料和系統資料。他們使用資料儲存來處理和儲存所有資料,並將其用於分析、應用程式和資料驅動的決策。
Amazon Redshift 是全受管的 PB 級資料倉儲雲端服務。您可以從數百 GB 的資料開始,然後再擴展到 PB 或更多。
資料庫的用途為何?
所有產業都會使用資料庫滿足各種需求。以下是一些範例:
詐騙偵測
圖形資料庫可協助進行身分管理和詐騙偵測。機器學習演算法會自動找出規律,並搶先一步偵測詐騙活動。
文件管理
NoSQL 資料庫可儲存和管理文件,例如文章和合約。組織還可透過這些資料庫查詢文件並編製索引。
遊戲和娛樂
許多遊戲和娛樂公司廣泛使用資料庫來提供豐富的媒體體驗,例如支援數百萬使用者同時登入存取。
AWS 雲端資料庫如何提供協助?
AWS 雲端資料庫可為各種企業提供廣泛的專用資料庫選擇。 AWS 資料庫支援所有資料庫管理任務,例如伺服器佈建、修補、組態和備份。因此,您可以專注於應用程式開發,而 AWS 會負責持續監控資料庫並自動擴展。以下是 AWS 資料庫服務的一些範例:
- Amazon Relational Database Service (Amazon RDS) 是一項受管服務,方便在雲端設定、操作和擴展關聯式資料庫。
- Amazon Aurora 是專為雲端建立的關聯式資料庫。作為全受管服務,Amazon Neptune 可自動化處理耗時的任務,例如佈建、修補、備份、恢復、故障偵測和修復。
- Amazon Neptune 是一個圖形導向的資料庫,每秒可執行超過 100,000 個查詢。
- Amazon Redshift 是全受管的 PB 級資料倉儲雲端服務。
- Amazon ElastiCache 是全受管、可擴展且安全的記憶體內 NoSQL 資料庫。這個資料庫經常用於行動應用程式、遊戲、電子商務,以及其他需要將經常性存取資料儲存在記憶體內的應用程式。
閱讀有關如何選擇資料庫的資訊,或立即建立免費的 AWS 帳戶開始使用。