Có bốn loại kèo bóng đá c1 trong chỉ mục băm: kèo bóng đá c1 meta (kèo bóng đá c1 Zero), chứa thông tin kiểm soát được phân bổ tĩnh; kèo bóng đá c1 xô chính; tràn kèo bóng đá c1; và các kèo bóng đá c1 bitmap, theo dõi các kèo bóng đá c1 tràn đã được giải phóng và có sẵn để sử dụng lại. Để giải quyết các mục đích, các kèo bóng đá c1 bitmap được coi là một tập hợp con của các kèo bóng đá c1 tràn.
Cả hai đều quét chỉ mục và chèn các bộ dữ liệu đều yêu cầu định vị xô trong đó phải đặt một tuple nhất định. Để làm điều này, chúng ta cần số lượng xô, Highmask và Lowmask từ Metapage; Tuy nhiên, điều không mong muốn vì lý do hiệu suất phải khóa và ghim metapage cho mọi hoạt động như vậy. Thay vào đó, chúng tôi giữ lại một bản sao được lưu trong bộ nhớ cache của Metapage trong mục nhập Relcache của mỗi phụ trợ. Điều này sẽ tạo ra ánh xạ xô chính xác miễn là thùng đích không được chia kể từ lần làm mới bộ đệm cuối cùng.
kèo bóng đá c1 xô chính và các kèo bóng đá c1 tràn được phân bổ độc lập vì bất kỳ chỉ số nào có thể cần nhiều hoặc ít hơn các kèo bóng đá c1 tràn hơn so với số lượng thùng của nó. Mã băm sử dụng một tập hợp các quy tắc địa chỉ thú vị để hỗ trợ số lượng kèo bóng đá c1 tràn biến đổi trong khi không phải di chuyển các kèo bóng đá c1 xô chính xung quanh sau khi chúng được tạo.
Mỗi hàng trong bảng được lập chỉ mục được biểu thị bằng một bộ chỉ số duy nhất trong chỉ mục băm. Các tổng chỉ mục băm được lưu trữ trong các kèo bóng đá c1 xô và nếu chúng tồn tại, các kèo bóng đá c1 tràn. Chúng tôi tăng tốc các tìm kiếm bằng cách giữ các mục nhập chỉ mục trong bất kỳ một kèo bóng đá c1 chỉ mục nào được sắp xếp theo mã băm, do đó cho phép tìm kiếm nhị phân trong một kèo bóng đá c1 chỉ mục. Tuy nhiên, lưu ý rằng có * không * giả định về thứ tự tương đối của mã băm trên các kèo bóng đá c1 chỉ mục khác nhau của một thùng.
Thuật toán phân tách xô để mở rộng chỉ số băm quá phức tạp để được đề cập ở đây, mặc dù được mô tả chi tiết hơn trongsrc/phụ trợ/truy cập/băm/readme
. Thuật toán phân chia được sự cố an toàn và có thể được khởi động lại nếu không hoàn thành thành công.