BI reports migration to Kyvos Data Source

BI reports migration to Kyvos Data Source

Many modern data analysis cases involve using a BI tool like Tableau and connecting it to the underlying data source, which is generally a data warehouse like BigQuery, Snowflake, or Hive. While these BI tools allow users to create reports and dashboards, they rely on the underlying warehouse for delivering performance on a large scale and often fail to deliver fast query performance at low cost. 

To solve this problem, Kyvos supports queries that involve joining multiple semantic models. So, customers can switch their existing reports to Kyvos instead of the underlying data warehouse without impacting their experience. Also, Kyvos improves performance and saves costs by intelligent and smart caching.

Note

Kyvos currently supports only such Tableau reports made on Snowflake data warehouse.

Semantic Model Creation

  1. Open the Kyvos portal home page and choose quick data modelling. Select Single Table Tabular Semantic Model and provide Analysis Name.

    image-20250507-090215.png
  2. In the wizard, choose connection, Input type, Database, Schema, and Table. Click Next.

    image-20250507-090302.png
  3. Choose a raw data SQL connection on which the semantic model will be created and click Next.

    image-20250507-090601.png
  4. Now the semantic model will be created. Click Done.

    image-20250507-090810.png
  5. Now place the created semantic model to the appropriate folder with appropriate name.

The created semantic model should reside in a folder with a name that exactly matches its database name. Additionally, the semantic model name should exactly match the table name in the data source.

Example- If store_orders table present in automationtables database then Kyvos semantic model should present in automationtables folder and SM name should be store_orders.

Migrate Tableau report to Kyvos

  1. Open Tableau report that you want to migrate to Kyvos.

    image-20250507-091740.png
  2. Click Data menu > New Data Source.

    image-20250507-091946.png
  3. Choose Spark SQL or Kyvos connector from the available connector list.

    image-20250508-102517.png
  4. Provide the required details for Kyvos connection

  5. Choose Schema/Kyvos Folder name, Table/Kyvos semantic model.

  6. Create the exact similar relationship or joins using Kyvos semantic model, and click any Tableau sheet. Now user can see both the data sources at the top.

    image-20250507-092417.png
    image-20250507-092713.png
  7. Right-click on any of the data source and choose Replace data source.

    image-20250507-103431.png
  8. Select the data source that you want to replace in the place of older one. Click ok.

    image-20250507-103523.png
  9. Now your older data source will point to the newer one, that is Kyvos. Tableau dashboards will also migrate accordingly. You can see that the dashboard queries are running through Kyvos now.

    image-20250507-103641.png
    image-20250507-103723.png

Important points to know

Tableau

  1. Union of tables not allowed on spark SQL and Kyvos connector.

  2. Discrepancy might occur in the TDS connection compared to flat connection.

  3. Tableau Automatically renaming some fields differently for snowflake and Kyvos. So, some discrepancies might occur. Users must rename such field names manually.

  4. If any discrepancy presents in field name and data type, then users must correct it manually.

  5. Fields which are marked as dimension/measure in the old data source, same should be marked in the new data source as well.

  6. Automatically generated count(table) field might need to be renamed accordingly.

  7. Set and Top N filter comes under the additional changes of tableau. So, it will remove from viz automatically after switching. Users must create it again for new data sources.

  8. Additional changes made at Tableau side will not get applied on new source Example- Field formatting, Measure formatting

  9. Some of the functions are not supported in Tableau when using Spark as a data source. Such queries will fail/will not migrate. Example- DATEPARSE

  10. SQL functions might behave differently in Kyvos compared with snowflake Example- DATENAME ('month', [Date]) function provides month name in string, but spark SQL gives it as integer.

  11. User might get some data inaccuracy for the quarter level calculation because of behavior difference in Snowflake and Spark connector.

 

Copyright Kyvos, Inc. 2025. All rights reserved.