How to execute the TPC-DS benchmark data and query



Tabulify supports the Tpc-Ds database benchmark on the following points:


Schema Management

This section shows you how to manage the sub-schema of TPC-DS

All tables

tpcds - all TPC-DS tables

tabli data list *@tpcds
tabli data create *@tpcds @targetConnection
tabli data fill *@tpcds @targetConnection


the data-warehouse tables - all tables without the tables that starts with a s (ie without the staging tables)

tabli data list [!s]*@tpcds
tabli data create [!s]*@tpcds @targetConnection
tabli data fill [!s]*@tpcds @targetConnection

Store Sales

The store-sales schema has the store_sales and store_return star schema (a data-warehouse schema).

tabli data list --with-dependencies store*@tpcds

tabli data create --with-dependencies store*@tpcds @targetConnection
tabli data copy --with-dependencies store*@tpcds @targetConnection

This article explains this technic: how to select a star schema

Note on the schema

The TPC-DS benchmark does not define the B column (business key) as unique key. Our implementation makes them all unique (except on the item table where the column is unique only with the start and end date)

Why ? Because when using TPC-DS as a sample schema, the data generator will then create data that is consistent with the queries.

For TPC-DS, a business key is neither a primary key nor a foreign key in the context of the data warehouse schema. It is only used to differentiate new data from update data of the source tables during the data maintenance operations.

Related HowTo
Undraw Circuit Board
How to list SQL Tables

This howto will show you how to list SQL Tables
Undraw Circuit Board
Learning Tabulify - Step 4 - How to select Data Resources

To select a data resources such as a file or a database table, Tabulify uses the concept of: and dependency (Do we select also the dependent data resources) This page goes through this concepts...
Undraw Circuit Board
Learning Tabulify - Step 6 - How to transfer Data Resources

In Tabulify, when you want to manipulate data, it's called a transfer. You want to move data, you transfer You want to copy data, you transfer You want to insert data, you transfer You want to...
Undraw Circuit Board
Learning Tabulify - Step 7 - How to execute a Query

For Tabulify, a query is a script that when executed returns a content resource. In the case of a Sql Query (ie a SELECT statement), the result is a data set in tabular format. The selector of a query...

Task Runner