Bird
Raised Fist0
HLDsystem_design~5 mins

Cross-shard queries in HLD - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a shard in a distributed database system?
A shard is a horizontal partition of data in a database. Each shard holds a subset of the total data, allowing the system to scale by distributing data across multiple servers.
Click to reveal answer
intermediate
Why do cross-shard queries pose challenges in distributed systems?
Because data is split across multiple shards, querying data that spans shards requires coordination between shards, which can increase latency, complexity, and risk of inconsistent results.
Click to reveal answer
intermediate
Name two common strategies to handle cross-shard queries.
1. Scatter-gather: Query all relevant shards and combine results. 2. Global indexes: Maintain an index that points to data across shards to quickly locate data without querying all shards.
Click to reveal answer
beginner
What is the scatter-gather approach in cross-shard queries?
It is a method where the query is sent to all shards that might contain relevant data. Each shard processes the query locally and returns results. The system then merges these results to form the final answer.
Click to reveal answer
intermediate
How can global indexes improve cross-shard query performance?
Global indexes provide a centralized way to find which shard holds the data needed. This reduces the need to query all shards, lowering latency and resource use.
Click to reveal answer
What is the main reason cross-shard queries are slower than single-shard queries?
AThey use outdated database engines
BThey require coordination across multiple shards
CThey only query one shard
DThey do not use indexes
Which approach involves querying all shards and combining results?
ASharding
BGlobal index lookup
CCaching
DScatter-gather
What is a drawback of maintaining global indexes for cross-shard queries?
AThey prevent data partitioning
BThey increase query latency
CThey require extra storage and maintenance
DThey eliminate scalability
Which of the following is NOT a typical challenge of cross-shard queries?
ASimplified query logic
BData inconsistency risks
CIncreased latency
DHigher resource consumption
What does sharding primarily help with in databases?
AScaling by distributing data
BIncreasing data redundancy
CReducing data backups
DImproving security
Explain what cross-shard queries are and why they are challenging in distributed databases.
Think about how data is split and how queries must gather data from multiple places.
You got /4 concepts.
    Describe two strategies to handle cross-shard queries and their trade-offs.
    Consider how queries find data and how results are combined.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of cross-shard queries in a distributed database system?
      easy
      A. To encrypt data within a shard
      B. To backup data from one shard to another
      C. To split a large shard into smaller shards
      D. To retrieve data from multiple shards to answer a single complex request

      Solution

      1. Step 1: Understand what shards are

        Shards are parts of a database split to store data separately for scalability.
      2. Step 2: Identify the role of cross-shard queries

        Cross-shard queries combine data from multiple shards to answer complex requests that need data from more than one shard.
      3. Final Answer:

        To retrieve data from multiple shards to answer a single complex request -> Option D
      4. Quick Check:

        Cross-shard queries = combine data from shards [OK]
      Hint: Cross-shard queries combine data from many shards [OK]
      Common Mistakes:
      • Confusing cross-shard queries with data backup
      • Thinking cross-shard queries split shards
      • Assuming cross-shard queries encrypt data
      2. Which component is responsible for splitting and merging queries in cross-shard query processing?
      easy
      A. Coordinator
      B. Shard manager
      C. Cache server
      D. Load balancer

      Solution

      1. Step 1: Identify query processing roles

        The coordinator handles query distribution and result merging across shards.
      2. Step 2: Match roles to components

        Shard manager manages shards but does not split/merge queries; cache server stores data temporarily; load balancer distributes traffic but not queries.
      3. Final Answer:

        Coordinator -> Option A
      4. Quick Check:

        Coordinator splits and merges queries [OK]
      Hint: Coordinator splits and merges cross-shard queries [OK]
      Common Mistakes:
      • Confusing shard manager with coordinator
      • Thinking cache server merges queries
      • Assuming load balancer handles query splitting
      3. Consider a system with 3 shards. A cross-shard query is sent to all shards in parallel. If each shard takes 100ms, 120ms, and 80ms respectively to respond, what is the total time to get the combined result?
      medium
      A. 300ms
      B. 80ms
      C. 120ms
      D. 100ms

      Solution

      1. Step 1: Understand parallel query execution

        Queries run in parallel, so total time is the longest shard response time.
      2. Step 2: Identify the longest response time

        Shard times are 100ms, 120ms, and 80ms. The longest is 120ms.
      3. Final Answer:

        120ms -> Option C
      4. Quick Check:

        Parallel time = max shard time = 120ms [OK]
      Hint: Total time = longest shard response in parallel [OK]
      Common Mistakes:
      • Adding all shard times instead of taking max
      • Choosing shortest shard time
      • Confusing sequential with parallel execution
      4. A cross-shard query coordinator is returning incomplete results. Which of the following is the most likely cause?
      medium
      A. Coordinator failed to merge all shard responses
      B. Shard keys are not evenly distributed
      C. Cache server is overloaded
      D. Load balancer is routing traffic incorrectly

      Solution

      1. Step 1: Analyze incomplete results cause

        Incomplete results usually mean some shard data was not included in the final output.
      2. Step 2: Identify coordinator role in merging

        The coordinator merges shard responses; failure here causes missing data.
      3. Final Answer:

        Coordinator failed to merge all shard responses -> Option A
      4. Quick Check:

        Incomplete results = merge failure [OK]
      Hint: Incomplete results often mean merge failure by coordinator [OK]
      Common Mistakes:
      • Blaming shard key distribution for missing data
      • Assuming cache overload causes missing data
      • Thinking load balancer affects query merging
      5. You want to reduce latency of cross-shard queries in a large distributed system. Which combination of strategies is best?
      hard
      A. Run queries sequentially on each shard and use a load balancer to distribute traffic
      B. Use a coordinator to parallelize queries and implement caching of frequent results
      C. Increase shard size and avoid caching to reduce complexity
      D. Remove the coordinator and let clients query shards directly

      Solution

      1. Step 1: Identify strategies to reduce latency

        Parallel query execution via coordinator reduces wait time; caching avoids repeated work.
      2. Step 2: Evaluate options

        Use a coordinator to parallelize queries and implement caching of frequent results uses both parallelism and caching, best for latency. Others increase complexity or remove coordination, causing delays.
      3. Final Answer:

        Use a coordinator to parallelize queries and implement caching of frequent results -> Option B
      4. Quick Check:

        Parallel + caching = lower latency [OK]
      Hint: Parallel queries plus caching reduce latency best [OK]
      Common Mistakes:
      • Thinking bigger shards reduce latency
      • Running queries sequentially increases latency
      • Removing coordinator causes uncoordinated delays
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard