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

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -