台灣台北 - 2024 年 11 月 14 日
pgtt_rsl 是一個 PostgreSQL 擴充功能,用於建立和管理 Oracle 或 DB2 風格的全域暫存表。它基於未記錄的表、列級安全性 (Row Security Level) 和視圖。背景工作程序負責定期移除過期的列和表。此實作旨在避免建立大量暫存表時造成的目錄膨脹。
另一個區別是,Oracle 或 DB2 的全域暫存表可以在任何綱要中建立,但在 PostgreSQL 中則不行,因為暫存表儲存在 pg_temp 命名空間中。此版本的擴充功能允許在任何綱要中建立全域暫存表。
pgtt v2.0 已發布,這是一個主要版本,新增了以下功能。
CREATE GLOBAL TEMPORARY TABLE
、CREATE GLOBAL TEMPORARY TABLE ... AS SELECT
和 DROP TABLE
的支援。完整的變更列表可在此處找到
pgtt-rsl 是一個開放專案。歡迎任何貢獻,以建立更好的工具。您只需使用 GitHub 工具發送您的想法、功能請求或修補程式。
連結
此擴充功能的目標是提供全域暫存表功能,以等待核心實作。此擴充功能的主要優點是模仿 Oracle 和 DB2 在使用 GTT 時的行為,讓您在遷移到 PostgreSQL 時不必或不想重寫應用程式程式碼。
這是一個由 Gilles Darold 在 HexaCluster Corp 創建和維護的專案。