Design a Knowledge Graph Construction and Query System — System Design Interview Practice
Design a system that automatically constructs knowledge graphs from unstructured data, performs entity resolution, supports graph-based reasoning, and answers complex queries over the graph. Work through the requirements, architecture trade-offs, and an interactive design review.
Requirements and concepts to consider
- Extract entities and relations from textRequirement
- Perform entity resolution and deduplicationRequirement
- Build and update graph schema dynamicallyRequirement
- Support graph-based queries and traversalsRequirement
- Implement graph embeddings for link predictionRequirement
- Visualize graph relationshipsRequirement
- Handle temporal and versioned factsRequirement
- Integrate with LLMs for natural language queryingRequirement
- mlConcept to explore
- knowledge graphsConcept to explore
- nlpConcept to explore
- graph databasesConcept to explore
- entity resolutionConcept to explore
- reasoningConcept to explore