BI Tool Compatibility Matrix
Overview
Tessallite exposes two connection protocols: a PostgreSQL wire protocol gateway (JDBC, port 5433) and an XMLA/DAX endpoint (HTTP, port 8080). Most BI tools connect through one of these two protocols. This page lists supported tools, the protocol each uses, and the feature coverage for each.
Protocol summary
| Protocol | Port | Query language | Best for |
|---|---|---|---|
| JDBC (PostgreSQL wire) | 5433 | SQL | DBeaver, Tableau, Superset, pgAdmin, Python (psycopg2), any JDBC/ODBC client |
| XMLA/DAX | 8080 | DAX, MDX | Excel PivotTable, Power BI |
Compatibility matrix
| Tool | Protocol | Connect | Browse schema | Query | Aggregates | Personas | Row security | Drill-through | Guide |
|---|---|---|---|---|---|---|---|---|---|
| Microsoft Excel | XMLA | Pass | Pass | Pass | Pass | Pass | Pass | Pass | Guide |
| Power BI Desktop | XMLA | Pass | Pass | Pass | Pass | Pass | Pass | N/A | Guide |
| DBeaver | JDBC | Pass | Pass | Pass | Pass | N/A | N/A | N/A | Guide |
| Tableau Desktop | JDBC | Pass | Pass | Pass | Pass | N/A | N/A | N/A | Guide |
| Apache Superset | JDBC | Pass | Pass | Pass | Pass | N/A | N/A | N/A | Guide |
| pgAdmin / psql | JDBC | Pass | Pass | Pass | Pass | N/A | N/A | N/A | Guide |
| Python (psycopg2) | JDBC | Pass | Pass | Pass | Pass | N/A | N/A | N/A | Guide |
| Headless REST API | HTTP | Pass | Pass | Pass | Pass | Pass | Pass | N/A | Guide |
Feature notes
Aggregates
Aggregate routing is transparent. When a query matches a pre-built aggregate, the gateway rewrites the query to read from the aggregate table instead of the source. The BI tool does not need to be aware of aggregates.
Personas
Persona-based filtering is available over XMLA (Excel, Power BI) and the Headless API. JDBC clients connect as a single user and do not have persona context. Persona-based row filtering applies automatically when a persona is resolved from the user's group membership.
Row security
Row-level security filters are applied server-side for XMLA connections where the gateway resolves the user's persona. JDBC connections authenticate the user but do not apply persona-based row filters unless the Headless API is used with explicit persona headers.
Drill-through
Drill-through (clicking a PivotTable cell to see the underlying detail rows) is supported in Excel via the XMLA endpoint. Power BI does not support XMLA drill-through natively. JDBC clients can achieve the same result by querying with the appropriate WHERE clause.
Choosing a protocol
- Excel users should connect via XMLA. This gives full PivotTable functionality, persona support, row security, and drill-through.
- Power BI users should connect via XMLA for the richest experience (measures, hierarchies, formatted values).
- Tableau, Superset, DBeaver and other SQL-based tools should connect via JDBC. They get SQL access to all published models with transparent aggregate routing.
- Programmatic access (scripts, pipelines) should use the Headless REST API for the most control, or JDBC for standard SQL integration.
Limitations
- JDBC clients see a flat relational view. Hierarchies and measure formatting defined in the semantic model are not exposed over the PostgreSQL wire protocol.
- XMLA connections require models to be deployed (published). JDBC connections also require deployment.
- Concurrent connection limits depend on the gateway configuration and deployment scale.