Mọi đối tượng schema cốt lõi của PostgreSQL — cấu trúc, bảng, view, chỉ mục, kiểu dữ liệu, danh tính, routine, bảo mật và sao chép — trong một bảng tham chiếu duy nhất.
PostgreSQL lưu dữ liệu trong các đối tượng schema có tên. Mỗi đối tượng có một nhiệm vụ: bảng giữ các dòng, chỉ mục tăng tốc tra cứu, routine giữ logic. Hiểu mỗi đối tượng là gì trước khi chọn thêm chúng, và coi constraint cùng policy là các quy tắc giữ cho dữ liệu trung thực.
Bảng tham chiếu · 45 mục
Đối tượng cơ sở dữ liệuExplained
45 of 45 rows
Cấu trúc
Một catalog riêng biệt chứa các schema bên trong một cluster.
Tách các ứng dụng hoặc môi trường không được phép chia sẻ dữ liệu.
Một vùng tên có định danh bên trong cơ sở dữ liệu, nhóm các đối tượng liên quan.
Tổ chức đối tượng theo tính năng hoặc chủ sở hữu và tránh xung đột tên.
Một vị trí có tên trên đĩa, nơi đặt các tệp bảng và chỉ mục.
Đưa các bảng nóng sang lưu trữ nhanh và giữ dữ liệu lạnh trên đĩa giá rẻ.
Cài đặt quyết định tên đối tượng không định danh sẽ phân giải về schema nào.
Trỏ phiên đến đúng schema để truy vấn dùng được tên ngắn.
Mô tả được lưu trên bất kỳ đối tượng cơ sở dữ liệu nào bằng COMMENT ON.
Ghi chú bảng và cột ngay nơi người viết truy vấn tiếp theo sẽ tìm thấy.
Bảng và view
Một quan hệ có tên, lưu các dòng trong các cột có kiểu.
Bộ chứa chính cho dữ liệu lâu dài.
Bảng có các dòng biến mất khi kết thúc phiên hoặc giao dịch.
Giữ dữ liệu tạm hoặc dữ liệu chuyển tiếp không được sống lâu hơn kết nối.
Bảng cha được chia thành các partition con theo khóa đã khai báo.
Giữ các bảng rất lớn dễ quản lý bằng cách phân dải hoặc liệt kê dòng vào các partition.
Bảng có các dòng nằm ở hệ thống bên ngoài, truy cập qua foreign data wrapper.
Truy vấn cơ sở dữ liệu hoặc tệp từ xa như thể là bảng cục bộ.
Truy vấn được lưu và trình bày như một bảng ảo.
Trình bày cùng các dòng qua các bộ lọc hoặc join khác nhau.
View đơn giản chuyển tiếp INSERT, UPDATE và DELETE tới bảng cơ sở của nó.
Mở một phần được lọc hoặc join của bảng mà vẫn ghi được.
View có bộ kết quả được ghi ra đĩa và làm mới theo yêu cầu.
Cache các phép tổng hợp hoặc join đắt và đọc chúng thật nhanh.
Hàm trả về một tập dòng, dùng được ở bất cứ đâu bảng dùng được.
Triển khai một tập tính toán ngay tại chỗ, giống unnest biến mảng thành dòng.
Chỉ mục
Chỉ mục dạng cây cân bằng cho tra cứu bằng và theo khoảng.
Tăng tốc WHERE, JOIN và ORDER BY trên các cột sắp xếp được.
Chỉ mục từ chối giá trị trùng lặp trong khóa của nó.
Buộc tính duy nhất trên một cột hoặc tổ hợp cột.
Chỉ mục đảo hoặc cây tìm kiếm tổng quát cho các giá trị không phải vô hướng.
Đánh chỉ mục mảng, JSONB, full-text hoặc dữ liệu hình học.
Chỉ mục chỉ dựng trên các dòng khớp một điều kiện WHERE.
Đánh chỉ mục phần nóng và bỏ qua phần còn lại để tiết kiệm dung lượng.
Kiểu và extension
Kiểu do người dùng định nghĩa, giá trị đến từ danh sách nhãn cố định.
Giới hạn cột vào một tập đóng như mã trạng thái.
Kiểu cơ sở cộng ràng buộc check, được đặt tên để dùng lại làm kiểu cột.
Chia sẻ một định nghĩa đã kiểm chứng, như text không rỗng, cho nhiều cột.
Bộ quy tắc định nghĩa chuỗi so sánh và sắp xếp thế nào.
Có thứ tự đúng cho chữ hoa/thường, dấu, hoặc một locale cụ thể.
Gói cài được, thêm hàm, kiểu hoặc toán tử vào cơ sở dữ liệu.
Thẩm định công cụ đã kiểm chứng như PostGIS hoặc pg_trgm trong một bước.
Danh tính và giá trị tạo tự động
Đối tượng bộ đếm độc lập, cấp ra các số nguyên liên tiếp.
Cấp khóa serial khi nhiều bảng dùng chung một bộ sinh.
Cột bảng được hậu thuẫn bởi một sequence nội bộ, theo chuẩn SQL.
Khóa chính tự tăng hiện đại, được ưa chuộng hơn SERIAL.
Cột có giá trị được tính từ các cột khác trong cùng dòng.
Lưu hoặc trình bày một giá trị dẫn xuất không cần ghi tay.
Routine
Khối SQL có tên, trả về một giá trị hoặc các dòng.
Đóng gói logic dùng lại được và gọi nó bên trong truy vấn.
Khối có tên, chạy các hành động và tự kiểm soát giao dịch của mình.
ETL nhiều bước, nơi routine tự commit hoặc rollback bên trong.
Routine gấp nhiều dòng đầu vào thành một giá trị, qua hàm state và hàm final.
Định nghĩa phép gom tùy chỉnh như trung bình có trọng số.
Ký hiệu gắn với một hoặc nhiều hàm, cho các kiểu toán hạng cụ thể.
Cho kiểu của bạn có cú pháp tự nhiên như a + b hoặc @>.
Đường chuyển đổi được khai báo từ kiểu này sang kiểu khác.
Kiểm soát giá trị đổi kiểu thế nào, kể cả chuyển đổi nào xảy ra ngầm.
Routine gắn với sự kiện bảng và tự động kích hoạt.
Kiểm toán, kiểm chứng hoặc lan truyền thay đổi trên INSERT, UPDATE hoặc DELETE.
Trigger kích hoạt trên sự kiện cấp cơ sở dữ liệu, như lệnh DDL.
Ghi log, chặn hoặc kiểm toán thay đổi schema trên toàn cơ sở dữ liệu.
Truy vấn đã parse và được lưu để chạy lặp lại với tham số liên kết.
Tái dùng một lần parse và một kế hoạch cho nhiều lần chạy cùng truy vấn.
Bộ xử lý giữ bộ kết quả mở để lấy từng dòng.
Phân trang kết quả lớn hoặc duyệt từng dòng bên trong routine.
Bảo mật và quy tắc
Danh tính có tên, nắm giữ quyền; user là role có thể đăng nhập.
Gom quyền một lần, rồi cấp cho người, dịch vụ hoặc role khác.
Các lệnh cấp quyền trên đối tượng cho role, hoặc thu hồi chúng.
Quyết định role nào được đọc, ghi hoặc thực thi từng đối tượng.
Quyền sẵn có của người tạo để sửa hoặc xóa đối tượng, tách biệt với grant.
Gọi tên role chịu trách nhiệm về vòng đời của một đối tượng.
Chỉ dẫn thường trực, tự cấp quyền trên các đối tượng mà role tạo sau này.
Thiết lập quyền sẵn để bảng mới không cần grant thủ công cho role ứng dụng.
Quy tắc từ chối các thao tác ghi vi phạm điều kiện đã khai báo.
Buộc các bảo đảm NOT NULL, CHECK, UNIQUE, PRIMARY KEY và FOREIGN KEY.
Quy tắc theo role, ẩn các dòng mà phiên không được thấy.
Cách ly tenant hoặc truy cập theo người dùng mà không viết lại truy vấn ứng dụng.
Bí danh phân giải một tên tới đối tượng ở nơi khác; có sẵn trong Oracle và SQL Server.
Chuyển đổi bố cục schema; trong PostgreSQL hãy dùng search_path thay thế.
Định nghĩa những hành động nào được ghi lại để xem xét, qua pgaudit hoặc công cụ của nhà cung cấp.
Chứng minh ai đã đọc hoặc thay đổi gì, cho mục đích tuân thủ và điều tra.
Chỉ dẫn viết lại truy vấn đến thành một lệnh khác.
Chuyển hướng ghi kiểu cũ; PostgreSQL giờ ưu tiên trigger hoặc updatable view.
Sao chép
Định nghĩa phía gửi, chỉ bảng nào và loại thay đổi nào được stream tới replica.
Khai báo cơ sở dữ liệu cung cấp gì cho các subscriber của logical replication.
Bên nhận kết nối tới publication và áp các thay đổi của nó vào bảng cục bộ.
Kéo thay đổi từ một cơ sở dữ liệu PostgreSQL khác vào cơ sở dữ liệu này.
Dấu hiệu khiến primary giữ WAL cho đến khi bên tiêu thụ đọc xong.
Bảo đảm standby hoặc subscriber có thể tiếp tục mà không mất thay đổi.