設定資料庫擴充功能

本節說明如何設定資料庫服務支援的資料庫擴充功能。

安裝擴充功能

擴充功能只能安裝在主要 DBCluster 上。安裝完成後,擴充功能會複製到待命執行個體。

只要連線至資料庫叢集並執行 CREATE EXTENSION 指令,即可直接安裝大部分擴充功能。

不過,有幾項擴充功能需要額外設定,因此使用者必須設定資料庫旗標,"dbs.enable_<extension-name>": "on" 然後連線至資料庫叢集並執行 CREATE EXTENSION 指令。

只有 alloydbsuperuser 角色的資料庫使用者才能執行 CREATE EXTENSION 指令。這項設定預設會包含 dbsadmin 使用者。

捨棄擴充功能

如要捨棄擴充功能,嘗試這麼做的資料庫使用者必須是擴充功能的擁有者。這表示只有最初建立擴充功能的資料庫使用者,才有權捨棄擴充功能。其他資料庫使用者無法捨棄擴充功能,確保擴充功能受到控管。

支援的資料庫擴充功能

下表列出所有支援的擴充功能。

擴充功能 說明
alloydb_ai_nl Google Extension for AlloyDB AI & Natural Language
amcheck 提供驗證關係結構邏輯一致性的函式,讓 pg_amcheck 應用程式檢查是否有損毀情形。
anon 遮蓋或取代 PostgreSQL 資料庫中的個人識別資訊 (PII) 或私密資料。
autonic 提供自動遞增欄位的函式
bloom 提供根據 Bloom 篩選器存取索引的方法。布隆篩選器是一種空間效率高的資料結構,可用於測試元素是否為集合的成員。
btree_gin 提供實作 B 樹狀結構等效行為的範例 GIN 運算子類別。
btree_gist 提供實作 B 樹狀結構等效行為的 GiST 索引運算子類別。
citext 提供不區分大小寫的字元字串類型 citext。
cube 實作資料型別立方體,代表多維度立方體。
dblink 提供從資料庫工作階段連線至 PostgreSQL 資料庫的函式
dict_int 全文搜尋的附加字典範本,可控制整數的索引作業。
dict_xsyn 文字搜尋字典範本,用於擴充同義詞處理
earthdistance 提供兩種方法,計算地球表面的大圓距離。
fuzzystrmatch 提供多個函式來確定字串之間的相似與不同之處。
google_columnar_engine 提供 AlloyDB 的資料欄引擎功能,可非常有效率地處理 HTAP (混合型交易分析處理) 和 OLAP (線上分析處理) 工作負載。
google_db_advisor 提供 AlloyDB 的索引建議工具功能,可提供索引建議,加快查詢處理速度。
google_ml_integration 提供您用來存取 Vertex AI 端點的函式,以便在 SQL 中取得預測結果。
postgresql-hll 提供 HyperLogLog (hll) 資料結構,用於估計集合的基數。
hstore 實作 hstore 資料型別,在單一 PostgreSQL 值中儲存鍵/值組合集。
hypopg 支援假設索引。
insert_username 提供將目前使用者名稱儲存至文字欄位的函式。您可以使用這項函式,追蹤資料庫表格中最後修改資料列的使用者。
intagg 提供整數匯集器與列舉程式。
intarray 提供一系列函式和運算子,可操作不含空值的整數陣列,並對其執行索引搜尋。
ip4r 提供 IPv4/v6 位址和位址範圍的資料類型,並支援索引。
isn 提供部分國際產品編號標準的資料類型。
lo 支援管理大型物件 (也稱為 LO 或 BLOB)。
ltree 實作 ltree 資料型別,用於表示儲存在階層式樹狀結構中的資料標籤。
moddatetime 提供將目前時間儲存到 timestamp 欄位的函式。您可以使用這項功能,追蹤資料庫表格中資料列的上次修改時間。
pageinspect 以低層級檢查資料庫頁面的內容。
pg_bigm 啟用全文搜尋功能,並允許使用雙連字元 (雙字母) 索引,加快全文搜尋速度。
pg_buffercache 可讓您即時檢查共用緩衝區快取中發生的改變。
pg_cron 提供以 Cron 為基礎的工作排程器。這項擴充功能可直接從資料庫排定 PostgreSQL 指令的執行時間 (使用 cron 語法)。
pg_freespacemap 檢查可用空間地圖 (FSM)。
pg_hint_plan 您可以使用提示 (SQL 註解中的說明) 改善 PostgreSQL 執行計畫。
pg_partman 可建立及管理以時間和序號為準的資料表分區集。
pg_prewarm 提供便利的方式,將關聯資料載入作業系統緩衝區快取或 PostgreSQL 緩衝區快取。
pg_proctab 可讓您使用 pg_top,並從作業系統程序表產生報表。
pg_repack 可移除資料表和索引中的膨脹。可選擇執行線上 CLUSTER (依叢集索引排序資料表)。
pg_similarity 支援 PostgreSQL 的相似度查詢。
pg_squeeze 從資料表中移除未使用的空間,並視需要使用索引排序資料表中的記錄或資料列 (元組)。
pg_stat_statements 可讓您追蹤執行的所有 SQL 陳述式的執行統計資料。
pg_trgm 提供函式和運算子,根據三元組比對判斷英數字元文字的相似度,以及支援快速搜尋相似字串的索引運算子類別。
pg_visibility 提供檢查資料表可見度地圖 (VM) 和網頁層級可見度資訊的方法。
pg_wait_sampling 收集等待事件的取樣統計資料,提供伺服器上程序的等待事件資料。
pgaudit 使用 PostgreSQL 提供的標準記錄功能,提供詳細的工作階段和物件稽核記錄。
pgcrypto 為 PostgreSQL 提供加密函式。
pgfincore 這組函式可從 PostgreSQL 管理作業系統磁碟快取記憶體中的頁面。
pglogical 提供 PostgreSQL 的邏輯複製功能。
pgrowlocks 提供指定表格的列鎖定資訊。
pgstattuple 提供各種函式來取得組合層級統計資料。
pgtap 提供以 PL/pgSQL 和 PL/SQL 編寫的 PostgreSQL 單元測試架構。
pgtt 為資料庫新增全域臨時資料表支援。
plpgsql 可載入的程序語言,用於建立函式、程序和觸發程序。您也可以使用這種語言,直接在 DO 區塊中執行程式碼。
plproxy 程序語言處理常式,可讓 PostgreSQL 資料庫之間進行遠端程序呼叫,並可選擇分片。
plv8 提供程序語言,用於啟用 JavaScript。
postgres_ann PostgreSQL ANN 搜尋
postgres_fdw 允許在執行個體內或跨執行個體建立外部資料包裝函式。
前置字串 提供前置字串比對,以及索引支援。
refint 包括檢查外鍵限制、參照資料表和參照資料表的函式。
sslinfo 提供目前用戶端連線至執行個體時提供的 SSL 憑證相關資訊。
tablefunc 包含傳回表格 (多列) 的各種函式。
tcn 提供觸發函式,可將資料庫表格內容的變更通知給監聽器。
temporal_tables 支援時間表。時間表會記錄資料列從資料庫角度來看有效的時間範圍。
tsm_system_rows 提供資料表取樣方法 SYSTEM_ROWS,可用於 SELECT 指令的 TABLESAMPLE 子句。
tsm_system_time 提供資料表取樣方法 SYSTEM_TIME,可用於 SELECT 指令的 TABLESAMPLE 子句。
unaccent 文字搜尋字典,可從詞素中移除重音符號 (變音符號)。
uuid-ossp 提供函式,藉此使用多個標準演算法中的其中一個來產生通用唯一識別碼 (UUID)。
pgvector 開放原始碼擴充功能,可在 PostgreSQL 資料庫中儲存及搜尋向量嵌入。