Optimize performance
Axiom is blazing fast. This page explains how you can further improve performance in Axiom.
Axiom is blazing fast. There are nevertheless steps you can take to make it even faster.
Use the guidelines below to optimize datasets and queries for best performance.
Optimize datasets
Axiom stores event data in a tuned format. As a result:
- The number of distinct values (cardinality) in your data has little impact on performance.
- The number of fields in a dataset (dimensionality) does impact performance.
- The volume of data collected impacts performance.
Scoping the number of fields in a dataset below a few thousand can help you achieve the best performance in Axiom.
Optimize queries
Axiom’s novel architecture results in remarkable performance. To optimize further, consider the following practices.
Optimize field-specific filters
Field-specific filters narrow your query results to events where a field has a given value. For example, the APL query where ["my-field"] == "axiom"
filters for events where the my-field
field takes the value axiom
.
Include field-specific filters near the beginning of your query for modest performance improvements.
Optimize search
operator and non-field-specific filters
Non-field-specific filters narrow your query results by searching across multiple datasets and fields for a given value. Examples of non-field-specific filters are the search
operator and equivalent expressions such as where * contains
or where * has
.
Using non-field-specific filters degrades performance significantly. For more information, see Use the search
operator efficiently.
Optimize string operators
Different string operators have different impact on performance. Optimizing string operators in your query can significantly improve the performance of your queries. For more information, see Use the string operators efficiently.