中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于postgresql數據庫是什么的詳細介紹

發布時間:2020-08-01 11:37:27 來源:億速云 閱讀:639 作者:清晨 欄目:編程語言

小編給大家分享一下關于postgresql數據庫是什么的詳細介紹,相信大部分人都還不怎么了解,因此分享這篇文章給大家學習,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去學習方法吧!

1、什么是PostgreSql:

PostgreSQL 是一個功能強大的開源對象關系數據庫管理系統(ORDBMS)。 用于安全地存儲數據; 支持最佳做法,并允許在處理請求時檢索它們。

PostgreSQL (也稱為 Post-gress-Q-L )由 PostgreSQL 全球開發集團(全球志愿者團隊)開發。 它不受任何公司或其他私人實體控制。 它是開源的,其源代碼是免費提供的。

PostgreSQL 是跨平臺的,可以在許多操作系統上運行,如 Linux,FreeBSD,OS X,Solaris 和 Microsoft Windows 等。

2、為什么要使用PostgreSQL

PostgreSql提供了許多功能,旨在幫助開發人員構建應用程序,管理員保護數據完整性并且構建容錯環境,并幫助你管理數據,無論數據集的大小。除了免費和開源之外,Postgre SQL還具有高度的可擴展性。例如,你可以定義自己的數據類型,構建自定義SQL函數(此sql函數在另一篇帖子討論:點此跳轉),甚至可以編寫來自不同編程語言的代碼,而不需要重新編譯數據庫。

PostgreSql試圖符合SQL標準,在這種標準中,這種一致性不會與傳統特性相矛盾,或者可能導致糟糕的架構決策。支持SQL標準所需的許多功能,但是有時候語法或者功能略有不同。隨著時間的推移,可以預期進一步向一致性邁進。從2018年10月發布的11版本開始,PostgreSQL符合SQL:2011核心一致性的179個強制性功能中的至少160個,在此之前,沒有任何關系型數據庫符合此標準的完全符合。

3、下面是PostgreSQL中的各種功能介紹:

(1)數據類型:

    ·基本類型:Integer, Numeric, String, Boolean

    ·結構類型:Date/Time, Array, Range, UUID

    ·文檔類型:JSON/JSONB, XML, Key-value(Hstore)

    ·幾何類型:Point, Line, Circle, Polygon

    ·自定義類型:Composite, Custom Types

(2)數據的完整性

    ·唯一性,不為空

    ·主鍵

    ·外鍵

    ·排除約束

    ·顯式鎖定,咨詢鎖定

(3)并發性,性能

    ·索引:

    ·高級索引

    ·復雜的查詢計劃期/優化器

    ·交互

    ·多版本并發控制(MVCC)

    ·讀取查詢的并行化和構建B樹索引

    ·表分區

    ·Sql標準中定義的所有事物隔離級別,包括Serializable

    ·即時表達式匯編(JIT)

(4)可靠性,災難恢復

    ·預寫日志(WAL)

    ·復制:異步,同步,邏輯

    ·時間點恢復(pitr),主動備用

    ·表空間

(5)安全性

    ·身份驗證:GSSAPI, SSPI, LDAP, SCRAM-SHA-256, 證書等

    ·強大的訪問控制系統

    ·列和行級安全性

(6)可擴展性

    ·存儲的功能和程序

    ·程序語言:PL/PGSQL, Perl, Python (more)

    ·外部數據包裝器:使用標準SQL接口連接到其他數據庫或流

    ·許多提供附加功能的擴展,包括PostGIS

(7)國際化,文本搜索

    ·支持國際字符集,例如通過ICU校對

    ·全文檢索

4、對比Mysql

PostgreSQL的穩定性極強,Innodb等引擎在崩潰、斷電之類的災難場景下抗打擊能力有了長足的進步,然而很多Mysql用戶都遇到過Server級的數據庫丟失的場景---Mysql系統庫是MyISAM的,相較而言,PG數據庫在這方面要好一些。

任何系統都有他的性能極限,在高并發讀寫,負載逼近極限下,PG的性能指標仍然可以維持雙曲線甚至對數曲線,到頂峰之后不再下降,而MySQL明細出現一個波峰后下滑。

PG多年在GIS領域處于優勢地位,因為它有豐富的幾何類型,實際上不止幾何類型,PG中有大量的字典、數組、bitmap等數據類型,相比之下MaySQL就差很多,insagram就是因為PG的空間數據庫擴展POSTGIS遠遠強于MySQL的my spatial而采用PGSQL的。

PG的“無鎖定”特性非常突出,甚至包括vacuum這樣的整理數據空間的操作,這個和PGSSQL的MVCC實現有關系。

PG的可以使用函數和條件索引,這使得PG數據庫的調優非常靈活,mysql就沒有這個功能,條件索引在web應用中很重要。

PG有極其強悍的SQL編程能力,有豐富的統計函數和統計語法支持,比如分析函數(Oracle的叫法,PG里面叫Window函數),還可以用多種語言來寫存儲過程,對于R的支持也很好。這一點上MySQL就差的很遠,很多分析功能那個都沒有,騰訊內部數據存儲主要是Mysql,但是主要的數據分析就是Hadoop+PGsql。

PG的有很多中集群架構可以選擇,plproxy可以支持語句級的鏡像或者分片,slony可以進行字段級的同步設置,standby可以構建WAL文件級或者流式的讀寫分離集群,同步頻率和集群策略調整方便,操作非常簡單。

一般關系型數據庫的字符串有限定長度8k左右,無限長Text類型的功能受限,只能作為外部大數據訪問。而PG的TEXT類型可以直接方法,SQL語法內置正則表達式,可以索引,還可以全文檢索,或使用xml xpath。用PG的話,文檔數據庫就可以省略了

對于web應用來說,復制的特性很重要,Mysql到現在也是異步復制,pgsql可以做到同步,異步,半同步復制。還有mysql的同步是基于binlog復制,類似oracle golden gate, 是基于stream的復制,做到同步很困難,這種方式更加適合異地復制,pgsql的復制基于wal,可以做到同步復制。同時pgsql還提供stream復制。

Pgsql對于numa架構的支持要比mysql強一些,比mysql對于讀的性能要好些,pgsql提交可以完全異步,而mysql的內存表不夠實用(表鎖原因)

以上是關于postgresql數據庫是什么的詳細介紹的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

罗甸县| 淮安市| 彭州市| 邓州市| 南丹县| 泸定县| 安仁县| 鹿邑县| 岳西县| 尚义县| 武威市| 安顺市| 图们市| 达拉特旗| 会理县| 榕江县| 绥棱县| 敖汉旗| 剑阁县| 湟中县| 满洲里市| 云南省| 岳普湖县| 池州市| 永州市| 梁平县| 贺州市| 元谋县| 嘉峪关市| 应用必备| 荣成市| 辽阳市| 姜堰市| 寿宁县| 松原市| 喀喇沁旗| 漳平市| 会昌县| 隆林| 德昌县| 望奎县|