tỷ lệ kèo bóng đá tối nay truy vấn có thể bị ảnh hưởng bởi nhiều thứ. Một sốtỷ lệ kèo bóng đá tối naytỷ lệ kèo bóng đá tối nay.
tỷ lệ kèo bóng đá tối naynghĩ ra AKế hoạch truy vấnĐối với mỗi truy vấn nó được đưa ra.tỷ lệ kèo bóng đá tối nayLệnh để xem kế hoạch truy vấn nào mà hệ thống tạo ra cho bất kỳ
Các số hiện được trích dẫn bởitỷ lệ kèo bóng đá tối naylà:
Chi phí khởi động ước tính (thời gian dành trước khi đầu ra
Tổng chi phí ước tính (nếu tất cả các hàng được truy xuất,giới hạnmệnh đề sẽ ngừng thanh toán
Số lượng hàng ước tính đầu ra của nút kế hoạch này
chiều rộng trung bình ước tính (tính bằng byte) của đầu ra hàng
Chi phí được đo bằng đơn vị của trang đĩa. (CPUkèo bóng đá hôm nay và ngày.)
Điều quan trọng cần lưu ý là chi phí của một nút cấp trên
Đầu ra hàng có một chút khó khăn vì nó làkhôngSố lượng hàngWHERE-Choong những ràng buộc đang được áp tỷ lệ kèo bóng đá tối nay
Đây là một số ví dụ (sử tỷ lệ kèo bóng đá tối nay cơ sở dữ liệu kiểm tra hồi quyPhân tích chân khôngvà 7.3
hồi quy =# tỷ lệ kèo bóng đá tối nay Chọn * từ TENK1;
Điều này là đơn giản như nó được. Nếu bạn làm
Chọn * từ pg_class trong đó relname = 'tenk1';
Bạn sẽ tìm ra rằngtenk1
có 233 trang đĩa và 10000 hàng. Vì vậy, chi phí được ước tính tạiCPU_Tuple_Cost
hiện đang làHiển thị CPU_Tuple_Cost).
Bây giờ hãy sửa đổi truy vấn để thêmWHEREđiều kiện:
hồi quy =# tỷ lệ kèo bóng đá tối nay Chọn * từ Tenk1 trong đó độc đáo1 <1000;
Ước tính các hàng đầu ra đã giảm vìWHEREmệnh đề. Tuy nhiên, việc quét sẽWHEREđiều kiện.
Số lượng hàng thực tế mà truy vấn này sẽ chọn là 1000,Phân tíchlệnh, vì các số liệu thống kê được tạo raPhân tíchđược lấy từ một ngẫu nhiên hóa
Sửa đổi truy vấn để hạn chế điều kiện nhiều hơn:
hồi quy =# tỷ lệ kèo bóng đá tối nay Chọn * từ TENK1 trong đó độc đáo1 <50;
Và bạn sẽ thấy rằng nếu chúng ta tạo raWHEREĐiều kiện đủ chọn lọc, người lập kế hoạch
Thêm một mệnh đề khác vàoWHEREđiều kiện:
Repression =# tỷ lệ kèo bóng đá tối nay Chọn * từ TENK1 trong đó độc đáo1 <50 và
Điều khoản được thêm vàoStringU1 = 'xxx'Giảm ước tính hàng đầu ra, nhưng không phải là chi phí vì chúng tôiStringU1Điều khoản không thể được áp tỷ lệ kèo bóng đá tối nay nhưđộc đáo1cột). Thay vào đó nó được áp tỷ lệ kèo bóng đá tối nay như một
Hãy thử tham gia hai bảng, sử tỷ lệ kèo bóng đá tối nay các trường chúng tôi đã
18697_19338
Trong tham gia vòng lặp lồng nhau này, quét bên ngoài là cùng một chỉ mụcđộc đáo1 <50 WHEREmệnh đề tại nút đó. Thet1.Unique2 =Điều khoản chưa liên quan, vì vậy nó khôngđộc đáo2Giá trị của hiện tạit2.unique2 =hằng số. Vì vậy, chúng tôi nhận đượctỷ lệ kèo bóng đá tối nay Chọn * Từ Tenk2 trong đó độc đáo2 =. Các chi phí của nút vòng sau đó được đặt trên cơ sở
Trong ví dụ này, số lượng hàng đầu ra của vòng lặp giống nhưWHEREĐiều khoản đề cập đến cả hai mối quan hệ và vì vậyỞ đâu ..., điều đó sẽ làm giảm
Một cách để xem xét các kế hoạch biến thể là buộc người lập kế hoạch phảiPhần 10.3.)
hồi quy =# set enable_nestloop = off;
Kế hoạch này đề xuất trích xuất 50 hàng thú vị củaTENK1
Sử tỷ lệ kèo bóng đá tối nay cùng một chỉ mục cũTENK2
,,t1.Unique2 = t2.unique2tại mỗiTENK2
Hàng. Chi phí để đọcTENK1
và thiết lập bảng băm hoàn toànTenk2
. Tổng ước tính thời gian cho sự tham giakhôngSạc 10000 lần 179,33;
Có thể kiểm tra độ chính xác của người lập kế hoạchtỷ lệ kèo bóng đá tối nay. Lệnh này thực sự thực hiện truy vấn vàtỷ lệ kèo bóng đá tối nayHiển thị. Ví dụ, chúng tôi có thể
hồi quy =# tỷ lệ kèo bóng đá tối nay Phân tích
Lưu ý rằng"Thời gian thực tế"Các giá trị ở mili giây của thời gian thực, trong khi"chi phí"Ước tính được thể hiện trong
Trong một số gói truy vấn, có thể cho một nút con"Loops"Giá trị"Loops"Giá trị để có được tổng thời gian thực sự
TheTổng thời gian chạyhiển thị bởitỷ lệ kèo bóng đá tối nay Phân tíchBao gồm người thực thiChọnTruy vấn, TheChèn, Cập nhậtvàXóalệnh, tổng thời gian chạy
Điều đáng chú ý làtỷ lệ kèo bóng đá tối nayKết quả không nên ngoại suy cho các tình huống khác ngoài