Cassandra and ScyllaDB client
Browse keyspaces, run CQL and edit rows by their primary keys. Connect to Cassandra, ScyllaDB or Amazon Keyspaces.
Works on MacDriver downloads on first use of Cassandra
Included in Free; paid plans add optional featuresOpen source (AGPL-3.0)


At a glance
- Query language
- CQL
- Driver
- Downloads on first useShared with ScyllaDB
- Connect with
- Host and port, SSH tunnel, SSL/TLS, AWS IAM
- Default port
- 9042
- Minimum version
- 3.0
- iPhone and iPad
- Does not open
Connect
Enter a contact point, port and any required credentials. Choose a keyspace after connecting, or import a cassandra:// or cql:// URL with one in its path. Existing tabs keep their keyspace when you switch.
TLS is off on a new connection. Preferred and Required both encrypt without checking the certificate, because the driver has no opportunistic TLS. Verify CA and Verify Identity need a CA certificate file and never fall back to the system roots. For mutual TLS, add a client certificate, its key and the key’s passphrase. A cluster on a private network is reached through an SSH tunnel.
Amazon Keyspaces signs in with SigV4 instead of a password. Point the connection at the regional endpoint, such as cassandra.us-east-1.amazonaws.com on port 9142, set Authentication to an AWS IAM mode (an access key, a profile or AWS IAM Identity Center), leave the user name and password empty and turn TLS on, because Keyspaces refuses plain text.
Browse and run CQL
Browse CQL values in the table grid, including collections, user-defined types, durations, vectors and blobs. Editor results are read-only; edit rows in the table opened from the sidebar.
CQL has no OFFSET, so pages are read forward from the first row: Next and Previous over pages already shown cost one read each, and a jump to a distant page reads every page before it. Rows arrive in token order, and a column header does not re-sort them, because CQL orders rows only by clustering columns inside one partition. Nothing is counted when a table opens; Count Exactly runs SELECT COUNT(*), which reads every partition.
Filters add ALLOW FILTERING, so the server reads every partition unless the filter pins the whole partition key. Contains, starts with and ends with are sent as LIKE, which Cassandra accepts only on a column with a SASI or SAI index. Operators CQL cannot express, such as not equals or is NULL, are refused by name, and conditions join with AND only, because CQL has no OR.
Edits are validated as CQL types and written per row by the full primary key. Invalid values stop the save. Add Row uses INSERT … IF NOT EXISTS. To change a key, delete and reinsert the row.
Counter columns need UPDATE … SET c = c + 1 in the CQL editor; the server rejects the plain UPDATE a grid edit writes. The connect timeout comes from the connection’s Options, while CQL requests keep the driver’s own fixed timeout, which the app’s query timeout does not change.
Keyspaces and tables
The Structure tab lists each column’s CQL type, marks partition key and clustering columns alike as primary key, and shows the table’s secondary indexes. It adds and drops columns; every other change, indexes included, is a CQL statement in the editor.
The DDL tab rebuilds CREATE TABLE from the column list, so it leaves out table options such as compaction, the clustering order and the split between partition and clustering keys. Read the full definition with DESCRIBE TABLE in cqlsh. User-defined functions and aggregates are listed under Functions.
Move data
TablePro has no import for Cassandra or ScyllaDB. Export a table or a CQL result as CSV, JSON, SQL, XLSX, Markdown, HTML and XML.
iPhone and iPad
The iPhone and iPad app has no Cassandra driver. Cassandra connections synced from a Mac appear in its list but do not open.
Limits
- Only scalar columns can be edited in the grid. Collections, tuples, user-defined types and durations need an UPDATE in the editor.
- There is no consistency-level setting. Statements run at the driver’s default, LOCAL_ONE.
- DataStax Astra DB does not connect, because its secure connect bundle cannot be loaded.
- Materialized views and user-defined types are not listed in the sidebar.
ScyllaDB
Default port 9042Downloads on first useiPhone and iPad: Does not open
ScyllaDB has its own entry in the connection type list and uses the Cassandra driver over the same CQL native protocol, so connecting, browsing, editing and the limits above apply as written. A scylladb:// or scylla:// URL creates a ScyllaDB connection.
One difference shows in the filter bar: ScyllaDB takes the LIKE that contains, starts with and ends with send on any column, where Cassandra needs a SASI or SAI index. ScyllaDB is set up as the Cassandra setup guide describes.
Questions about Cassandra
Does TablePro show node or ring status?
No. There is no Server Dashboard for Cassandra or ScyllaDB. Check nodes with nodetool status, and use TablePro for keyspaces, tables and CQL.
How do I see materialized views and user-defined types?
They are not in the sidebar, so query the system_schema keyspace in the CQL editor, for example SELECT * FROM system_schema.views or system_schema.types.
Does TablePro connect to Cassandra 2.x?
No. The driver reads the schema from system_schema, which Cassandra 2.x does not have, so the connection fails.
Get TablePro
Requires macOS 13 Ventura or later