Hopp til innhold

Features:

All you need to build complete data-driven applications

Leveraging Vespa’s features to build complete applications in Vespa you can be sure they will perform at any scale.

  • Machine learned ranking

    Vespa can generate a large selection of ranking signals when a query is matching the various fields of a data item. Further signals can come from the query or directly from structured data fields. These signals can be combined into a rank score using any mathematical function over tensors. The functions can be written by hand or they can be machine-learned models using common formats such as ONNX or XGBoost. Any number of additional inferences can also be made over the data and returned with results.

    It is often useful to direct most of the inference cpu towards the best candidates, and Vespa provides this through providing a second ranking phase. Importantly, both the first and second phase executes locally where the data is stored; that is how Vespa lets you scale to any size without impacting quality or latency. A third ranking phase which happens after distributed results are matched is also supported.

    Vespa lets you define any number of different rank profiles selected by the query, to support different use cases, bucket tests, markets and similar. Inheritance, dedicated files per profile, and arbitrary function calling allows ranking to sustain the complexity required by mission critical enterprise or internet-scale applications.

  • Unbeatable performance

    Extreme performance is at core of everything we do at Vespa, that’s why we have our own core engine in C++ managing memory and implementing our core indexing and searching algorithms. While others can create implementations that perform a simple benchmark well, performance in real, complex and scaled production applications takes a broader outlook, including delivering stable performance over many classes of more complex queries, as well as over time while handling writes at a sustained rate.

    Is is in these real-world scenarios Vespa’s long history of delivering for some of the worlds largest use cases really sets us apart.

  • Infinite automated scalability

    Vespa is built from infinite scalability from the core up. This means that when a feature is implemented using Vespa’s primitives you can be confident that it will scale linearly with more data or traffic with no practical limitations. The functions in Vespa run distributed over clusters of nodes, and the sizes of the clusters can be changed at any time without impacting queries or writes—data distribution is entirely automatic and happens in the background.

    The content clusters that stores data and maintain indexes can be scaled in two dimensions – to more data by adding nodes horizontally, and to more traffic by adding groups of nodes. Further, with Vespa Cloud, you can let cluster sizes—and node resources—follow the shifting needs from imposed traffic and data sizes to minimize cost automatically.

  • Continous deployment and upgrades

    Developing real applications isn’t just about getting an initial release out the door but establishing practices for sustained innovation to deliver business value over time. To this end, the practice of continuous delivery has emerged as a best practice.

    With continuous delivery, application improvements are delivered on a fine-grained scale—usually many times a day. This shortens feedback loops which makes developers dramatically more efficient. Providing safe continuous deployment for stateful, highly-available systems is challenging, but Vespa Cloud does it!

    We also apply the same principle to Vespa itself. New versions of the platform are rolled out to all applications on Vespa Cloud automatically four times a week. This lets you leverage new developments in Vespa as soon as they are ready, but more importantly it makes your applications safe: The most common reason for security breaches is running outdated versions of software.

  • Fully managed with strong security

    Developers should spend their time creating great products, not dealing with infrastructure and integration, getting their changes to production, or working around system limits. With Vespa Cloud all operational concerns from procuring nodes to failover between global regions and handled for you automatically using established best practices, and if there should be a need for manual intervention our team is ready to act 24-7.

    But managed systems aren’t only about improved operational quality and more efficient operations, they are also a necessity to achieve strong security. Vespa Cloud bakes strong security into applications from the get-go, handling encryption of data at rest and in transit, securing internal and external communication paths using node and endpoint certificates, and keeping OS patches up to date automatically.

    Applications can run on Vespa Cloud on Vespa-managed AWS and Gcp accounts, but uniquely for Vespa, we also support deploying applications where the data plane—and data resides entirely in customer-owned dedicated accounts. This combines the operational advantages of managed systems with the security and compliance advantages of keeping data within organizational boundaries.