Khi tôi tạo chỉ mục cho bảng trong mysql, tôi thấy rằng chỉ mục index_type là loại BTREE
. Bây giờ mặc dù tôi hiểu về btree (s), tôi không im lặng hiểu cách nó lưu trữ chỉ mục và cách cơ sở dữ liệu tìm kiếm các bản ghi dựa trên điều này.cách lập chỉ mục B-tree hoạt động trong mysql
Ý tôi là, btree là tuyệt vời để cơ sở dữ liệu thực hiện đọc và ghi khối dữ liệu lớn, khi chúng tôi tạo chỉ mục cho loại cột Primary key
, điều tôi hiểu là nó tạo cây và chia tách giá trị cho gốc dựa trên loại giá trị của gốc.
Hiện tại, chỉ lưu trữ khóa chính ID
dưới cây hoặc toàn bộ dữ liệu được liên kết với khóa chính đó?
Sau khi tìm ID chính muốn, cơ sở dữ liệu trích xuất bản ghi như thế nào?
Cảm ơn bạn đã giải thích. Trong cơ sở dữ liệu của tôi, tôi có một số bảng với MyISAM và một số là InnoDB với các chỉ mục trên chúng. Liệu điều này có hiệu quả không khi các phép nối và truy vấn tôi viết đều là các kiểu khác nhau? – JPro
@JPro: Cơ sở dữ liệu xử lý các chi tiết lập chỉ mục cơ bản một cách tự động. Cú pháp 'JOIN' giống với các bảng' MyISAM' và 'InnoDB'. – Quassnoi
ý của tôi là gì, có quan trọng chút nào khi tạo ra tất cả các bảng với cùng một công cụ lưu trữ hay không? – JPro