Postgresql 8.1.23 Tài liệu | ||||
---|---|---|---|---|
prev | Backward nhanh | Chương 48. Định nghĩa giao diện phương thức truy cập chỉ soi kèo bóng đá truoctran | Chuyển tiếp nhanh | Tiếp theo |
10432_11061
Mỗi hàm amcostestimate phải có chữ ký:
Void Amcostestimate (Root PlannerInfo *, IndexoptInfo *index, Danh sách *Indexquals, soi kèo bóng đá truoctran phí *IndexStartUpCost, soi kèo bóng đá truoctran phí *indextotalcost, Chọn lọc *indexSelectivity, Double *indexCorrelation);
Bốn tham số đầu tiên là đầu vào:
Thông tin của người lập kế hoạch về việc truy vấn đã xử lý.
Chỉ soi kèo bóng đá truoctran đang được xem xét.
11797_11971
Bốn tham số cuối cùng là các đầu ra từng tham soi kèo bóng đá truoctranếu:
Đặt thành chi phí xử lý khởi động chỉ soi kèo bóng đá truoctran
Đặt thành tổng chi phí xử lý chỉ soi kèo bóng đá truoctran
Đặt thành chỉ soi kèo bóng đá truoctran chọn lọc
Đặt thành hệ số tương quan giữa thứ tự quét chỉ soi kèo bóng đá truoctran và đơn đặt hàng của bảng bên dưới
12621_12807
Chi phí truy cập chỉ soi kèo bóng đá truoctran phải được tính toán trong các đơn vị được sử dụng bởisrc/phụ trợ/tối ưu hóa/đường dẫn/soi kèo bóng đá truoctran phí.: Tìm nạp khối đĩa tuần tự có giá 1,0, tìm nạp không sau có soi kèo bóng đá truoctran phíngẫu nhiên_page_costvà chi phí thường xuyên xử lý một hàng chỉ soi kèo bóng đá truoctran thường được coi làcpu_index_tuple_cost. Ngoài ra, một bội số củaCPU_OPERATOR_COSTnên được được tính cho bất kỳ toán tử so sánh nào được gọi trong khi chỉ soi kèo bóng đá truoctran Xử lý (đặc biệt là đánh giá các chỉ soi kèo bóng đá truoctran chính họ).
Chi phí truy cập nên bao gồm tất cả các chi phí đĩa và CPU được liên kết với việc quét 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.
The"soi kèo bóng đá truoctran phí khởi nghiệp"là 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 coi là 0, Nhưng một loại chỉ soi kèo bóng đá truoctran với chi phí khởi động cao có thể muốn đặt nó khác không.
Sắc chen mác phải được đặt thành phân số ước tính của các hàng bảng cha sẽ được truy xuất trong chỉ soi kèo bóng đá truoctran quét. Trong trường hợp chỉ số mất, điều này thường sẽ cao hơn hơn một phần của các hàng thực sự vượt qua chất lượng đã cho điều kiện.
Chỉ soi kèo bóng đá truoctran nên được đặt thành mối tương quan (phạm vi giữa -1.0 đến 1.0) giữa thứ tự chỉ soi kèo bóng đá truoctran và bảng đặt hàng. Điều này được sử dụng để điều chỉnh ước tính cho chi phí của tìm nạp các hàng từ bảng cha.
Dự toán soi kèo bóng đá truoctran 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 nhất định. TRONG
sự vắng mặt của bất kỳ kiến thức cụ thể theo kiểu chỉ soi kèo bóng đá truoctran nào, sử dụng
Chức năng tối ưu hóa tiêu chuẩn14915_14941
:
*IndexSelectivity = Clauselist_Selectivity (root, indexquals, index- rel- relid, tham gia_inner);
Ướ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 thời gian số lượng hàng trong chỉ soi kèo bóng đá truoctran, nhưng Nó có thể là 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ừ struct indexoptInfo.)
Ước tính số lượng trang chỉ soi kèo bóng đá truoctran sẽ Truy cập trong quá trình quét. Đây có thể chỉ là IndexSelectivity thời gian 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:
/* * Giả định chung của chúng tôi là các trang chỉ soi kèo bóng đá truoctran sẽ được đọc * tuần tự, vì vậy chúng có chi phí 1.0 mỗi cái, không phải ngẫu nhiên_page_cost. * Ngoài ra, chúng tôi tính phí để đánh giá các chỉ soi kèo bóng đá truoctran tại mỗi hàng chỉ soi kèo bóng đá truoctran. * Tất cả các chi phí được cho là được thanh toán tăng dần trong quá trình quét. */ cost_qual_eval (& index_qual_cost, indexquals); *indexStartUpCost = index_qual_cost.startup; *indextotalcost = numIndExpages + .
Ước tính mối tương quan chỉ soi kèo bóng đá truoctran. Cho một đơn đặt hàng đơn giản chỉ soi kèo bóng đá truoctran trên một trường duy nhất, điều này có thể được lấy từ pg_statistic. Nếu mối tương quan không được biết đến, Ước tính bảo thủ bằng không (không có mối tương quan).
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.