soi kèo bóng đá truoctran - Hiển thị kế hoạch thực thi của câu lệnh
soi kèo bóng đá truoctran [(Tùy chọn
[, ...])]]câu lệnh
WHERETùy chọn
có thể là một trong số:Phân tích [Boolean
]Boolean
]Boolean
]Boolean
]Boolean
]Boolean
]Boolean
]Boolean
]Boolean
]Boolean
]
Lệnh này hiển thị kế hoạch soi kèo bóng đá truoctran thi rằngPostgreSQLNgười lập kế hoạch tạo cho câu lệnh được cung cấp. Kế hoạch thực thi cho thấy cách (soi kèo bóng đá truoctran) bảng được tham chiếu bởi câu lệnh sẽ được quét - bằng cách quét tuần tự đơn giản, quét chỉ mục, v.v. - và nếu nhiều bảng được tham chiếu, thuật toán tham gia sẽ được sử dụng để kết hợp soi kèo bóng đá truoctran hàng yêu cầu từ mỗi bảng đầu vào.
Phần quan trọng nhất của màn hình là chi phí thực thi tuyên bố ước tính, đó là dự đoán của người lập kế hoạch sẽ mất bao lâu để chạy câu lệnh (được đo bằng soi kèo bóng đá truoctran đơn vị chi phí tùy ý, nhưng trang có nghĩa là trang có nghĩa là. Trên thực tế, hai số được hiển thị: Chi phí khởi động trước hàng đầu tiên có thể được trả lại và tổng chi phí để trả lại tất cả soi kèo bóng đá truoctran hàng.tồn tại
, người lập kế hoạch sẽ chọn chi phí khởi động nhỏ nhất thay vì tổng chi phí nhỏ nhất (vì người soi kèo bóng đá truoctran thi sẽ dừng sau khi nhận được một hàng, dù sao đi nữa). Ngoài ra, nếu bạn giới hạn số lượng hàng để trả về vớiGiới hạn
mệnh đề, người lập kế hoạch thực hiện nội suy thích hợp giữa soi kèo bóng đá truoctran chi phí điểm cuối để ước tính kế hoạch nào thực sự rẻ nhất.
ThePhân tích
Tùy chọn khiến tuyên bố soi kèo bóng đá truoctran sự được soi kèo bóng đá truoctran thi, không chỉ được lên kế hoạch. Sau đó, số liệu thống kê thời gian chạy soi kèo bóng đá truoctran tế được thêm vào màn hình, bao gồm tổng thời gian trôi qua được sử dụng trong mỗi nút kế hoạch (tính bằng mili giây) và tổng số hàng mà nó soi kèo bóng đá truoctran sự trả lại.
Hãy nhớ rằng câu lệnh soi kèo bóng đá truoctran sự được soi kèo bóng đá truoctran thi khiPhân tích
Tùy chọn được sử dụng. Mặc dùsoi kèo bóng đá truoctran
sẽ loại bỏ mọi đầu ra mà AChọn
Sẽ trở lại, soi kèo bóng đá truoctran tác dụng phụ khác của câu lệnh sẽ xảy ra như bình thường. Nếu bạn muốn sử dụngsoi kèo bóng đá truoctran Phân tích
trênChèn
, Cập nhật
, Xóa
, Hợp nhất
, Tạo bảng dưới dạng
hoặcsoi kèo bóng đá truoctran thi
Tuyên bố mà không để lệnh ảnh hưởng đến dữ liệu của bạn, hãy sử dụng phương pháp này:
Bắt đầu;
Phân tích
Thực hiện lệnh và hiển thị thời gian chạy thực tế và soi kèo bóng đá truoctran số liệu thống kê khác. Tham số này mặc định làSai
.
Verbose
Hiển thị thông tin bổ sung về kế hoạch. Cụ thể, bao gồm danh sách cột đầu ra cho từng nút trong cây kế hoạch, bảng trình điều kiện lược đồ và tên hàm, luôn luôn soi kèo bóng đá truoctran biến nhãn trong soi kèo bóng đá truoctran biểu thức với bí danh bảng phạm vi của chúng và luôn in tên của từng kích hoạt cho số liệu thống kê được hiển thị.compute_query_idĐể biết thêm chi tiết. Tham số này mặc định làSai
.
chi phí
Bao gồm thông tin về khởi động ước tính và tổng chi phí của mỗi nút kế hoạch, cũng như số lượng hàng ước tính và chiều rộng ước tính của mỗi hàng. Tham số này mặc định làTRUE
.
Cài đặt
Bao gồm thông tin về soi kèo bóng đá truoctran tham số cấu hình. Cụ thể, bao gồm soi kèo bóng đá truoctran tùy chọn ảnh hưởng đến lập kế hoạch truy vấn với giá trị khác với giá trị mặc định tích hợp.Sai
.
Generic_plan
Cho phép câu lệnh chứa soi kèo bóng đá truoctran trình giữ chỗ tham số như$ 1
và tạo ra một kế hoạch chung không phụ thuộc vào soi kèo bóng đá truoctran giá trị của soi kèo bóng đá truoctran tham số đó. Nhìn thấyChuẩn bị
Để biết chi tiết về soi kèo bóng đá truoctran kế hoạch chung và soi kèo bóng đá truoctran loại câu lệnh hỗ trợ soi kèo bóng đá truoctran tham số. Tham số này không thể được sử dụng cùng vớiPhân tích
. Nó mặc định làSai
.
bộ đệm
Bao gồm thông tin về việc sử dụng bộ đệm. Cụ thể, bao gồm số lượng soi kèo bóng đá truoctran khối được chia sẻ, đọc, bẩn và viết, số lượng soi kèo bóng đá truoctran khối địa phương nhấn, đọc, bẩn và viết, số lượng khối nhiệt độ đọc và viết, và thời gian đọc và viết soi kèo bóng đá truoctran khối tệp dữ liệu, khối địa phương và khối tệp tạm thời (tính bằng mili giây) nếu nếuTrack_io_timingđược bật. MỘTHITcó nghĩa là tránh được lần đọc vì khối đã được tìm thấy trong bộ đệm khi cần thiết. soi kèo bóng đá truoctran khối được chia sẻ chứa dữ liệu từ soi kèo bóng đá truoctran bảng và chỉ mục thông thường;Dirtiedcho biết số lượng soi kèo bóng đá truoctran khối chưa được sửa đổi trước đó đã được thay đổi bởi truy vấn này; Trong khi số lượng khốiViếtcho biết số lượng soi kèo bóng đá truoctran khối được chia trước đó bị trục xuất khỏi bộ đệm bởi phụ trợ này trong quá trình xử lý truy vấn. Số lượng khối được hiển thị cho một nút cấp trên bao gồm soi kèo bóng đá truoctran khối được sử dụng bởi tất cả soi kèo bóng đá truoctran nút con của nó.Sai
.
sê -ri
Bao gồm thông tin về chi phísê -riDữ liệu đầu ra của truy vấn, đang chuyển đổi nó thành định dạng văn bản hoặc nhị phân để gửi cho máy khách. Đây có thể là một phần quan trọng của thời gian cần thiết để thực hiện thường xuyên truy vấn, nếu soi kèo bóng đá truoctran chức năng đầu ra của kiểu dữ liệu là đắt tiền hoặc nếuPostgresql: TàiED Giá trị phải được tìm nạp từ bộ lưu trữ ngoài dòng.soi kèo bóng đá truoctran
hành vi mặc định,sê -ri không
, không thực hiện soi kèo bóng đá truoctran chuyển đổi này. Nếu nhưSê -ri văn bản
hoặcsê -ri nhị phân
được chỉ định, soi kèo bóng đá truoctran chuyển đổi thích hợp được thực hiện và thời gian làm như vậy được đo lường (trừ khiThời gian tắt
được chỉ định). Nếubộ đệm
Tùy chọn cũng được chỉ định, sau đó mọi truy cập bộ đệm liên quan đến soi kèo bóng đá truoctran chuyển đổi cũng được tính. Tuy nhiên, không có trường hợp nào, sẽsoi kèo bóng đá truoctran
soi kèo bóng đá truoctran sự gửi dữ liệu kết quả cho máy khách; Do đó chi phí truyền mạng không thể được điều tra theo cách này.Phân tích
cũng được bật. Nếu nhưsê -ri
được viết mà không có đối số,Text
được giả định.
Wal
Bao gồm thông tin về Thế hệ ghi WAL. Cụ thể, bao gồm số lượng hồ sơ, số lượng hình ảnh toàn trang (FPI) và số lượng Wal được tạo bằng byte.Phân tích
cũng được bật. Nó mặc định làSai
.
Thời gian
Bao gồm thời gian khởi động soi kèo bóng đá truoctran tế và thời gian dành cho mỗi nút trong đầu ra. Chi phí đọc liên tục đồng hồ hệ thống có thể làm chậm truy vấn đáng kể trên một số hệ thống, do đó có thể hữu ích khi đặt tham số này thànhSai
Khi chỉ cần số lượng hàng soi kèo bóng đá truoctran tế và không cần thời gian chính xác. Thời gian chạy của toàn bộ câu lệnh luôn được đo, ngay cả khi thời gian cấp độ nút được tắt với tùy chọn này.Phân tích
cũng được bật. Nó mặc định làTRUE
.
Tóm tắt
Bao gồm thông tin tóm tắt (ví dụ: tổng số thông tin thời gian) sau kế hoạch truy vấn. Thông tin tóm tắt được bao gồm theo mặc định khiPhân tích
được sử dụng nhưng nếu không thì không được bao gồm theo mặc định, nhưng có thể được bật bằng tùy chọn này. Thời gian lập kế hoạch trongsoi kèo bóng đá truoctran thực thi
Bao gồm thời gian cần thiết để lấy kế hoạch từ bộ đệm và thời gian cần thiết để lập kế hoạch lại, nếu cần thiết.
bộ nhớ
Bao gồm thông tin về mức tiêu thụ bộ nhớ theo giai đoạn lập kế hoạch truy vấn. Cụ thể, bao gồm lượng lưu trữ chính xác được sử dụng bởi soi kèo bóng đá truoctran cấu trúc trong bộ nhớ của Planner, cũng như tổng bộ nhớ xem xét chi phí phân bổ.Sai
.
Định dạng
Chỉ định định dạng đầu ra, có thể là văn bản, XML, JSON hoặc YAML. Đầu ra không theo văn bản chứa thông tin giống như định dạng đầu ra văn bản, nhưng dễ dàng hơn cho soi kèo bóng đá truoctran chương trình phân tích cú pháp.Text
.
Boolean
Chỉ định tùy chọn đã chọn nên được bật hoặc tắt. Bạn có thể viếtTRUE
, trên
hoặc1
để bật tùy chọn vàSai
, TẮT
hoặc0
Để vô hiệu hóa nó. TheBoolean
Giá trị cũng có thể được bỏ qua, trong trường hợp đóTRUE
được giả định.
câu lệnh
bất kỳChọn
, Chèn
, Cập nhật
, Xóa
, Hợp nhất
, Giá trị
, soi kèo bóng đá truoctran thi
, khai báo
, Tạo bảng dưới dạng
hoặcTạo chế độ xem được vật chất hóa là
Tuyên bố, có kế hoạch soi kèo bóng đá truoctran thi mà bạn muốn xem.
Kết quả của lệnh là mô tả văn bản của kế hoạch được chọn chocâu lệnh
, Tùy chọn chú thích bằng thống kê soi kèo bóng đá truoctran thi.Phần 14.1Mô tả thông tin được cung cấp.
Để cho phépPOSTGRESQLTruy vấn kế hoạch để đưa ra quyết định thông tin hợp lý khi tối ưu hóa soi kèo bóng đá truoctran truy vấn,pg_statistic
Dữ liệu nên được cập nhật cho tất cả soi kèo bóng đá truoctran bảng được sử dụng trong truy vấn. Bình thườngDaemon Autovacuumsẽ tự động chăm sóc điều đó. Nhưng nếu một bảng gần đây đã có những thay đổi đáng kể về nội dung của nó, bạn có thể cần phải soi kèo bóng đá truoctran hiện một thủ côngPhân tích
Thay vì chờ Autovacuum bắt kịp với soi kèo bóng đá truoctran thay đổi.
Để đo chi phí thời gian chạy của mỗi nút trong kế hoạch soi kèo bóng đá truoctran hiện, việc triển khai hiện tại củasoi kèo bóng đá truoctran Phân tích
Thêm chi phí hồ sơ vào soi kèo bóng đá truoctran thi truy vấn. Kết quả là, chạysoi kèo bóng đá truoctran Phân tích
Trên truy vấn đôi khi có thể mất nhiều thời gian hơn đáng kể so với việc soi kèo bóng đá truoctran hiện truy vấn bình thường. Lượng chi phí phụ thuộc vào bản chất của truy vấn, cũng như nền tảng đang được sử dụng.
Để hiển thị kế hoạch cho một truy vấn đơn giản trên bảng với mộtSố nguyên
Cột và 10000 hàng:
soi kèo bóng đá truoctran chọn * từ foo;
Đây là cùng một truy vấn, với định dạng đầu ra của JSON:
soi kèo bóng đá truoctran (định dạng json) chọn * từ foo;
Nếu có chỉ mục và chúng tôi sử dụng một truy vấn có thể lập chỉ mụcWHERE
điều kiện,soi kèo bóng đá truoctran
Có thể hiển thị một kế hoạch khác:
soi kèo bóng đá truoctran chọn * từ foo trong đó i = 4;
Đây là cùng một truy vấn, nhưng ở định dạng YAML:
soi kèo bóng đá truoctran (Định dạng yaml) chọn * từ foo trong đó i = '4';
Định dạng XML được để lại như một bài tập cho người đọc.
Đây là kế hoạch tương tự với ước tính chi phí bị triệt tiêu:
soi kèo bóng đá truoctran (chi phí sai) Chọn * từ foo trong đó i = 4;
Đây là một ví dụ về kế hoạch truy vấn cho truy vấn sử dụng hàm tổng hợp:
soi kèo bóng đá truoctran Chọn tổng (i) từ foo trong đó i <10;
Đây là một ví dụ về việc sử dụngsoi kèo bóng đá truoctran thực thi
Để hiển thị kế hoạch soi kèo bóng đá truoctran thi cho một truy vấn đã chuẩn bị:
Chuẩn bị truy vấn (int, int) là chọn tổng (thanh) từ thử nghiệm
Tất nhiên, soi kèo bóng đá truoctran số cụ thể được hiển thị ở đây phụ thuộc vào nội dung thực tế của soi kèo bóng đá truoctran bảng liên quan. Cũng lưu ý rằng soi kèo bóng đá truoctran số và thậm chí chiến lược truy vấn đã chọn, có thể thay đổi giữaPostgreSQLPhát hành do cải tiến kế hoạch. Ngoài ra,Phân tích
Lệnh sử dụng lấy mẫu ngẫu nhiên để ước tính thống kê dữ liệu; Do đó, ước tính chi phí có thể thay đổi sau khi chạy mớiPhân tích
, ngay cả khi phân phối dữ liệu soi kèo bóng đá truoctran tế trong bảng không thay đổi.
Lưu ý rằng ví dụ trước cho thấytùy chỉnhKhănLập kế hoạch cho soi kèo bóng đá truoctran giá trị tham số cụ thể được đưa ra trongsoi kèo bóng đá truoctran thi
. Chúng tôi cũng có thể muốn xem kế hoạch chung cho một truy vấn được tham số hóa, có thể được soi kèo bóng đá truoctran hiện vớiGeneric_plan
:
soi kèo bóng đá truoctran (Generic_plan)
Trong trường hợp này là trình phân tích cú pháp đã suy ra chính xác rằng$ 1
và$ 2
nên có cùng loại dữ liệu nhưid
, vì vậy việc thiếu thông tin loại tham số từChuẩn bị
không phải là vấn đề. Trong soi kèo bóng đá truoctran trường hợp khác, có thể cần phải chỉ định rõ ràng soi kèo bóng đá truoctran loại cho soi kèo bóng đá truoctran ký hiệu tham số, có thể được thực hiện bằng cách đúc chúng, ví dụ:
soi kèo bóng đá truoctran (Generic_plan)
Không cósoi kèo bóng đá truoctran
Câu lệnh được xác định trong tiêu chuẩn SQL.
Cú pháp sau đã được sử dụng trướcPostgreSQLPhiên bản 9.0 và vẫn được hỗ trợ:
soi kèo bóng đá truoctran [Phân tích] [Verbose]câu lệnh
Lưu ý rằng trong cú pháp này, soi kèo bóng đá truoctran tùy chọn phải được chỉ định trong chính xác thứ tự được hiển thị.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớpMẫu nàyĐể báo cáo vấn đề tài liệu.