When is a hash index better than a B-tree index?
A hash index is faster for exact-match lookups (WHERE id = 5) because it computes a hash and jumps directly to the bucket — no tree traversal. But it can't serve range queries (WHERE age > 30) or sorted output at all, since hashing destroys ordering. B-trees are slightly slower for exact matches but handle both exact matches and ranges, which is why they're the default in most relational databases.
Answered in
Database Indexing Explained: Which Index Type Actually Fits Your QueryB-tree, hash, composite, and covering indexes each solve a different query shape. Pick the wrong one and you pay index overhead without the speedup.
Read the full analysisOther questions this article answers
More system design & architecture questions
- What does CodeDeploy RESTART actually deploy?
- Does CodeDeploy RESTART work with ECS or Lambda?
- Does RESTART remove an application from load-balancer traffic while it restarts?
- Does Elastic Beanstalk's Active Directory join require a domain password?
- Can an Elastic Beanstalk environment be healthy if the domain join fails?
- Will enabling Active Directory replace running instances?
- What is different about AWS Lambda Web Functions?
- Does Lambda Web Functions automatically cost less than ordinary Lambda?
Every answer on Crashtech is written by the editor of the article it comes from — never auto-summarised. Browse all answers or the System Design & Architecture beat.