CentOS7 下POSTGRESQL10-XL 集群環境虛擬機下載

本博主配置好的  Centos 7下postgresql 10 xl   集群環境虛擬機下載,鏈接:https://pan.baidu.com/s/1PQ7z6F1vis9IGX5JNrEMNQ
提取碼:s7uw 下載後,用Vmware Workstation打開,即可以使用。

PostgreSQL是以加州大學伯克利分校計算機系開發的 POSTGRES,現在已經更名為PostgreSQL,版本 4.2為基礎的對象關係型數據庫管理系統(ORDBMS)。PostgreSQL支持大部分 SQL標準並且提供了許多其他現代特性:複雜查詢、外鍵、觸發器、視圖、事務完整性、MVCC。同樣,PostgreSQL 可以用許多方法擴展,比如, 通過增加新的數據類型、函數、操作符、聚集函數、索引。免費使用、修改、和分發 PostgreSQL,不管是私用、商用、還是學術研究使用。

PostgreSQL 是一個免費的對象-關係數據庫服務器(數據庫管理系統),它在靈活的 BSD-風格許可證下發行。它提供了相對其他開放源代碼數據庫系統(比如 MySQL 和 Firebird),和專有系統(比如 Oracle、Sybase、IBM 的 DB2 和 Microsoft SQL Server)之外的另一種選擇。
PostgreSQL 不尋常的名字導致一些讀者停下來嘗試拼讀它,特別是那些把SQL拼讀為”sequel”的人。PostgreSQL 開發者把它拼讀為 “post-gress-Q-L”。它也經常被簡略念為 “postgres”。 [1]
事實上, PostgreSQL 的特性覆蓋了 SQL-2/SQL-92 和 SQL-3/SQL-99,首先,它包括了可以說是目前世界上最豐富的數據類型的支持,其中有些數據類型可以說連商業數據庫都不具備, 比如 IP 類型和幾何類型等;其次,PostgreSQL 是全功能的自由軟件數據庫,很長時間以來,PostgreSQL 是唯一支持事務、子查詢、多版本並行控制系統(MVCC)、數據完整性檢查等特性的唯一的一種自由軟件的數據庫管理系統。 Inprise 的 InterBase 以及SAP等廠商將其原先專有軟件開放為自由軟件之後才打破了這個唯一。最後,PostgreSQL擁有一支非常活躍的開發隊伍,而且在許多黑客的努力下,PostgreSQL 的質量日益提高。
從技術角度來講,PostgreSQL 採用的是比較經典的C/S(client/server)結構,也就是一個客戶端對應一個服務器端守護進程的模式,這個守護進程分析客戶端來的查詢請求,生成規劃樹,進行數據檢索並最終把結果格式化輸出後返回給客戶端。為了便於客戶端的程序的編寫,由數據庫服務器提供了統一的客戶端 C 接口。而不同的客戶端接口都是源自這個 C 接口,比如ODBC,JDBC,Python,Perl,Tcl,C/C++,ESQL等, 同時也要指出的是,PostgreSQL 對接口的支持也是非常豐富的,幾乎支持所有類型的數據庫客戶端接口。這一點也可以說是 PostgreSQL 一大優點。
架構
PostgreSQL強壯的一個原因源於它的架構。和商業數據庫一樣,PostgreSQL可以用於C/S(客戶/服務器)環境。這對於用戶和開發人員有很多好處。
PostgreSQL安裝核心是數據庫服務端進程。它允許在一個獨立服務器上。需要訪問存儲在數據庫中的數據的應用程序必須通過數據庫進程。這些客戶端程序無法直接訪問數據,即使它們和服務程序在同一台機器上。 [2]

一、什麼是Postgres-XL

XL的意思是:eXtensible Lattice,可以擴展的格子,即將PostgreSQL應用在多機器上的分佈式數據庫的形象化表達。

Postgres-XL 是一個完全滿足ACID的、開源的、可方便進行水平擴展的、多租戶安全的、基於PostgreSQL的數據庫解決方案。

Postgres-XL 可非常靈活的應付各種負載,比如:

  • OLAP(通過MPP並行化)
  • OLTP
  • OLAP & OLTP
  • 操作數據存儲
  • Key-value存儲,包括JSON格式

不同的應用場景:

  • 支持商業智能應用(數據倉庫&數據集市),因為PGXL支持MPP(Massively Parallel Processing)
  • Web2.0,數據庫擴容的解決方案
  • 遺留系統的數據庫擴容的解決方案
  • 新應用,可以先使用PostgreSQL,之後隨着數據庫變大使用PGXL擴容

PGXL底層為PostgreSQL,這意味着它支持所有支持PostgresSQL類型的驅動,包括: JDBC, ODBC, OLE DB, Python, Ruby, perl DBI, Tcl, and Erlang.

本博主配置好的  Centos 7下postgresql 10 xl   集群環境虛擬機下載,鏈接:https://pan.baidu.com/s/1PQ7z6F1vis9IGX5JNrEMNQ
提取碼:s7uw 下載後,用Vmware Workstation打開,即可以使用。

二、PostgreSQL與Postgres-XL

1994年,Postgre95發佈,開源。
1996年,PostgreSQL繼承了Postgre95,發佈。
2010年,Postgres-XC發佈。
2012年,前PGXC核心開發者創建StormDB公司,進行了一些改進,包括對MPP並行化的性能改進和多租戶安全。
2013年,TransLattice收購了StormDB。
2014年,將項目開源,命名為Postgres-XL。

三、Postgres-XC與Postgres-XL

PGXL的架構師和開發者 很多都是以前做PGXC的,PGXL的部分代碼是從PGXC移植過來的。

比起功能性,PGXL更強調穩定性, 正確性和性能.

PGXL增加了一些重要的性能提升,比如MPP和replan avoidance on the data nodes,這些都是PGXC沒有的。

PGXC目前集中在OLTP的業務上面,PGXL則更加靈活,可以應用於很多不同種類的業務上,比如可以用在大數據處理領域,除此,在多租戶的環境中,PGXL也更加安全。

PGXL的社區非常開放。

四、PGXL架構基本知識

PGXL是一系列PostgreSQL數據庫的集群,在上層看來就像使用一個數據庫一樣。根據設計方案的不同,每張表可以是replicated或是distributed的形式。

PGXL有三個主要組件,分別是GTM,Coordinator和Datanode。

    • GTM(Gloable Transaction Manager)負責提供事務的ACID屬性;
    • Datanode負責存儲表的數據和本地執行由Coordinator派發的SQL任務;
    • Coordinator負責處理每個來自Application的SQL任務,並且決定由哪個Datanode執行,然後將任務計劃派發給相應的Datanode,根據需要收集結果返還給Application;

GTM通常由一台獨立的服務器承擔,因為GTM需要處理來自所有Coordinator和Datanode的事務請求。為了將 Coordinator和Datanode上進程的請求和響應聚集到一台機器上,可以配置GTM-Proxy。GTM-Proxy會減少GTM的負載,同 時會幫助處理GTM失效的情況。即便如此,GTM還是可能會發生單點失效問題,這時可以配置一個GTM-Standby節點作為GTM的備用節點。

每台機器最好同時配置一個Coordinator和一個Datanode,這樣既不用擔心二者的負載均衡,而且可以降低網絡流量。

五、如何實現High Availability

可以對每個節點增加slave,就類似PostgreSQL的streaming replication一樣。

GTM可以有一個GTM Standby。

針對自動的failover,目前可以使用Corosync/Pacemaker,雖然它們現在還不是核心項目。

本博主配置好的  Centos 7下postgresql 10 xl   集群環境虛擬機下載,鏈接:https://pan.baidu.com/s/1PQ7z6F1vis9IGX5JNrEMNQ
提取碼:s7uw 下載後,用Vmware Workstation打開,即可以使用。。

 

以下文章點擊率最高

Loading…

     

如果這文章對你有幫助,請掃左上角微信支付-支付寶,給於打賞,以助博客運營