Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1

64.3. Quét chỉ tỷ lệ kèo bóng đá#

9783_9925Khóa tỷ lệ kèo bóng đá. Phương thức truy cập làkhôngLiên quan đến việc thực sự tìm nạp tỷ lệ kèo bóng đá bộ dữ

Khóa tỷ lệ kèo bóng đá là biểu diễn bên trong củaWHEREmệnh đề của biểu mẫuindex_key Nhà điều hành hằng số, trong đó khóa chỉ tỷ lệ kèo bóng đá là một trong các cột của chỉ tỷ lệ kèo bóng đá và toán tử là một trong những thành viên của họ toán tử liên quan đến cột chỉ tỷ lệ kèo bóng đá đó. Quét chỉ tỷ lệ kèo bóng đá không có khóa quét hoặc nhiều hơn, được và được hoàn toàn - các bộ dữ liệu được trả về dự kiến ​​sẽ đáp ứng tất cả các điều kiện được chỉ định.

Phương thức truy cập có thể báo cáo rằng chỉ tỷ lệ kèo bóng đá làMấthoặc yêu cầu kiểm tra lại, cho một truy vấn cụ thể. Điều này ngụ ý rằng việc quét chỉ tỷ lệ kèo bóng đá sẽ trả về tất cả các tỷ lệ kèo bóng đá nhập vượt qua khóa quét, cộng với các tỷ lệ kèo bóng đá có thể không. Sau đó, máy móc quét chỉ tỷ lệ kèo bóng đá của hệ thống lõi sẽ áp dụng lại các điều kiện chỉ tỷ lệ kèo bóng đá cho bộ phận heap để xác minh xem nó có thực sự nên được chọn hay không. Nếu tùy chọn kiểm tra lại không được chỉ định, quét chỉ tỷ lệ kèo bóng đá phải trả về chính xác tập hợp các tỷ lệ kèo bóng đá khớp.

Lưu ý rằng nó hoàn toàn tùy thuộc vào phương thức truy cập để đảm bảo rằng nó tìm thấy chính xác tất cả và chỉ các tỷ lệ kèo bóng đá nhập vượt qua tất cả các khóa quét đã cho. Ngoài ra, hệ thống cốt lõi sẽ chỉ cần xử lý tất cảWHERE11507_11676Trong đó x 4 và x 14WHERExlà cột được lập chỉ tỷ lệ kèo bóng đá B-cây, nó được để lại cho B-TreeAmrescan11860_11984Amrescansẽ phụ thuộc vào mức độ mà phương thức truy cập chỉ tỷ lệ kèo bóng đá cần giảm các phím quét thành Achuẩn hóaMẫu.

Một số phương thức truy cập trả về các tỷ lệ kèo bóng đá nhập chỉ tỷ lệ kèo bóng đá theo thứ tự được xác định rõ, một số khác thì không. Thực tế có hai cách khác nhau mà phương thức truy cập có thể hỗ trợ đầu ra được sắp xếp:

  • Các phương thức truy cập luôn trả về các tỷ lệ kèo bóng đá theo thứ tự tự nhiên của dữ liệu của chúng (như Btree) sẽ đặtAmcanorderđể đúng. Hiện tại, tỷ lệ kèo bóng đá phương thức truy cập như vậy phải sử dụng tỷ lệ kèo bóng đá số chiến lược tương thích BTREE cho tỷ lệ kèo bóng đá toán tử bình đẳng và đặt hàng của chúng.

  • tỷ lệ kèo bóng đá phương thức truy cập hỗ trợ tỷ lệ kèo bóng đá toán tử đặt hàng nên đặtAmcanorderbyopĐúng. Điều này chỉ ra rằng chỉ tỷ lệ kèo bóng đá có khả năng trả lại các tỷ lệ kèo bóng đá theo thứ tự thỏa mãnĐặt hàng bởi index_key Nhà điều hành hằng số. tỷ lệ kèo bóng đá các công cụ sửa đổi của biểu mẫu đó có thể được chuyển choAmrescanNhư đã mô tả trước đây.

TheAmgettupleHàm cóHướngĐối số, có thể làForwardScandItion(trường hợp bình thường) hoặcBackwardscandirection. Nếu cuộc gọi đầu tiên sauAmrescanChỉ địnhBackwardscandirection13747_13875Amgettuplephải trả lại bộ tuple phù hợp cuối cùng trong chỉ tỷ lệ kèo bóng đá, thay vì cái đầu tiên như bình thường. (Điều này sẽ chỉ xảy ra cho các phương thức truy cập đặtAmcanorderĐúng.) Sau cuộc gọi đầu tiên,Amgettuplephải được chuẩn bị để tiến hành quét theo một trong hai hướng từ tỷ lệ kèo bóng đá nhập được trả về gần đây nhất. (Nhưng nếuAmcanbackwardlà sai, tất cả tỷ lệ kèo bóng đá cuộc gọi tiếp theo sẽ có cùng hướng với thông tin đầu tiên.)

14418_14475Đánh dấuMột vị trí trong tỷ lệ kèo bóng đá và sau đó trở lại vị trí được đánh dấu. Cùng một vị trí có thể được khôi phục nhiều lần. Tuy nhiên, chỉ cần một vị trí cần được ghi nhớ mỗi lần tỷ lệ kèo bóng đá; một mớiAmmarkposCuộc gọi ghi đè vị trí được đánh dấu trước đó. Phương thức truy cập không hỗ trợ tỷ lệ kèo bóng đá theo thứ tự không cần cung cấpAmmarkposAmrestrposChức năng trongindexAmRoutine; Thay vào đó, đặt những con trỏ đó thành NULL.

15064_15727

15735_15859Postgresql: Tài liệu: 16: 11, trong đó chỉ tỷ lệ kèo bóng đá trả về dữ liệu thực tế không chỉ là tid của bộ tuple. Điều này sẽ chỉ tránh I/O nếu bản đồ hiển thị cho thấy rằng TID nằm trên một trang hoàn toàn có thể nhìn thấy; Nếu không thì tuple heap phải được truy cập bằng mọi cách để kiểm tra khả năng hiển thị của MVCC. Nhưng đó không phải là mối quan tâm của phương thức truy cập.

Thay vì sử dụngAmgettuple, quét chỉ tỷ lệ kèo bóng đá có thể được thực hiện bằngAmgetbitmapĐể tìm nạp tất cả tỷ lệ kèo bóng đá bộ dữ liệu trong một cuộc gọi. Điều này có thể hiệu quả hơn đáng kể so vớiAmgettupleBởi vì nó cho phép tránh tỷ lệ kèo bóng đá chu kỳ khóa/mở khóa trong phương thức truy cập. Về nguyên tắcAmgetbitmap16661_16705AmgettupleCuộc gọi, nhưng chúng tôi áp đặt một số hạn chế để đơn giản hóa tỷ lệ kèo bóng đá vấn đề. Đầu tiên,AmgetbitmapTrả về tất cả các bộ dữ liệu cùng một lúc và đánh dấu hoặc khôi phục các vị trí tỷ lệ kèo bóng đá không được hỗ trợ. Thứ hai, các bộ dữAmgetbitmapkhông lấy AHướngĐối số. .Amgetbitmap, vì không có cách nào để trả về nội dung của bộ dữ liệu chỉ tỷ lệ kèo bóng đá. Cuối cùng,AmgetbitmapKhông đảm bảo bất kỳ khóa nào của tỷ lệ kèo bóng đá bộ dữ liệu được trả lại, với tỷ lệ kèo bóng đá hàm ý được đánh vần trongPhần 64.4.

Lưu ý rằng nó được phép cho một phương thức truy cập chỉ thực hiệnAmgetbitmapvà khôngAmgettuplehoặc ngược lại, nếu việc triển khai nội bộ của nó không phù hợp với một API hoặc API khác.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không phù hợp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.