Document toolboxDocument toolbox

Kyvos Analytical Store

Kyvos now comes with an in-house data storage layer called the Kyvos Analytical Store.

This layer provides efficient data storage and retrieval capabilities that help to optimize both cost and time savings. The Kyvos Analytical Store is specifically designed to support complex, long-running queries that process substantial portions of the stored dataset. It is equipped with a columnar-vectorized query execution engine that processes a large batch of values, referred to as a "vector", in a single operation. This vectorized query execution significantly improves performance, especially in OLAP queries.

Note

When using semantic models with Kyvos Analytical Store, you must process the full data of the semantic model if it has not been processed before. Additionally, it is recommended to avoid using a previously processed semantic model after enabling the Kyvos Analytical Store. This is because executing queries on a previously processed semantic model may slow down as a result of Kyvos Analytical Store memory calculations.

Certified Providers and supported Operating Systems for Kyvos Analytical Store

The Kyvos 2024.1.x is certified to work on the following provider and OS versions with the Kyvos Analytical Store.

Provider

OS Version

Provider

OS Version

CDP 7.1.8/CDH-6.3.2

Ubuntu 18.04

AWS

Centos 7.9 and Amazon Linux 2

Azure

RHEL 8.6 and RHEL7.8

GCP

CentOS 7.9, RHEL 8.8, and Ubuntu 20.04

Prerequisites

To use Kyvos Analytical Store, you must ensure the following:

Adding Kyvos Analytical Store Jar in classpath 

To add Kyvos Analytical Store Jar in classpath, perform the following steps.

  1. Login to Kyvos and navigate to the Connections page.

  2. On the Connections page, click Properties.

    Connection.png
  3. On the Edit Properties dialog box, search “kyvos.connection.classpath.common.jar” and enter the ../lib/duckdb_jdbc.jar value in the existing class path.

    image-20240223-070315.png
  4. Restart Kyvos services.  

Using Kyvos Analytical Store for semantic models

To use the Kyvos Analytical store as data storage layer for a semantic model, use the following property on the semantic model. 

Property: kyvos.build.aggregate.type  

Value: Tabular 

Scope: Semantic model advanced property 

Kyvos Analytical Store memory calculations

Parameter

Memory Calculation

Parameter

Memory Calculation

HEAP_MEMORY

VM_TOTAL_MEMORY / 4

OFF_HEAP_MEMORY

VM_TOTAL_MEMORY / 8

KYVOS_ANALYTICAL_STORE_MEMORY

VM_TOTAL_MEMORY / 4

For example, If you have a 64 GB Query Engine Virtual Machine, the memory calculations are as follows:

  • HEAP_MEMORY = 16 GB

  • OFF_HEAP_MEMORY= 8 GB

  • KYVOS_ANALYTICAL_STORE_MEMORY= 16 GB

Memory tuning parameters 

The Heap, Off-heap, and other required memory on Query Engines are automatically configured if memory mode is set to Auto mode.

For more details, see the Kyvos Java options page in Kyvos Manager.

To enable Kyvos Analytical store, perform the following steps.

Steps for Databricks 

You must change Spark configurations to use managed disk. Ensure that you must not change the configuration in the default root (/tmp) volume.

To change Spark configurations to use managed disk, perform the following steps.

  1. Databricks > Advance configuration > Spark

    • In the Spark Configurations, add the spark.local.dir /local_disk0 property where the local_disk0 is the managed disk.
      This can be verified using the df -h command from a notebook

  2. Add the SPARK_WORKER_DIR=/local_disk0 value in the Environment variables.

Copyright Kyvos, Inc. All rights reserved.