data structures - Databases: More questions about (B-Tree) indexes -
i've been studying indexes , there questions pother me , think important.
if can or refer sources, please feel free it.
q1: b-tree indexes can favor fast access specific rows on table. considering oltp system, many accesses, both read , write, simultaneously, think can disadvantage having many b-tree indexes on system? why?
q2: why b-tree indexes not occupied (typically 75% occupied, if i'm not mistaken)?
q1: i've no administration experience large indexing systems in practice, typical multiprocessing environment drawbacks apply having multiple b-tree indexes on system -- cost of context switching, cache invalidation , flushing, poor io scheduling, , list goes up. on other hand, io inherently ought non-blocking maximal use of resources, , it's hard without sort of concurrency, if done in cooperative manner. (for example, people recommend event-based systems.) also, you're going need multiple index structures many practical applications, if you're looking @ oltp. biggest thing here io scheduling, access patterns, , data caching depending on said access patterns.
q2: because splitting , re-balancing nodes expensive. naive methodology speed "only split they're full." given this, there's 2 extremes -- node split , half full, or node full next time. 'average' between cases (50% , 100%) 75%. yes, it's bad logic mathematics perspective, exposes underlying reason why 75% figure appears.
Comments
Post a Comment