PolymarketClickHouse Workshops

00 Setup

Siapkan macOS atau WSL 2, buat service ClickHouse Cloud, dan muat satu file environment.

Your computer
macOS terminal: Run workshop commands in Terminal using zsh or bash.

Pilih macOS atau Windows di header halaman. Perintah Windows dijalankan di Ubuntu pada WSL 2, bukan PowerShell, kecuali halaman ini secara eksplisit menyebut PowerShell.

Hasil

Anda memiliki Docker, Git, Python, clickhousectl, client ClickHouse, sebuah service Cloud, dan .env.polymarket yang sudah di-source. Preflight mencetak READY.

Langkah 1 — Verifikasi laptop

Instal Docker Desktop for Mac. Di Terminal jalankan:

docker version
docker compose version
git --version
python3 --version

Langkah 2 — Clone repository workshop

git clone https://github.com/ClickHouse/ClickHouse_Demos.git
cd ClickHouse_Demos
git switch build-workshop-v1
cd "$(git rev-parse --show-toplevel)/workshop_public/polymarket"
cp .env.polymarket.example .env.polymarket

Perpindahan branch itu wajib: build-workshop-v1 adalah snapshot workshop produksi yang lengkap.

Jalankan perintah-perintah selanjutnya dari ClickHouse_Demos/workshop_public/polymarket.

Langkah 3 — Instal clickhousectl dan client ClickHouse

curl https://clickhouse.com/cli | sh
export PATH="$HOME/.local/bin:$PATH"
clickhousectl --version
clickhousectl local use stable
clickhouse client --version

local use hanya menginstal binary client. Perintah itu tidak menjalankan server database; setiap query menargetkan ClickHouse Cloud.

Langkah 4 — Autentikasi dan buat service Cloud

Pelatihan tatap muka: gunakan organization API key khusus learner yang diberikan secara aman oleh trainer.

Login interaktif menjaga secret tidak masuk ke shell history:

clickhousectl cloud auth login --interactive
clickhousectl cloud auth status
clickhousectl cloud org list

Automasi terpercaya dapat memakai bentuk eksplisit:

clickhousectl cloud auth login --api-key <key> --api-secret <secret>

Buat satu service. Ubah region hanya jika trainer menentukan region lain:

clickhousectl cloud service create \
  --name polymarket-workshop \
  --provider aws \
  --region ap-southeast-1 \
  --min-replica-memory-gb 8 \
  --max-replica-memory-gb 8 \
  --num-replicas 1 \
  --idle-scaling true \
  --idle-timeout-minutes 15

Simpan service ID dan password default-user sekali pakai. Tunggu hingga siap:

clickhousectl cloud service list
clickhousectl cloud service get <service-id>

Langkah 5 — Isi dan source .env.polymarket

Buka dialog Connect milik service. Masukkan hostname murni dan password ke .env.polymarket; jangan sertakan https:// atau :8443 pada host.

${EDITOR:-vi} .env.polymarket
set -a; source ./.env.polymarket; set +a

Pastikan shell sudah memuat nilai-nilai non-secret:

printf 'host=%s database=%s mode=%s\n' \
  "$CLICKHOUSE_HOST" "$CLICKHOUSE_DATABASE" "$POLYMARKET_MODE"

Diharapkan: hostname Cloud, polymarket, dan live.

Langkah 6 — Jalankan preflight

chmod +x ./preflight.sh
./preflight.sh

Diharapkan:

READY: Docker, ClickHouse Cloud, Gamma, Data API, and CLOB REST are reachable

Dalam mode fixture pada jaringan yang memblokir Polymarket, baris terakhirnya justru:

READY: Docker and ClickHouse Cloud are reachable; fixture mode will supply data

Jika hanya pemeriksaan API Polymarket yang gagal, gunakan fallback fixture di Troubleshooting.

Selesai bila

  • clickhouse client --version berhasil;
  • clickhousectl cloud service get <service-id> melaporkan service sudah siap;
  • printf menampilkan host/database/mode yang diharapkan; dan
  • ./preflight.sh mencetak READY.

Berikutnya: temukan market yang akan Anda pantau.

Di halaman ini

Track your progress?

Optional. We email a link to confirm your address; progress records once you open it.

Please use your work email address, not a personal one.

Progress tracking also requires accepting the current Terms of Service in Privacy settings.

ID