Chỉ mục bitmap là một loại kỹ thuật lập chỉ mục cơ sở dữ liệu chuyên biệt, đặc biệt hiệu quả để truy cập và truy vấn dữ liệu từ các tập dữ liệu lớn có thuộc tính cardinality thấp, đề cập đến các thuộc tính có một số lượng nhỏ giá trị riêng biệt so với tổng số bản ghi trong tập dữ liệu. Ban đầu được thiết kế để đẩy nhanh các hoạt động truy vấn phức tạp trong khối lượng công việc đọc nhiều như kho dữ liệu, hệ thống hỗ trợ quyết định và báo cáo đặc biệt, các chỉ mục bitmap hiện có sẵn trong các hệ thống quản lý cơ sở dữ liệu quan hệ và NoSQL khác nhau.
Ở cấp độ cơ bản nhất, một chỉ mục bitmap bao gồm một tập hợp các bitmap hoặc vectơ bitmap biểu thị các giá trị riêng biệt của một thuộc tính được chỉ định trong bảng cơ sở dữ liệu. Các vectơ chỉ mục bitmap này được hình thành bằng cách mã hóa sự hiện diện hoặc vắng mặt của các giá trị thuộc tính tương ứng trong mỗi bộ hoặc hàng ở định dạng nhị phân, sao cho mỗi vị trí trong vectơ bitmap tương ứng với một hàng cụ thể trong bảng. Trong sơ đồ này, bit '1' trong chỉ mục biểu thị sự hiện diện của giá trị tương ứng trong hàng được liên kết với vị trí của bit trong vectơ, trong khi '0' biểu thị sự vắng mặt của nó.
Ưu điểm chính của lập chỉ mục bitmap nằm ở hiệu quả không gian và tốc độ tính toán khi xử lý các truy vấn chuyên sâu về thuộc tính, chẳng hạn như toán tử so sánh hoặc kết hợp logic của một số giá trị thuộc tính. Các chỉ mục bitmap nén các vectơ nhị phân thưa thớt thông qua các kỹ thuật mã hóa và nén khác nhau, giảm dung lượng lưu trữ cần thiết để lập chỉ mục và tăng tốc các hoạt động của cơ sở dữ liệu vì cần đọc hoặc giữ ít dữ liệu hơn trong bộ nhớ trong khi thực hiện các truy vấn. Tiết kiệm không gian đạt được với các chỉ mục bitmap đặc biệt quan trọng đối với các cột có số lượng thẻ thấp, vì càng ít giá trị thuộc tính khác biệt dẫn đến các vectơ bitmap ngắn hơn với các số '0' hoặc '1' liên tiếp lớn hơn, có thể tuân theo các thuật toán nén hiệu quả như thời lượng chạy mã hóa (RLE).
Một lợi ích quan trọng khác của chỉ mục bitmap là khả năng thao tác cấu trúc chỉ mục trực tiếp bằng cách sử dụng các phép toán logic theo bit, chẳng hạn như AND, OR hoặc XOR, để tính toán kết quả của các vị từ truy vấn phức tạp mà không cần truy cập dữ liệu cơ bản. Điều này cho phép thực thi hiệu quả các truy vấn đa thuộc tính và đặc biệt, đồng thời có thể cải thiện đáng kể hiệu suất của các truy vấn chứa nhiều vị từ hoặc tổ hợp các vị từ. Ngoài ra, các chỉ mục bitmap có thể được kết hợp hoặc hợp nhất một cách hiệu quả bằng cách sử dụng nhiều cấu trúc chỉ mục, cho phép xử lý song song các hoạt động truy vấn và nâng cao hơn nữa hiệu suất truy vấn.
Tuy nhiên, một số sự đánh đổi nhất định với các chỉ mục bitmap có thể hạn chế tính phù hợp của chúng đối với các trường hợp sử dụng cụ thể. Một hạn chế như vậy là tính kém hiệu quả tương đối của chúng đối với việc xử lý các thuộc tính có số lượng thẻ cao, do sự gia tăng số lượng các giá trị thuộc tính riêng biệt ảnh hưởng trực tiếp đến các yêu cầu về không gian của chỉ mục và chi phí tính toán. Do đó, các chỉ mục bitmap có thể không hiệu quả đối với việc lập chỉ mục các cột khóa chính hoặc khóa chính có nhiều giá trị riêng biệt.
Một thách thức khác là khả năng suy giảm hiệu năng và chi phí duy trì chỉ mục trong các khối lượng công việc ghi nhiều hoặc các tình huống liên quan đến việc sửa đổi dữ liệu thường xuyên đối với các cột được lập chỉ mục. Điều này là do bất kỳ cập nhật, chèn hoặc xóa bản ghi nào trong bảng đều cần cập nhật các vectơ chỉ mục bitmap và biểu diễn nén của chúng, điều này có thể gây tốn kém về mặt tính toán và gây ra độ trễ trong quá trình xử lý giao dịch. Do đó, các chỉ mục bitmap thường được ưu tiên trong các môi trường có khối lượng công việc chủ yếu tập trung vào đọc, trong đó lợi ích của chỉ mục bitmap đối với hiệu suất truy vấn lớn hơn chi phí bảo trì liên quan.
Trong ngữ cảnh của nền tảng no-code AppMaster , nền tảng hỗ trợ phát triển và triển khai ứng dụng nhanh chóng với sự hỗ trợ cho các ứng dụng phụ trợ, web và di động, việc hiểu các trường hợp sử dụng và lợi ích của các kỹ thuật lập chỉ mục khác nhau như chỉ mục bitmap trở nên quan trọng để tối ưu hóa hiệu suất, khả năng mở rộng và hiệu quả lưu trữ của các hệ thống cơ sở dữ liệu bên dưới. Bằng cách triển khai các chiến lược lập chỉ mục cơ sở dữ liệu hiệu quả và tận dụng sức mạnh của các chỉ mục bitmap khi áp dụng, khách hàng của AppMaster có thể cải thiện đáng kể thời gian phản hồi truy vấn và hiệu quả truy cập dữ liệu trong lớp dữ liệu của ứng dụng, mang lại hiệu suất nâng cao và sử dụng tài nguyên tối ưu cho các giải pháp phần mềm của họ.