HW05 - Superset & ClickHouse Integration

1. ติดตั้ง Superset บน WSL

sudo apt update && sudo apt install -y build-essential libssl-dev libffi-dev python3-dev python3-pip python3-venv libsasl2-dev libldap2-dev libpq-dev

python3 -m venv superset-env
source superset-env/bin/activate

pip install --upgrade pip setuptools wheel
pip install apache-superset==3.0.2
pip install marshmallow==3.19.0

2. ตั้งค่า Secret Key

SECRET_KEY = 'your_random_secret_key'

export FLASK_APP=superset
export SUPERSET_CONFIG_PATH=~/superset_config.py

3. Setup และรัน Superset

superset db upgrade
superset init
superset fab create-admin
superset run -p 8088

เมื่อเรียกใช้งาน Superset Server ได้สำเร็จ จะเห็น log ดังภาพ:

Superset Terminal Log

4. ติดตั้ง ClickHouse บน WSL

sudo apt install clickhouse-server clickhouse-client
sudo service clickhouse-server start

5. สร้างตารางและนำเข้าข้อมูล

CREATE TABLE students (
    id UInt32,
    name String,
    score Float32
) ENGINE = MergeTree()
ORDER BY id;

INSERT INTO students VALUES (1, 'Alice', 89.5), (2, 'Bob', 76.0);

6. เชื่อมต่อ Superset กับ ClickHouse

ผ่าน Superset UI → Add Database

clickhouse+native://default:@localhost:9000/default

7. สร้าง Dashboard และแสดง Chart

สร้าง Dataset → สร้าง Bar Chart → นำไปวางใน Dashboard

Bar Chart Dashboard on Superset

8. สรุป