Table of documentation contents

Architecture

Weaviate’s Architecture from above

Weaviate module APIs overview

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 cluser correctly
    • Speed up specific processes
    • Prevent 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:

  1. Frequently Asked Questions. Or,
  2. Knowledge base of old issues. Or,
  3. For questions: Stackoverflow. Or,
  4. For issues: Github. Or,
  5. Ask your question in the Slack channel: Slack.
Tags
  • architecture