What is Tableau?

Tableau is a visual analytics platform for data visualization, visual analytics, interactive dashboarding and KPI scorecards. Tableau is a prdouct of Salesforce.

Tableau Desktop Connector

Tableau has great connectivity that allows to visualize data from virtually anywhere. In addition to its dozens of built-in connectors and additional partner-built connectors (available on Tableau Exchange), Tableau also gives the tools to build a customized connector with the Tableau Connector SDK.

Prerequisites before Tableau Installation

  1. Check OS Requirement:Please kindly notice that Currently Tableau Desktop only supports Windows and MAC.

📘

Suggested Environment Config

Windows

  • Microsoft Windows 8/8.1, Windows 10 (x64)
  • 2 GB memory
  • 1.5 GB minimum free disk space
  • CPUs must support SSE4.2 and POPCNT instruction sets

MAC

  • macOS Mojave 10.14, macOS Catalina 10.15, macOS Big Sur 11.4+, and macOS Monterey 12.6+ (for Tableau 2022.3+)
  • Intel processors
  • M1 processors under Rosetta 2 emulation mode
  • 1.5 GB minimum free disk space
  • CPUs must support SSE4.2 and POPCNT instruction sets
  1. Download via Tableau Desktop Website:https://www.tableau.com/products/desktop/download
  2. Finish Tableau Desktop installation and mark installation folder, For example

/Applications/Tableau\ Desktop\ 2021.3.app/Contents/MacOS/Tableau

Using Tableau with ByteHouse Connector

Please follow the steps as below to finish Bytehouse Connector setup

[Step 1] Download JDBC Driver

Download latest JDBC Driver from here

https://artifact.bytedance.com/repository/releases/com/bytedance/bytehouse/driver-java/

Minimum version required: 1.1.0
Jar extension: -all.jar

[Step 2] JDBC Jar location

Put JDBC jar inside this location

/Users/$your_user_name/Library/Tableau/Drivers

[Step 3] Download Connector Plugin

  • Download connector plugin from this repository (bytehouse-connector folder)
  • File name: "bytehouse_jdbc.taco"
https://code.byted.org/bytehouse/bytehouse-tableau-connector/tree/master/files

Put this connector plugin into this location

/Users/$YOUR_USER_NAME/Documents/My_Tableau/Connectors

[Step 4] Run using Tableau Desktop

/Applications/Tableau\ Desktop\ 2021.3.app/Contents/MacOS/Tableau -DConnectPluginsPath=/Users/$YOUR_USER_NAME/Documents/My_Tableau/Connectors

Minimum Tableau Desktop version required: 2021.3

📘

For windows users, you can follow Tableau official docs with the above mentioned files: https://tableau.github.io/connector-plugin-sdk/docs/run-taco

📘

For storing the connector file (taco file / connector folder), please don't create a directory where there are spaces in the name of the directory. For example, "/Users/$YOUR_USER_NAME/Documents/My Tableau Repository/Connectors" may not work because of the spaces here "My Tableau Repository". Instead you can use "My_Tableau_Repository".

[Step 5] Connect Bytehouse via JDBC

Choose "ByteHouse JDBC by ByteDance" from the available connectors

[Step 6] Connect Bytehouse

Fill up the account credentials in ByteHouse connector UI and sign-in

[Step 7] Demo of Tableau Integration with Bytehouse

Dataset Exploration
Dataset contains COVID-19 confirmed cases & deaths based on region, country, date etc. Parameters. Dataset can be downloaded from here

Dataset Ingestion
Dataset were directly ingested to ByteHouse using "data-import" through csv file. Alternatively data can also be ingested using bytehouse-cli with below DDL.

--create database
CREATE DATABASE neuron_poc;

--create table
CREATE TABLE neuron_poc.covid_cases
(
        Case_Type String,
        People_Total_Tested_Count Integer,
        Cases Integer,
        Difference Integer,
        Date Date,
        Combined_Key String,
        Country_Region String,
        Province_State String,
        Admin2 String,
        iso2 String,
        iso3 String,
        FIPS String,
        Lat Double,
        Long Double,
        Population_Count Integer,
        People_Hospitalized_Cumulative_Count Integer,
        Data_Source String,
        Prep_Flow_Runtime Datetime
)
ENGINE = CnchMergeTree()
ORDER BY tuple()

For data-import, please upload data by creating data loading job and load data from where the source is


Once data loaded successfully, please login and connect Tableau via Step 4 ~ 6

Dataset View in Tableau:

Covid-19 Visualization with ByteHouse