PostgreSQL 最常用的插件

来源:https://www.cnblogs.com/88223100/archive/2022/11/10/The-most-common-plug-ins-of-PostgreSQL.html
-Advertisement-
Play Games

背景 監控、優化、診斷 cpu, io消耗監控https://github.com/powa-team/pg_stat_kcache where條件過濾性統計https://github.com/powa-team/pg_qualstats cgroup , /proc 系統級指標統計https:/ ...


 

 

背景

監控、優化、診斷

cpu, io消耗監控
https://github.com/powa-team/pg_stat_kcache

where條件過濾性統計
https://github.com/powa-team/pg_qualstats

cgroup , /proc 系統級指標統計
https://github.com/CrunchyData/pgnodemx

pg_logging, log buffer read
價值: 讀pip管道中的log內容, 不需要寫雙份日誌
https://github.com/postgrespro/pg_logging

當前正在執行sql的backend的狀態統計
https://github.com/postgrespro/pg_query_state

執行計劃固化和篡改
https://github.com/postgrespro/sr_plan

等待事件採樣統計
https://github.com/postgrespro/pg_wait_sampling

系統級監控統計
https://github.com/EnterpriseDB/system_stats

pgmetrics
https://github.com/digoal/blog/blob/master/201810/20181001_03.md

csvlog 分析, pgbadger
http://pgbadger.darold.net/

《PostgreSQL DBA最常用SQL》
https://github.com/digoal/blog/blob/master/202005/20200509_02.md

《PostgreSQL 活躍會話歷史記錄插件 - pgsentinel 類似performance insight》
https://github.com/digoal/blog/blob/master/202003/20200324_25.md
https://github.com/digoal/blog/blob/master/201901/20190125_02.md

pg_hint_plan, 執行計劃hint
http://pghintplan.osdn.jp/pg_hint_plan.html

自動執行計劃優化, pg_plan_advsr
https://github.com/digoal/blog/blob/master/202003/20200324_33.md

PostgreSQL dba常用擴展函數庫 - pg_cheat_funcs
https://github.com/digoal/blog/blob/master/202003/20200324_41.md

資料庫job功能 pg_cron
https://github.com/digoal/blog/blob/master/201305/20130531_01.md

pg_pathman, 分區表性能提升, 自動分區, 自動增加分區等
https://github.com/postgrespro/pg_pathman

功能

postgis , 全球最流行的GIS擴展功能模塊
http://postgis.org/

h3模塊
https://github.com/dlr-eoc/pgh3

pgrouting, 圖路由功能
https://pgrouting.org/

《PostgreSQL MOD資料庫 MobilityDB - GIS 移動對象處理資料庫》
https://github.com/digoal/blog/blob/master/202003/20200324_24.md

開源圖像識別, imgsmlr
https://github.com/digoal/blog/blob/master/201811/20181129_01.md
https://github.com/postgrespro/imgsmlr

pg_roaringbitmap, 用戶圈選、實時畫像、相似用戶擴選功能 . 分析場景功能插件,應用於實時精準營銷系統
https://github.com/digoal/blog/blob/master/201911/20191118_01.md

timescaledb 時序資料庫引擎
https://github.com/digoal/blog/blob/master/201804/20180420_01.md
https://github.com/timescale/timescaledb

pg_prometheus, IoT常用, 監控產品集成到timescaledb和prometheus
https://github.com/timescale/pg_prometheus

機器學習 madlib
http://madlib.apache.org/

rdkit 化學插件, 化學分析行業應用
https://github.com/digoal/blog/blob/master/202003/20200326_06.md
https://github.com/digoal/blog/blob/master/201911/20191125_01.md

文本處理插件 pg_bigm, PGroonga. 任意內容模糊搜索(包括單字和雙字的模糊查詢)
https://github.com/digoal/blog/blob/master/202003/20200330_01.md
《[直播]在資料庫中跑全文檢索、模糊查詢SQL會不會被開除?》

pg_trgm, 實時模糊查詢、相似文本查詢
https://github.com/digoal/blog/blob/master/201809/20180904_01.md

pg_jieba 中文分詞
https://github.com/digoal/blog/blob/master/201607/20160725_02.md

pg_scws 中文分詞
https://github.com/jaiminpan/pg_scws

zhparser 中文分詞
https://github.com/digoal/blog/blob/master/201603/20160310_01.md

smlar, 多值類型相似查詢, 支持cosine, overlap等相似演算法, 例如 標簽交叉率相似度, 用戶畫像相似圈選
http://sigaev.ru/git/gitweb.cgi?p=smlar.git;a=summary

hll, 近似HASH值, 高效UNIQUE近似比對、計算, 滑窗分析. 思想上類似bloom演算法, 每個value映射到hash值的某些bit上, 用若幹bit位的占位是否為1表示這個value是否存在.
https://github.com/citusdata/postgresql-hll
《[視頻直播]億級用戶量的實時推薦資料庫到底要幾毛錢?》

orafce, 常用Oracle相容類型、函數、包
https://github.com/digoal/blog/blob/master/201603/20160324_01.md

pgcrypto, 數據加密模塊
https://www.postgresql.org/docs/current/pgcrypto.html

採樣查詢, 隨機數據查詢, 比offset random性能提升1萬倍
tsm_system_rows
tsm_system_time
https://github.com/digoal/blog/blob/master/202005/20200509_01.md

rum, 加強版倒排索引, 多值類型(數組、文本向量等)檢索加速, 任意欄位組合搜索索引過濾
https://github.com/postgrespro/rum
https://github.com/digoal/blog/blob/master/201907/20190706_01.md

zombodb: 創建基於es的索引, 加速搜索, 一種全新解決方案, 降低用戶開發成本, 簡化應用架構, 解決搜索數據同步問題、延遲等痛點.
https://github.com/zombodb/zombodb
https://github.com/digoal/blog/blob/master/201710/20171001_06.md

阿裡雲pase, 圖像識別, 向量檢索, 相似特征圈選. 千萬級別毫秒響應
https://github.com/digoal/blog/blob/master/202004/20200424_01.md

sql審計sql audit
https://github.com/digoal/blog/blob/master/201505/20150515_01.md

連接池

pgbouncer
http://www.pgbouncer.org/

《PostgreSQL 多線程連接池 - Scalable PostgreSQL connection pooler odyssey》
https://github.com/digoal/blog/blob/master/201906/20190624_01.md

pgagroal
https://github.com/digoal/blog/blob/master/202003/20200320_02.md

外部訪問

阿裡雲oss_fdw冷熱分離存儲
https://github.com/digoal/blog/blob/master/202001/20200108_01.md

其他fdw外部表彙總
https://wiki.postgresql.org/wiki/Foreign_data_wrappers

外部數據源訪問 dblink
pg, oracle, mysql, sqlite dblink plus 打通多種資料庫, 解決大型企業跨數據源訪問問題(傳統企業尤為普遍)
https://github.com/digoal/blog/blob/master/202003/20200324_07.md

外部數據訪問 udf, 直接使用sql操作其他資料庫
memcached
https://github.com/ohmu/pgmemcache

redis
https://github.com/digoal/blog/blob/master/202003/20200326_09.md

sharding

plproxy
https://plproxy.github.io/

citus
https://github.com/citusdata/citus

讀寫分離

pgpool
http://www.pgpool.org/
《阿裡雲RDS PostgreSQL 12 + pgpool 的讀寫分離配置》

《PostgreSQL druid 多個讀節點的jdbc loadbalance負載均衡連接串配置》
https://github.com/digoal/blog/blob/master/202002/20200214_03.md

《PostgreSQL libpq|jdbc 驅動層 load balance 與 failover》
https://github.com/digoal/blog/blob/master/201910/20191027_01.md

《PostgreSQL jdbc multi-host 配置與簡單HA、Load Balance實現》
https://github.com/digoal/blog/blob/master/201806/20180614_02.md

異構遷移

oracle 2 pg
http://www.ora2pg.com/

《PostgreSQL pgloader - 一鍵遷移 MySQL SQLite MS SQL Redshift, csv dbf ixf archive》
https://github.com/digoal/blog/blob/master/202003/20200324_02.md

日常維護

線上收縮膨脹空間
https://github.com/reorg/pg_repack

存儲

zedstore, 行列混合存儲, 更好的支持分析場景(cpu vector 批量計算, 列存儲, 壓縮效率)
https://github.com/greenplum-db/postgres/tree/zedstore/src/backend/access/zedstore

undam, UNDO存儲引擎, 更好的支持update, 減輕膨脹
https://github.com/postgrespro/undam

zheap, UNDO存儲引擎, 更好的支持update, 減輕膨脹
https://github.com/EnterpriseDB/zheap

PostgreSQL appendonly 壓縮 存儲引擎 - pg_cryogen, 更好的支持分析場景(cpu vector 批量計算, 列存儲, 壓縮效率)
https://github.com/digoal/blog/blob/master/202003/20200324_10.md

PostgreSQL LSM-tree 引擎 - VidarDB (baseon rocksdb) , 更高的插入效率, 犧牲查詢效率
https://github.com/digoal/blog/blob/master/202003/20200324_03.md
https://en.wikipedia.org/wiki/Log-structured_merge-tree

內置插件

https://www.postgresql.org/docs/current/contrib.html

用得比較多的插件:

auth_delay, 防止暴力破解
auto_explain, 將慢sql的執行計劃寫入日誌
btree_gin, 普通欄位支持gin倒排索引
btree_gist, 普通欄位支持gist索引
citext, 忽略大小寫的數據類型
dblink, 不解釋
earthdistance, 輕量化地球模型類型
file_fdw, 以外部表的形式讀寫文件
fuzzystrmatch, 語音模糊搜索
intagg, 整型聚合功能擴展
intarray, 整型數組GIST索引擴展功能
lo, 大對象處理
pageinspect, 內窺資料庫BLOCK的內容
passwordcheck, 密碼複雜度檢測
pg_buffercache, 統計資料庫shared buffer的內容
pgcrypto, 加密插件
pg_freespacemap, 觀察資料庫fsm文件內容
pgrowlocks, 行鎖統計
pgstattuple, 記錄級別統計信息觀察
pg_trgm, 模糊查詢, 相似文本查詢
pg_visibility, 觀察資料庫block的vm標簽值(all visibility, frozen, dirty等)
postgres_fdw, postgresql外部表
spi, 一些常用的跟蹤觸發器函數, 例如最後變更事件跟蹤
test_decoding, 邏輯複製decoder
tsm_system_rows, 採樣擴展模塊
tsm_system_time, 採樣擴展模塊
uuid-ossp, UUID生成模塊
xml2, XML類型模塊
pg_stat_statements, 觀察資料庫的sql運行統計信息, 例如top sql
cube, cube類型, 支持多種距離排序演算法, 也可以用於相似向量搜索
ltree, 樹類型
pg_prewarm, buffer預熱功能
tablefunc, 行列變換插件

其他請參考

《未來資料庫方向 - PostgreSQL 有價值的插件、可改進功能、開放介面 (202005)》

其他參考信息

 

  作者丨digoal

本文來自博客園,作者:古道輕風,轉載請註明原文鏈接:https://www.cnblogs.com/88223100/p/The-most-common-plug-ins-of-PostgreSQL.html


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一:背景 1.講故事 有朋友咨詢個問題,他每次在調試 WinDbg 的時候,進程初始化斷點之前都會有一些 dll 載入到進程中,比如下麵這樣: Microsoft (R) Windows Debugger Version 10.0.25200.1003 X86 Copyright (c) Micro ...
  • 依賴管理是 NuGet 的核心功能。Nuget管理單個項目的依賴關係很容易。管理多項目解決方案的依賴關係可能會變得很困難,因為它們的規模和複雜性開始擴大。 在您管理許多不同項目的公共依賴項的情況下,您可以利用 NuGet 的中央包管理功能從一個位置輕鬆完成所有這些工作。 要開始使用中央包管理,您可以 ...
  • 前言 之前想用Markdown來寫框架文檔,找來找去發現還是Jekyll的多,但又感覺不是很合我的需求 於是打算自己簡單弄一個展示Markdown文檔的網站工具,要支持多版本、多語言、導航、頁內導航等,並且支持Github Pages免費站點 組件選擇 我自己呢比較喜歡C#,恰好現在ASP.Net ...
  • Part One: System call tracing 任務:修改Xv6內核的代碼來列印出每個系統調用以及返回值 根據提示,應該在syscall.c中修改syscall()。 首先在syscall.c中增加對應系統調用名稱的數組: static char *syscalls_name[] = { ...
  • 前幾日考慮給ubuntu安裝圖形桌面驅動。第一次安裝是在圖形界面下啟動終端軟體跑的NVIDIA給的安裝腳本,結果它跑了一半自動重啟了圖形界面,導致腳本被退出了。測試發現顯卡確實已被驅動,但由於擔心會不會有某些組件缺失,便退出到tty完完整整重新又跑了遍腳本。結果這一下一弄,重啟後再次啟動則在引導完成 ...
  • Arnold for Cinema 4D是用於C4D R25的阿諾德渲染器,支持R25.010 及以上的C4D,SolidAngle Cinema 4D To Arnold 是一款先進的蒙特卡洛光線追蹤渲染器,專為動畫長度和視覺效果的需求而打造。 詳情:C4D R25插件:Arnold for Ci ...
  • 一、什麼是 SQLite 資料庫 SQLite 是嵌入式SQL資料庫引擎。與大多數其他 SQL 資料庫不同,SQLite 沒有單獨的伺服器進程。SQLite 直接讀取和寫入普通磁碟文件。具有多個表,索引,觸發器和視圖的完整 SQL 資料庫包含在單個磁碟文件中。資料庫文件格式是跨平臺的-您可以在32位 ...
  • 我是風箏,公眾號「古時的風箏」,專註於 Java技術 及周邊生態。 文章會收錄在 JavaNewBee 中,更有 Java 後端知識圖譜,從小白到大牛要走的路都在裡面。 本來是一個平靜而美好的下午,其他部門的同事要一份數據報表臨時彙報使用,因為系統目前沒有這個維度的功能,所以需要寫個SQL馬上出一下 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...