Practice
Solution
Step 1: Understand HNSW index rebuild behavior
HNSW index rebuilds asynchronously; during rebuild, queries use the last consistent snapshot.Step 2: Analyze worker behavior at Step 4
The ANN Search Worker returns results from the previous stable index snapshot, so stale but consistent results are served.Final Answer:
Option A -> Option AQuick Check:
HNSW queries serve last snapshot during rebuild, avoiding blocking [check]
Solution
Step 1: Identify ingestion and feed update decoupling
Direct synchronous writes (A, D) block user requests and reduce availability under high load. Redis without persistence (C) risks data loss on failure.Step 2: Evaluate Kafka's role
Kafka buffers high write throughput, supports partitioning for scalability, and decouples ingestion from feed generation, ensuring durability and replayability.Final Answer:
Option B -> Option BQuick Check:
Kafka buffers high write load, enabling asynchronous feed updates [check]
Solution
Step 1: Understand GraphQL resolver behavior
GraphQL resolvers aggregate data from all sources before responding to the client.Step 2: Trace slow microservice impact at step 3
If one microservice is slow, the entire query waits, causing increased latency.Final Answer:
Option C -> Option CQuick Check:
GraphQL waits for all resolvers before responding [check]
Solution
Step 1: Understand TTL behavior in NoSQL key-value stores
TTL expiration means the key is deleted or inaccessible, so session data is invalid.Step 2: Trace Session Manager's response to expired TTL
Session Manager cannot extend TTL automatically; queuing for manual review is a fallback for expired sessions.Final Answer:
Option A -> Option AQuick Check:
Expired TTL -> session queued for review [check]
Solution
Step 1: Analyze memory and false positive trade-offs
A single global Bloom filter grows large and has higher false positive rates due to keyspace size; partitioning per shard reduces filter size and localizes false positives.Step 2: Evaluate alternatives
Counting Bloom filters allow deletions but consume more memory, which is costly at large scale; caching recent keys does not guarantee absence and can miss cold keys.Final Answer:
Option B -> Option BQuick Check:
Partitioned Bloom filters balance memory and false positives at scale [check]
