PostgreSQL 教程

2020-04-22 14:50 更新

什么是數(shù)據(jù)庫?

 數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結構來組織,存儲和管理數(shù)據(jù)的倉庫的。

每個數(shù)據(jù)庫都有一個或多個不同的API,用于創(chuàng)建,訪問,管理,搜索和復制所保存的數(shù)據(jù)。

我們也可以將數(shù)據(jù)存儲在文件中,但是在文件中讀寫數(shù)據(jù)速度相對較慢。

所以,現(xiàn)在我們使用關系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)來存儲和管理的大數(shù)據(jù)量。所謂的關系型數(shù)據(jù)庫,是建立在關系模型基礎上的數(shù)據(jù)庫,收集集合代數(shù)等數(shù)學概念和方法來處理數(shù)據(jù)庫中的數(shù)據(jù)。

ORDBMS(對象關系數(shù)據(jù)庫系統(tǒng))是面向對象技術與傳統(tǒng)的關系數(shù)據(jù)庫相結合的生成物,查詢處理是ORDBMS的重要組成部分,其性能優(yōu)劣將直接影響到DBMS的性能。

ORDBMS在原來關系數(shù)據(jù)庫的基礎上,增加了一些新的特性。

RDBMS是關系數(shù)據(jù)庫管理系統(tǒng),是建立實體之間的聯(lián)系,最后得到的是關系表。

OODBMS面向對象數(shù)據(jù)庫管理系統(tǒng),將所有實體都看著對象,將這些對象類進行封裝,對象之間的通信通過消息OODBMS對象關系數(shù)據(jù)庫在替換還是關系數(shù)據(jù)庫。

ORDBMS術語

在我們開始學習PostgreSQL數(shù)據(jù)庫前,讓我們先了解下ORDBMS的一些術語:

  • 數(shù)據(jù)庫:數(shù)據(jù)庫是一些關聯(lián)表的集合。
  • 在一個數(shù)據(jù)庫中的表看起來像一個簡單的電子表格。
  • 列:一列(數(shù)據(jù)元素)包含了相同的數(shù)據(jù),例如某些的數(shù)據(jù)。
  • 行:一行(=元組,或記錄)是一組相關的數(shù)據(jù),例如一條用戶訂閱的數(shù)據(jù)。
  • 冗余:存儲雙向數(shù)據(jù),冗余降低了性能,但提高了數(shù)據(jù)的安全性。
  • 主鍵:主鍵是唯一的。一個數(shù)據(jù)表中只能包含一個主鍵。您可以使用主鍵來查詢數(shù)據(jù)。
  • 外鍵:外鍵用于關聯(lián)兩個表。
  • 復合鍵:復合鍵(組合鍵)將多個列作為一個索引鍵,一般用于復合索引。
  • 索引:使用索引可快速訪問數(shù)據(jù)庫表中的特定信息。索引是對數(shù)據(jù)庫表中一列或多列的值進行排序的一種結構。
  • 與實體初始是關系模型必須滿足的共識約束條件,目的是保證數(shù)據(jù)的一致性。

PostgreSQL特征

  • 函數(shù):通過函數(shù),可以在數(shù)據(jù)庫服務器端執(zhí)行指令程序。
  • 索引:用戶可以自定義索引方法,或使用內(nèi)置的B樹,哈希表與GiST索引。
  • 通常由INSERT或Update語句觸發(fā)。多版本并發(fā)控制:PostgreSQL使用多版本。每個用戶提供一個數(shù)據(jù)庫的“快照”,用戶在事務內(nèi)部進行的每個修改,對于其他的用戶都不可見,直到該事務成功提交。
  • 規(guī)則:規(guī)則(RULE)允許一個查詢能被重組,通常用于實現(xiàn)對視圖(VIEW)的操作,如插入(INSERT),更新(UPDATE),刪除(DELETE)。
  • 數(shù)據(jù)類型:包括文本,任意精度的數(shù)值數(shù)組,JSON數(shù)據(jù),枚舉類型,XML數(shù)據(jù)等。
  • 全文檢索:通過Tsearch2或OpenFTS,8.3版本中內(nèi)嵌Tsearch2。
  • NoSQL:JSON,JSONB,XML,HStore本機支持,至NoSQL數(shù)據(jù)庫的外部數(shù)據(jù)包裝器。
  • 數(shù)據(jù)倉庫:能平滑遷移至同屬PostgreSQL生態(tài)的GreenPlum,DeepGreen,HAWK等,使用FDW進行ETL。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號