Postgresql 7.4.30 Tài liệu | ||||
---|---|---|---|---|
Prev | Backward nhanh | Chương 42. Tổng quan về PostgreSQL Internals | Chuyển tiếp nhanh | Tiếp theo |
Nhiệm vụ củaNgười lập tỷ lệ kèo bóng đá trực tuyến hôm nay hóaIS Để tạo ra một tỷ lệ kèo bóng đá trực tuyến hôm nay thực hiện tối ưu. Một truy vấn SQL nhất định (và Do đó, một cây truy vấn) thực sự có thể được thực hiện trong nhiều loại theo các cách khác nhau, mỗi cách sẽ tạo ra cùng một bộ kết quả. Nếu nó khả thi về mặt tính toán, trình tối ưu hóa truy vấn sẽ kiểm tra từng tỷ lệ kèo bóng đá trực tuyến hôm nay thực thi có thể, cuối cùng chọn tỷ lệ kèo bóng đá trực tuyến hôm nay thực thi sẽ chạy nhanh nhất.
Lưu ý:Trong một số tình huống, kiểm tra từng tình huống có thể cách thực thi truy vấn có thể được thực thi sẽ mất quá nhiều Lượng thời gian và không gian bộ nhớ. Đặc biệt, điều này xảy ra Khi thực hiện các truy vấn liên quan đến số lượng lớn tham gia hoạt động. Để xác định hợp lý (không tối ưu) tỷ lệ kèo bóng đá trực tuyến hôm nay truy vấn trong một khoảng thời gian hợp lý,PostgreSQLSử dụng ATrình tỷ lệ kèo bóng đá trực tuyến hôm nay truy vấn di truyền.
Sau khi đường dẫn rẻ nhất được xác định, ACây tỷ lệ kèo bóng đá trực tuyến hôm nayđược xây dựng để chuyển cho người thực thi. Cái này đại diện cho tỷ lệ kèo bóng đá trực tuyến hôm nay thực thi mong muốn một cách chi tiết đủ cho người thực thi để chạy nó.
Người lập tỷ lệ kèo bóng đá trực tuyến hôm nay hóa quyết định kế hoạch nào được tạo dựa trên các loại chỉ mục được xác định trên Quan hệ xuất hiện trong một truy vấn. Luôn có khả năng thực hiện quét tuần tự trên một mối quan hệ, vì vậy một kế hoạch sử dụng Chỉ các lần quét tuần tự luôn được tạo ra. Giả sử một chỉ mục là được xác định trên một mối quan hệ (ví dụ: chỉ mục B-cây) và truy vấn chứa hạn chếMối quan hệ.Attribution Hằng số opr. Nếu nhưMối quan hệ.Attributionxảy ra để phù hợp với khóa của Chỉ mục B-Tree vàOPRlà một trong những người vận hành được liệt kê trong chỉ mụctoán tử lớp học, một tỷ lệ kèo bóng đá trực tuyến hôm nay khác được tạo bằng chỉ mục B-cây để quét mối quan hệ. Nếu có các chỉ mục tiếp theo có mặt và Các hạn chế trong truy vấn xảy ra để khớp với khóa của một chỉ mục tỷ lệ kèo bóng đá trực tuyến hôm nay tiếp theo sẽ được xem xét.
Sau tất cả các kế hoạch khả thi đã được tìm thấy để quét đơn Quan hệ, kế hoạch tham gia quan hệ được tạo ra. Các Người lập tỷ lệ kèo bóng đá trực tuyến hôm nay hóa ưu tiên xem xét tham gia giữa bất kỳ Hai mối quan hệ tồn tại một mệnh đề tham gia tương ứng trongWHERETrình độ chuyên môn (tức là cho mà một hạn chế nhưỞ đâu rel1.attr1 = rel2.ATTR2tồn tại). Tham gia các cặp không có tham gia mệnh đề chỉ được coi là khi không có lựa chọn nào khác, rằng là, một mối quan hệ cụ thể không có sẵn các điều khoản tham gia quan hệ khác. Tất cả các kế hoạch có thể được tạo cho mỗi lần tham gia Cặp được xem xét bởi người lập tỷ lệ kèo bóng đá trực tuyến hôm nay hóa. Ba có thể Tham gia các chiến lược là:
Vòng lặp lồng nhau tham gia: Quyền quan hệ được quét một lần cho mỗi hàng được tìm thấy ở bên trái mối quan hệ. Chiến lược này dễ thực hiện nhưng có thể rất tốn thời gian. (Tuy nhiên, nếu mối quan hệ đúng có thể Được quét bằng quét chỉ mục, đây có thể là một chiến lược tốt. Nó có thể sử dụng các giá trị từ hàng hiện tại của bên trái quan hệ như các phím cho việc quét chỉ mục của bên phải.)
Hợp nhất sắp xếp tham gia: mỗi mối quan hệ được sắp xếp trên các thuộc tính tham gia trước khi tham gia bắt đầu. Sau đó, hai mối quan hệ được hợp nhất cùng nhau tham gia tài khoản mà cả hai quan hệ đều được đặt hàng trên tham gia thuộc tính. Loại tham gia này hấp dẫn hơn vì Mỗi quan hệ chỉ phải được quét một lần.
băm tham gia: Mối quan hệ đúng đầu tiên được quét và tải vào bảng băm, sử dụng Tham gia các thuộc tính dưới dạng khóa băm. Tiếp theo mối quan hệ bên trái là được quét và các giá trị thích hợp của mỗi hàng được tìm thấy được sử dụng như các phím băm để xác định vị trí các hàng phù hợp trong bàn.
Cây tỷ lệ kèo bóng đá trực tuyến hôm nay hoàn thành bao gồm quét tuần tự hoặc chỉ mục của các mối quan hệ cơ sở, cộng với vòng lặp, hợp nhất hoặc băm tham gia các nút khi cần, cộng với bất kỳ bước phụ trợ nào cần thiết, chẳng hạn như sắp xếp Các nút hoặc các nút tính toán tổng hợp. Hầu hết trong số này Các loại nút tỷ lệ kèo bóng đá trực tuyến hôm nay có khả năng bổ sung để làmLựa chọn(loại bỏ các hàng không đáp ứng điều kiện boolean được chỉ định) vàDự đoán(tính toán của một cột dẫn xuất Dựa trên các giá trị cột đã cho, nghĩa là đánh giá vô hướng biểu thức khi cần thiết). Một trong những trách nhiệm của Người lập tỷ lệ kèo bóng đá trực tuyến hôm nay phải đính kèm các điều kiện lựa chọn từWHEREmệnh đề và tính toán đầu ra cần thiết Biểu thức đến các nút thích hợp nhất của cây tỷ lệ kèo bóng đá trực tuyến hôm nay.