TableStudio is a native Mac client for ClickHouse. It tells you what a query will cost before it runs. It catches the sorting-key, partition and type choices that slow ClickHouse down, runs ClickHouse on your Mac, and lets coding agents like Claude Code, Codex and Cursor in under rules TableStudio enforces itself.
Know what a query will read before it runs
On ClickHouse, "it's only a SELECT" says very little. A careless query can scan billions of rows. Before a query runs, TableStudio asks ClickHouse's own EXPLAIN ESTIMATE how many rows and parts it would read. Browsing a wide table only reads the columns on screen.
Query Insights reads system.query_log for the statements ClickHouse spends its time on. Where a skip index would help, TableStudio proves it with EXPLAIN WHATIF before you add it.
What TableStudio does for ClickHouse
Built for a column store, not bolted onto a row-store client.
Agents on a column store
- Agent reads are read-only on the server, with a 30-second limit.
- An agent's change to a production cluster waits in your review queue for Touch ID.
- Rows are saved before an agent changes them, so the change can be undone.
- Take a restore point, a snapshot over HTTP, before anything risky.
- A restore point is one tool call away, so the agent can snapshot a table before it changes it.
Query rules for ClickHouse
- Filters that use neither the
ORDER BYkey nor a skip index. - A
WHEREthat still reads most of the table's granules. - Reads from Replacing or Collapsing tables that can return duplicate or uncollapsed rows.
- Substring searches that scan a whole table, and JSON parsed on every run.
- Exact distinct counts with a large memory peak, and async inserts that can lose rows.
Table design checks
- Tables with no sorting key, or one led by a near-unique column.
- Partitions too fine, or too big to finish deduplicating.
Nullablecolumns that cost a hidden extra column.- String columns that should be
LowCardinality.
Cluster health
- Mutations running for hours, and merges that keep failing.
- Replication queues that are stuck, and replicas offline.
- Distributed inserts that aren't reaching their shards.
- Dictionaries that fail to load, failing refreshable views, and Kafka consumer errors.
- The mark cache hit ratio.
Browse and edit
- Wide tables stay fast: browsing reads only the visible columns.
Enumcolumns get a dropdown of their values.- Edits warn that ClickHouse runs them as background mutations on a shared key.
- Export to CSV, TSV, JSON, SQL, Markdown or Excel.
SQL
- A column editor that offers
LowCardinality,DateTime64,MapandTuple, and keepsNullableout of the default. - AI that writes ClickHouse SQL and fixes failing queries.
- Plans drawn as a tree, and
clickhouse clientin Terminal with one command.
ClickHouse on your Mac
- Create, start and stop local ClickHouse servers, and pick up the ones already running.
- Throwaway sandbox copies of a database, with real rows or none.
- Share a local server through a Cloudflare Tunnel.
Dashboard
- ClickHouse's own widget packs for health, storage and compression.
- Your own widgets in SQL, from a count to a chart.
Connecting to ClickHouse Cloud
Copy the HTTPS endpoint and password from your ClickHouse Cloud service and add a ClickHouse connection with them. TableStudio uses the HTTP interface, the same one ClickHouse Cloud exposes, so there's no native-protocol port to open. Self-hosted servers work the same way, directly or over an SSH tunnel.
Last updated