Weaviate’s Architecture from above
The above gives a 30,000 feet view of Weaviate’s architecture. On these pages you can learn more about the individual sections:
- Learn about Storage inside a shard
- How Weaviate stores data
- How Weaviate makes writes durable
- How an inverted index, a vector index and an object store interact with each other
- Ways to scale Weaviate horizontally
- Different motivations to scale
- Sharding vs. Replication
- Configuring a cluster
- Consistency
- How to plan resources
- The roles of CPU, Memory and GPUs
- How to size a cluster correctly
- Speeding up specific processes
- Preventing bottlenecks
- The module system
- How Weaviate can be extended through modules
- The various roles of modules (vectorizers, etc.)
- Creating your own modules or adapting existing modules to your needs
- Filtered Vector Search
- Combine vector search with filters
- Learn how combining an HNSW with an inverted index leads to high-recall, high-speed filtered queries
- User-facing interfaces
- Design philosophy behind user-facing APIs
- Role of the REST and GraphQL APIs
- Roadmap
- Learn about features currently under development
- What will Weaviate be like in the future from an architectural perspective?
More Resources
If you can’t find the answer to your question here, please look at the:
- Frequently Asked Questions. Or,
- Knowledge base of old issues. Or,
- For questions: Stackoverflow. Or,
- For issues: Github. Or,
- Ask your question in the Slack channel: Slack.