TheAmcostestimate
Hàm được cung cấp thông tin mô tả việc quét chỉ soi kèo bóng đá truoctran có thể, bao gồm các danh sách nơi và thứ tự của các điều khoản đã được xác định là có thể sử dụng được với chỉ soi kèo bóng đá truoctran. Nó phải trả về các ước tính về chi phí truy cập chỉ soi kèo bóng đá truoctran và tính chọn lọc của các mệnh đề (nghĩa là phần của các hàng bảng cha sẽ được truy xuất trong quá trình quét chỉ soi kèo bóng đá truoctran).Amcostestimate
Hàm là cho phép các phương thức truy cập chỉ soi kèo bóng đá truoctran cung cấp kiến thức cụ thể theo kiểu chỉ số, trong trường hợp có thể cải thiện các ước tính tiêu chuẩn.
mỗiAmcostestimate
Hàm phải có chữ ký:
Void
Ba tham số đầu tiên là đầu vào:
root
Thông tin của người lập kế hoạch về truy vấn đang được xử lý.
đường dẫn
Đường dẫn truy cập chỉ soi kèo bóng đá truoctran đang được xem xét. Tất cả các trường ngoại trừ các giá trị chi phí và chọn lọc đều hợp lệ.
loop_count
Số lần lặp lại của quét chỉ soi kèo bóng đá truoctran cần được tính vào ước tính chi phí. Điều này thường sẽ lớn hơn một khi xem xét quét được tham số để sử dụng ở bên trong của một Nestloop tham gia.loop_count
có nghĩa là có thể phù hợp để cho phép một số hiệu ứng bộ đệm trên nhiều lần quét.
Năm tham số cuối cùng là các đầu ra qua từng tham gia:
*indexStartUpCost
Đặt thành chi phí xử lý khởi động chỉ soi kèo bóng đá truoctran
*IndextotalCost
Đặt thành tổng chi phí xử lý chỉ soi kèo bóng đá truoctran
*IndexSelectivity
Đặt thành chỉ soi kèo bóng đá truoctran chọn lọc
*IndexCorrelation
Đặt thành hệ số tương quan giữa thứ tự quét chỉ soi kèo bóng đá truoctran và thứ tự của bảng bên dưới
*IndexPages
Đặt thành số trang Lá chỉ soi kèo bóng đá truoctran
14081_14263
Chi phí truy cập chỉ soi kèo bóng đá truoctran phải được tính bằng cách sử dụng các tham số được sử dụng bởisrc/phụ trợ/tối ưu hóa/path/costingize.c
: Tìm nạp khối đĩa tuần tự có chi phíSEQ_PAGE_COST
14492_14527ngẫu nhiên_page_cost
và chi phí xử lý một hàng chỉ số thường được coi làcpu_index_tuple_cost
. Ngoài ra, một bội số thích hợp củaCPU_OPERATOR_COST
nên được tính cho bất kỳ toán tử so sánh nào được gọi trong quá trình xử lý chỉ soi kèo bóng đá truoctran (đặc biệt là đánh giá của chính các chỉ soi kèo bóng đá truoctran).
Chi phí truy cập nên bao gồm tất cả các chi phí đĩa và CPU liên quan đến việc quét chính chỉ soi kèo bóng đá truoctran, nhưngkhôngChi phí truy xuất hoặc xử lý các hàng bảng cha được xác định bởi chỉ soi kèo bóng đá truoctran.
TheChi phí khởi độngHồilà một phần của tổng chi phí quét phải được sử dụng trước khi chúng ta có thể bắt đầu tìm nạp hàng đầu tiên. Đối với hầu hết các chỉ soi kèo bóng đá truoctran, điều này có thể được lấy dưới dạng 0, nhưng một loại chỉ soi kèo bóng đá truoctran có chi phí khởi động cao có thể muốn đặt nó khác.
TheindexSelectivity
nên được đặt thành phần ước tính của các hàng bảng cha sẽ được truy xuất trong quá trình quét chỉ soi kèo bóng đá truoctran. Trong trường hợp truy vấn mất mát, điều này thường sẽ cao hơn tỷ lệ các hàng thực sự vượt qua các điều kiện chất lượng đã cho.
TheindexCorrelation
nên được đặt thành mối tương quan (nằm trong khoảng giữa -1.0 và 1.0) giữa thứ tự chỉ soi kèo bóng đá truoctran và thứ tự bảng. Điều này được sử dụng để điều chỉnh ước tính cho chi phí tìm nạp các hàng từ bảng cha.
TheIndexPages
nên được đặt thành số trang của lá. Điều này được sử dụng để ước soi kèo bóng đá truoctran số lượng công nhân để quét chỉ số song song.
Khiloop_count
lớn hơn một, các số được trả về trung bình dự kiến cho bất kỳ một lần quét nào của chỉ soi kèo bóng đá truoctran.
Dự toán chi phí
Công cụ ước soi kèo bóng đá truoctran phí điển hình sẽ được tiến hành như sau:
Ước tính và trả lại phần của các hàng bảng cha mẹ sẽ được truy cập dựa trên các điều kiện chất lượng đã cho. Trong trường hợp không có bất kỳ kiến thức cụ thể loại chỉ soi kèo bóng đá truoctran nào, hãy sử dụng hàm tối ưu hóa tiêu chuẩnclauselist_selectivity ()
:
16925_17141
Ước tính số lượng hàng chỉ soi kèo bóng đá truoctran sẽ được truy cập trong quá trình quét. Đối với nhiều loại chỉ soi kèo bóng đá truoctran, điều này giống nhưindexSelectivity
nhân số lượng hàng trong chỉ soi kèo bóng đá truoctran, nhưng nó có thể nhiều hơn. (Lưu ý rằng kích thước của chỉ soi kèo bóng đá truoctran trong các trang và hàng có sẵn từpath- indexInfo
struct.)
Ước tính số lượng trang chỉ soi kèo bóng đá truoctran sẽ được truy xuất trong quá trình quét. Đây có thể chỉ làindexSelectivity
lần kích thước của chỉ soi kèo bóng đá truoctran trong các trang.
Tính chi phí truy cập chỉ soi kèo bóng đá truoctran. Một công cụ ước tính chung có thể làm điều này:
/*
Tuy nhiên, những điều trên không tính đến việc khấu hao các lần đọc chỉ soi kèo bóng đá truoctran trên các lần quét chỉ soi kèo bóng đá truoctran lặp lại.
Ước tính mối tương quan chỉ số. Đối với một chỉ soi kèo bóng đá truoctran được đặt hàng đơn giản trên một trường duy nhất, điều này có thể được lấy từ pg_statistic.
Ví dụ về các chức năng ước soi kèo bóng đá truoctran phí có thể được tìm thấy trong.