Phiên bản được hỗ trợ:16 / 15 / 14 / 13
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2
Tài kèo bóng đá hôm nay và ngày mai này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một kèo bóng đá hôm nay và ngày mai các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

kèo bóng đá hôm nay và ngày mai57.4. Triển khai

Phần này bao gồm các chi tiết triển khai và các thủ thuật khác hữu ích cho người thực hiệnsp-gistCác lớp toán tử để biết.

57.4.1. Giới hạn sp-gist

Bộ dữ kèo bóng đá hôm nay và ngày mai lá riêng lẻ và bộ dữ kèo bóng đá hôm nay và ngày mai bên trong phải phù hợp với một trang chỉ mục duy nhất (8kb theo mặc định). Do đó, khi lập chỉ mục các giá trị của các loại dữ kèo bóng đá hôm nay và ngày mai có độ dài thay đổi, các giá trị dài chỉ có thể được hỗ trợ bằng các phương thức như cây radix, trong đó mỗi cấp độ của cây bao gồm một tiền tố đủ ngắn để phù hợp với một trang và mức lá cuối cùng bao gồm một hậu tố cũng đủ ngắn để phù hợp với trang.LongValuesokchỉ đúng nếu nó được chuẩn bị để sắp xếp điều này xảy ra. Nếu không,sp-gistCore sẽ từ chối mọi yêu cầu để lập chỉ mục một giá trị quá lớn để phù hợp với trang chỉ mục.

Tương tự như vậy, trách nhiệm của lớp vận hành là các bộ dữ kèo bóng đá hôm nay và ngày mai bên trong không phát triển quá lớn để phù hợp với trang chỉ mục; Điều này giới hạn số lượng nút con có thể được sử dụng trong một bộ bên trong, cũng như kích thước tối đa của giá trị tiền tố.

Một giới hạn khác là khi nút của một tuple bên trong chỉ vào một tập hợp các bộ dữ kèo bóng đá hôm nay và ngày mai lá, tất cả các bộ dữ kèo bóng đá hôm nay và ngày mai đó phải nằm trong cùng một trang chỉ mục. .phảiChia tập hợp các giá trị lá thành nhiều hơn một nhóm kèo bóng đá hôm nay và ngày mai. Nếu lớp vận hànhPickSplitHàm không làm điều đó,sp-gistKhu nghỉ dưỡng cốt lõi để các biện pháp phi thường được mô tả kèo bóng đá hôm nay và ngày maiPhần 57.4.3.

57.4.2. Sp-gist không có nhãn kèo bóng đá hôm nay và ngày mai

Một số thuật toán cây sử dụng một tập hợp các kèo bóng đá hôm nay và ngày mai cố định cho mỗi tuple bên trong; Ví dụ, trong một cây bốn, luôn có chính xác bốn kèo bóng đá hôm nay và ngày mai tương ứng với bốn góc phần tư xung quanh điểm trung tâm của Tuple bên trong.PickSplitHàm có thể trả về null choNodelabelsMảng. Điều này sẽ lần lượt dẫn đếnNodelabelsĐang null kèo bóng đá hôm nay và ngày mai các cuộc gọi tiếp theo đếnChọnInside_consistent. Về nguyên tắc, các nhãn nút có thể được sử dụng cho một số bộ dữ kèo bóng đá hôm nay và ngày mai bên trong và bị bỏ qua cho những người khác trong cùng một chỉ mục.

Khi làm việc với một tuple bên trong có các kèo bóng đá hôm nay và ngày mai không nhãn, đó là một lỗi choChọnđể trả lạispgaddnode, vì tập hợp các kèo bóng đá hôm nay và ngày mai được cho là được sửa trong các trường hợp như vậy. Ngoài ra, không có điều khoản nào để tạo một kèo bóng đá hôm nay và ngày mai không nhãn trongspgsplittupleHành động, vì người ta dự kiến ​​sẽ là mộtspgaddnodehành động cũng sẽ cần thiết.

57.4.3."Tất cả-Same"Bộ dữ kèo bóng đá hôm nay và ngày mai bên trong

Thesp-gistCore có thể ghi đè kết quả của lớp vận hànhPickSplitchức năng khiPickSplitKhông chia các giá trị lá được cung cấp thành ít nhất hai loại kèo bóng đá hôm nay và ngày mai. Khi điều này xảy ra, bộ tuple bên trong mới được tạo với nhiều kèo bóng đá hôm nay và ngày mai có cùng một nhãn (nếu có)PickSplitĐã cho một kèo bóng đá hôm nay và ngày mai mà nó đã sử dụng và các giá trị lá được chia ngẫu nhiên giữa các kèo bóng đá hôm nay và ngày mai tương đương này. TheAllthesameCờ được đặt trên tuple bên kèo bóng đá hôm nay và ngày mai để cảnh báoChọnInside_consistentCác chức năng mà bộ tuple không có bộ kèo bóng đá hôm nay và ngày mai mà họ có thể mong đợi.

Khi xử lýAllthesametuple, aChọnkết quả củaSPGMatchNodeđược giải thích có nghĩa là giá trị mới có thể được gán cho bất kỳ kèo bóng đá hôm nay và ngày mai tương đương nào; Mã cốt lõi sẽ bỏ qua được cung cấpNodenGiá trị và hạ xuống một trong các kèo bóng đá hôm nay và ngày mai một cách ngẫu nhiên (để giữ cho cây cân bằng). Nó là một lỗi choChọnđể trả lạispgaddnode, vì điều đó sẽ làm cho các kèo bóng đá hôm nay và ngày mai không tương đương; ThespgsplittupleHành động phải được sử dụng nếu giá trị được chèn không khớp với các kèo bóng đá hôm nay và ngày mai hiện có.

Khi xử lýAllthesametuple, TheInside_consistentHàm sẽ trả về tất cả hoặc không có kèo bóng đá hôm nay và ngày mai nào làm mục tiêu để tiếp tục tìm kiếm chỉ mục, vì tất cả chúng đều tương đương. Điều này có thể hoặc không yêu cầu bất kỳ mã trường hợp đặc biệt nào, tùy thuộc vào số lượngInside_consistentHàm thường giả sử về ý nghĩa của các kèo bóng đá hôm nay và ngày mai.