Vespa Use Cases

Vespa is a generic platform for Big Data Serving. Find sample use cases below for popular uses cases for Vespa. Also see: operational use cases performance use cases

E-commerce: shopping and product catalog

Find a sample application at E-commerce: shopping and product catalog.

Highlighted features

  • multiple document types
  • partial updates
  • custom handlers
  • custom document
  • processors
  • custom configuration
  • search using YQL
  • grouping
  • rank profiles
  • rank functions

Recommendations

Vespa is widely used as a recommendation engine, recommending personalized articles, ads matching user profile and history, video recommendations, people matching. Implementations vary from vector dot products to neural nets - both using tensors to represent models and data.

Read more in the blog recommendation tutorial.

Highlighted features

  • Machine-learned models
  • User profile lookup in Java plugin code

Social Media

In social media, content is often user generated. A used is hence related to the data elements, like author, owner and so on. This is a good use case for structured data and/or parent/child.

Example 1: A user writes a comment to an article. All comments from the same user have the same parent document. As some users are better writers than others, comments can be ranked based on an author score. Updating an author score is hence updating one document only.

Example 2: Users tag items. A document can have a multivalue field like array to struct to save such data as tag value/timestamp/author.

Highlighted features

  • No de-normalization needed - simplifies data updates (one write) and atomic update into all children
  • Search child documents based on properties from parent documents
  • Search parent documents only
  • Multi-value field types like arrays and maps
  • Struct field type