欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PostgreSQL基于Citus實(shí)現(xiàn)分布式集群的全過(guò)程

 更新時(shí)間:2023年11月28日 11:35:39   作者:IT邦德  
Citus是一個(gè)PostgreSQL擴(kuò)展,它將Postgres轉(zhuǎn)換為分布式數(shù)據(jù)庫(kù),因此您可以在任何規(guī)模上實(shí)現(xiàn)高性能,因客戶(hù)的需求,本文詳細(xì)闡述了PostgreSQL基于Citus實(shí)現(xiàn)的分布式集群的全過(guò)程,需要的朋友可以參考下

1.Citus介紹

Citus是一個(gè)PostgreSQL擴(kuò)展,它將Postgres轉(zhuǎn)換為分布式數(shù)據(jù)庫(kù),因此您可以在任何規(guī)模上實(shí)現(xiàn)高性能。

可以使用這些Citus超能力使您的Postgres數(shù)據(jù)庫(kù)在單個(gè)Citus節(jié)點(diǎn)上擴(kuò)展?;蛘?,您可以構(gòu)建一個(gè)能夠處理高交易吞吐量的大型集群,尤其是在多租戶(hù)應(yīng)用程序中,運(yùn)行快速分析查詢(xún),并處理大量時(shí)間序列或物聯(lián)網(wǎng)數(shù)據(jù)進(jìn)行實(shí)時(shí)分析。當(dāng)數(shù)據(jù)大小和數(shù)量增長(zhǎng)時(shí),可以輕松地向集群中添加更多的工作節(jié)點(diǎn)并重新平衡碎片。

使用Citus,您可以用新的超能力擴(kuò)展PostgreSQL數(shù)據(jù)庫(kù):

1.分布式表在PostgreSQL節(jié)點(diǎn)集群中進(jìn)行分片,以組合它們的CPU、內(nèi)存、存儲(chǔ)和I/O容量。

2.引用表被復(fù)制到所有節(jié)點(diǎn),以便從分布式表中進(jìn)行聯(lián)接和外鍵,從而獲得最大的讀取性能。

3.分布式查詢(xún)引擎路由并并行化集群中分布式表上的SELECT、DML和其他操作。

4.列存儲(chǔ)壓縮數(shù)據(jù),加快掃描速度,并支持在常規(guī)表和分布式表上進(jìn)行快速投影。

5.通過(guò)從任何節(jié)點(diǎn)進(jìn)行查詢(xún),您都可以利用集群的全部容量進(jìn)行分布式查詢(xún)

Citus集群由一個(gè)中心的協(xié)調(diào)節(jié)點(diǎn)(CN)和若干個(gè)工作節(jié)點(diǎn)(Worker)構(gòu)成。

coordinate:協(xié)調(diào)節(jié)點(diǎn),一般稱(chēng)為cn,存儲(chǔ)所有元數(shù)據(jù),不存實(shí)際數(shù)據(jù),該節(jié)點(diǎn)直接對(duì)用戶(hù)開(kāi)放,等于一個(gè)客戶(hù)端。

worker:工作節(jié)點(diǎn),不存儲(chǔ)元數(shù)據(jù),存儲(chǔ)實(shí)際數(shù)據(jù)。執(zhí)行協(xié)調(diào)節(jié)點(diǎn)發(fā)來(lái)的查詢(xún)請(qǐng)求。一般不直接對(duì)用戶(hù)開(kāi)放。

在這里插入圖片描述

2.架構(gòu)設(shè)計(jì)

主機(jī)名IP操作系統(tǒng)內(nèi)存/空間角色說(shuō)明
pgcn172.18.12.80centos7.82c/18G 400Gcoordinate安裝PG 14+ Citus 14.1.0
pgwk01172.18.12.81centos7.82c/18G 400Gworker安裝PG 14+ Citus 14.1.0
pgwk02172.18.12.82centos7.82c/18G 400Gworker安裝PG 14+ Citus 14.1.0
pgwk03172.18.12.83centos7.82c/18G 400Gworker安裝PG 14+ Citus 14.1.0
pgwk04172.18.12.84centos7.82c/18G 400Gworker安裝PG 14+ Citus 14.1.0

在這里插入圖片描述

3.安裝citus 

3.1 yum安裝

1.安裝依賴(lài)

yum install -y libcurl-devel lz4 zstd epel-release libzstd-devel unzip libcurl make

2.yum 安裝,所有節(jié)點(diǎn)均安裝

curl https://install.citusdata.com/community/rpm.sh
yum install -y citus_14

在這里插入圖片描述

3.2 創(chuàng)建拓展

##以下操作,所有節(jié)點(diǎn)均操作

su - postgres
psql
create database clusterdb;
\c clusterdb
alter system set shared_preload_libraries='citus';
clusterdb=# select pg_reload_conf();
clusterdb=# select * from pg_available_extensions where name='citus';
 name  | default_version | installed_version |          comment           
-------+-----------------+-------------------+----------------------------
 citus | 12.1-1          |                   | Citus distributed database
(1 row)
clusterdb=# \q

systemctl status postgresql-14
systemctl restart postgresql-14

root@pgcn:~$ su - postgres
root@pgcn:~$ psql

postgres=# \c clusterdb
You are now connected to database "clusterdb" as user "postgres".

clusterdb=# show shared_preload_libraries;
 shared_preload_libraries 
--------------------------
 citus
(1 row)

clusterdb=# create extension citus;
CREATE EXTENSION

clusterdb=# \dx
                     List of installed extensions
      Name      | Version |   Schema   |         Description          
----------------+---------+------------+------------------------------
 citus          | 12.1-1  | pg_catalog | Citus distributed database
 citus_columnar | 11.3-1  | pg_catalog | Citus Columnar extension
 plpgsql        | 1.0     | pg_catalog | PL/pgSQL procedural language
(3 rows)

clusterdb=# \dx+ citus

在這里插入圖片描述

4.集群配置

4.1修改配置文件

1.coordinate節(jié)點(diǎn)的pg_hba.conf配置:

cat >> /var/lib/pgsql/14/data/pg_hba.conf <<“EOF”
host all all 0.0.0.0/0 md5
EOF

2.worker節(jié)點(diǎn)的pg_hba.conf配置:

cat >> /var/lib/pgsql/14/data/pg_hba.conf <<“EOF”
host all all 172.18.12.0/24 trust
EOF
systemctl restart postgresql-14

在這里插入圖片描述

4.2 新增節(jié)點(diǎn)

psql -d clusterdb

– 查看工作節(jié)點(diǎn):

SELECT * FROM master_get_active_worker_nodes();
select * from pg_dist_node;
##管理操作僅僅在協(xié)調(diào)節(jié)點(diǎn)(cn)上操作:
– 節(jié)點(diǎn)可以是ip或者dns name
SELECT * from master_add_node(‘172.18.12.81', 5432);
SELECT * from master_add_node(‘172.18.12.82', 5432);
SELECT * from master_add_node(‘172.18.12.83', 5432);
SELECT * from master_add_node(‘172.18.12.84', 5432);

4.3 集群信息

-- 查看工作節(jié)點(diǎn)
clusterdb=# SELECT * FROM master_get_active_worker_nodes();
  node_name   | node_port 
--------------+-----------
 172.18.12.83 |      5432
 172.18.12.81 |      5432
 172.18.12.84 |      5432
 172.18.12.82 |      5432
(4 rows)

clusterdb=# select * from pg_dist_node;
 nodeid | groupid |   nodename   | nodeport | noderack | hasmetadata | isactive | noderole | nodecluster | metadatasynced | shouldhaveshards 
--------+---------+--------------+----------+----------+-------------+----------+----------+-------------+----------------+------------------
     43 |      43 | 172.18.12.82 |     5432 | default  | t           | t        | primary  | default     | t              | t
     44 |      44 | 172.18.12.83 |     5432 | default  | t           | t        | primary  | default     | t              | t
     46 |      46 | 172.18.12.84 |     5432 | default  | t           | t        | primary  | default     | t              | t
     42 |      42 | 172.18.12.81 |     5432 | default  | t           | t        | primary  | default     | t              | t

以上就是PostgreSQL基于Citus實(shí)現(xiàn)分布式集群的全過(guò)程的詳細(xì)內(nèi)容,更多關(guān)于PostgreSQL Citus分布式集群的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • PostgreSQL誤刪數(shù)據(jù)庫(kù)該怎么辦詳解

    PostgreSQL誤刪數(shù)據(jù)庫(kù)該怎么辦詳解

    這篇文章主要介紹了PostgreSQL中誤刪數(shù)據(jù)庫(kù)的恢復(fù)方法,包括備份恢復(fù)、歸檔日志恢復(fù)和操作系統(tǒng)層面的快照恢復(fù),文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • 用一整天的時(shí)間安裝postgreSQL  NTFS權(quán)限

    用一整天的時(shí)間安裝postgreSQL NTFS權(quán)限

    看標(biāo)題貌似一天的收獲不小,但實(shí)際上是被一個(gè)問(wèn)題搞的要死,啥問(wèn)題?額,又是NTFS權(quán)限的問(wèn)題。
    2009-08-08
  • PostgreSQL?16?新特性之正態(tài)分布隨機(jī)數(shù)函數(shù)的示例

    PostgreSQL?16?新特性之正態(tài)分布隨機(jī)數(shù)函數(shù)的示例

    這篇文章主要介紹了PostgreSQL?16?新特性之正態(tài)分布隨機(jī)數(shù)函數(shù),PostgreSQL 16 新增了一個(gè)內(nèi)置的 random_normal() 函數(shù),用于生成這種隨機(jī)數(shù),通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • 詳解如何在Ubuntu?18.04上安裝和使用PostgreSQL

    詳解如何在Ubuntu?18.04上安裝和使用PostgreSQL

    關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)是許多網(wǎng)站和應(yīng)用程序的關(guān)鍵組件,它們提供了一種結(jié)構(gòu)化的方式來(lái)存儲(chǔ)、組織和訪問(wèn)信息,本文演示了如何在?Ubuntu?18.04?VPS?實(shí)例上安裝?Postgres,并提供了基本數(shù)據(jù)庫(kù)管理的說(shuō)明,需要的朋友可以參考下
    2024-07-07
  • Postgresql開(kāi)啟遠(yuǎn)程訪問(wèn)的步驟全紀(jì)錄

    Postgresql開(kāi)啟遠(yuǎn)程訪問(wèn)的步驟全紀(jì)錄

    postgre一般默認(rèn)為本地連接,不支持遠(yuǎn)程訪問(wèn),所以如果要開(kāi)啟遠(yuǎn)程訪問(wèn),需要更改安裝文件的配置。下面這篇文章主要給大家介紹了關(guān)于Postgresql開(kāi)啟遠(yuǎn)程訪問(wèn)的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2018-03-03
  • Postgresql的日志配置教程詳解

    Postgresql的日志配置教程詳解

    這篇文章主要介紹了Postgresql的日志配置教程詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • postgreSQL中的內(nèi)連接和外連接實(shí)現(xiàn)操作

    postgreSQL中的內(nèi)連接和外連接實(shí)現(xiàn)操作

    這篇文章主要介紹了postgreSQL中的內(nèi)連接和外連接實(shí)現(xiàn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • 詳解PostgreSQL中實(shí)現(xiàn)數(shù)據(jù)透視表的三種方法

    詳解PostgreSQL中實(shí)現(xiàn)數(shù)據(jù)透視表的三種方法

    數(shù)據(jù)透視表(Pivot Table)是進(jìn)行數(shù)據(jù)匯總、分析、瀏覽和展示的強(qiáng)大工具,可以幫助我們了解數(shù)據(jù)中的對(duì)比情況、模式和趨勢(shì),是數(shù)據(jù)分析師和運(yùn)營(yíng)人員必備技能之一,本給大家介紹PostgreSQL中實(shí)現(xiàn)數(shù)據(jù)透視表的三種方法,需要的朋友可以參考下
    2024-04-04
  • PostgreSQL數(shù)據(jù)庫(kù)事務(wù)實(shí)現(xiàn)方法分析

    PostgreSQL數(shù)據(jù)庫(kù)事務(wù)實(shí)現(xiàn)方法分析

    這篇文章主要介紹了PostgreSQL數(shù)據(jù)庫(kù)事務(wù)實(shí)現(xiàn)方法,簡(jiǎn)單講述了事務(wù)的概念、功能,并結(jié)合實(shí)例形式分析了PostgreSQL數(shù)據(jù)庫(kù)事務(wù)的定義方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2018-08-08
  • CentOS 9 Stream 上安裝 PostgreSQL 16的步驟

    CentOS 9 Stream 上安裝 PostgreSQL 16的步

    在CentOS9Stream上安裝PostgreSQL16,首先添加PostgreSQL官方倉(cāng)庫(kù),然后禁用系統(tǒng)自帶PostgreSQL版本,避免沖突,使用dnf命令安裝PostgreSQL16,并初始化數(shù)據(jù)庫(kù),本文給大家介紹CentOS 9 Stream 上安裝 PostgreSQL 16的步驟,感興趣的朋友一起看看吧
    2024-11-11

最新評(píng)論