External SQL connectivity and the BI Tool integrations in this section are powered by a service called Foundry SQL Server. This service provides lightweight SQL session and statement management for read-only queries against Foundry Datasets. Palantir provides JDBC and ODBC drivers to facilitate client interactions with this service using open standards, as well as plugin implementations for certain third-party platforms which leverage these drivers.
Supported SQL dialects are ANSI
, ODBC
, and SparkSQL
.
Note that support for these dialects is limited to read-only functionality.
Foundry SQL Server will automatically select an execution engine based on the complexity of the query. Each execution engine comes with a set of tradeoffs for overall performance, result size limitations, and supported query complexity.
The default execution engine for queries leverages Spark SQL functionality. This engine supports full SQL compute functionality such as aggregates, joins, order by, filters, etc. Queries which require use of this execution engine will be subject to limits regarding data scale, as results must be collected in memory on the Spark driver prior to delivering results to client applications. These limitations are a function of the number of rows and number of bytes in the result of the computation.
When possible, Foundry SQL Server will use the direct read engine to execute queries. When queries do not require SQL compute Foundry SQL Server will bypass Spark SQL and stream records directly from the backing files of a Dataset. Direct read queries are not subject to the same scale limitations as queries which require full SQL compute.
Queries are direct read eligible when:
array
, map
, and struct
are not direct read eligible.Direct read queries are case-sensitive.