DirectQuery allows data to be queried directly from an external database without first loading it into ‘s in-memory datastore. In , DirectQuery can be used alongside the in-memory datastore or instead of it. Where historical data might have previously been loaded at the summary level to save memory, it can now be stored at trade level in an external database. A much smaller cache of the summary-level data can be kept in memory to maintain performance and reduce the need to query the external database.Documentation Index
Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt
Use this file to discover all available pages before exploring further.
Integration
For details on how to connect your instance to a remote Database, see the Getting Started with DirectQuery developer documentation.DirectQuery Data Access
With DirectQuery we will be able to query data from a database in . At query time, the data is aggregated on the external database and sent to for further calculations. At startup, will populate caches of summary data by querying the database for these aggregated values. This means that queries at the book and desk level will be as fast as the in-memory datastore and the only time the external database is used at query time is for trade-level queries. Read-only access to the external database is sufficient for . It does not write to the database.Deployment Options
It is possible to load all your data using DirectQuery. However, to take advantage of the features that are only available using in-memory data, we suggest a hybrid approach with the most recent COB dates loaded in memory and older/historical COB dates loaded using DirectQuery. The hybrid approach uses horizontal distribution:- Recent COB dates are loaded into an in-memory data node
- Historical COB dates are available in a DirectQuery data node
- A query node seamlessly combines the data
Supported Databases
- ClickHouse
- Databricks
- MSSQL
- Snowflake
- Others coming soon. See ‘s compatible Databases
DirectQuery In Action
Let’s see DirectQuery in action. For this we will load a single date of data, 2018-09-28, into memory with two pre-aggregated dates of historical summary data, 2018-19-27 and 2018-09-26. Drilling down to the Trade level gives us the following results:
