Kyvos brings the power of multidimensional analytics to Azure. You can build a modern BI architecture on Azure with built-in elasticity and perform complex, multidimensional analytics on your cloud workloads with unmatched performance and unlimited scalability.
Kyvos consists of two main components: BI Servers and Query Engines. Kyvos BI servers are deployed on standalone Azure Virtual Machines (VMs), and the query engines are deployed on VMs in Virtual Machine Scale Sets. Query engines can be configured to increase or decrease depending upon the load.
Auto-scaling enables Kyvos to scale up and down at the time of cube building using Databricks on Azure.
- Kyvos reads data from Azure Data Lake Storage (ADLS) and processes it using Databricks. It launches a series of MapReduce or Spark jobs for cube building.
- At the time of Kyvos deployment, leveraging the Databricks service, you can either provide a fixed number of worker nodes for the cluster or define the minimum and maximum number of worker nodes. The cluster then scales in or scales out to use only the resources that are needed.
- Databricks chooses the appropriate number of worker nodes required to run your job. This ensures that only the required number of machines are used during cube build.
Once the cubes are built, they are stored in ADLS GEN 2 for persistent storage. This helps deliver much higher performance as compared to querying directly from Blob storage.
Kyvos supports querying elasticity through scheduled scaling. Based upon the expected loads, you can specify the day/time when resources need to scale up or down. This helps reduce costs during lean periods.
Kyvos uses ADLS GEN2 shared storage to store and cache cube data. During scaling, when a new query engine is added, all that needs to happen is to point this new query engine to shared storage. This helps in quickly adding more capacity for querying. Similarly, during a scale down, when a query engine is taken off, another one can quickly take over by pointing to the shared storage.
Kyvos' modern architecture enables deep integration with Azure, as shown in the following figure.
Configure database name
In an Azure-based deployment, you can provide a mechanism to configure the database name for tables used in the Cube Query Analyzer feature. It appends "CLUSTER_NAME" to the default DB name in an Azure-based deployment.
"CLUSTER_NAME" is defined in the olapengine.prop file and it's unique for each Kyvos deployment.