|
Databricks C++ SDK 0.2.4
Interact with Databricks via an SDK
|
Main client class for Databricks SQL operations. More...
#include <client.h>
Classes | |
| class | Builder |
| Builder pattern for constructing Client with modular configuration. More... | |
| struct | Parameter |
| Parameter for parameterized queries. More... | |
Public Member Functions | |
| ~Client () | |
| Destructor. | |
| Client (const Client &)=delete | |
| Client & | operator= (const Client &)=delete |
| Client (Client &&) noexcept | |
| Client & | operator= (Client &&) noexcept |
| const AuthConfig & | get_auth_config () const |
| Get the authentication configuration. | |
| const SQLConfig & | get_sql_config () const |
| Get the SQL configuration. | |
| const PoolingConfig & | get_pooling_config () const |
| Get the pooling configuration. | |
| bool | is_configured () const |
| Check if the client is configured with valid credentials. | |
| std::vector< std::vector< std::string > > | query (const std::string &sql, const std::vector< Parameter > ¶ms={}) |
| Execute a SQL query against Databricks. | |
| void | connect () |
| Explicitly establish connection to Databricks. | |
| std::future< void > | connect_async () |
| Asynchronously establish connection to Databricks. | |
| std::future< std::vector< std::vector< std::string > > > | query_async (const std::string &sql, const std::vector< Parameter > ¶ms={}) |
| Asynchronously execute a SQL query. | |
| void | disconnect () |
| Disconnect from Databricks. | |
Friends | |
| class | Builder |
Main client class for Databricks SQL operations.
This class provides a clean interface for executing SQL queries against Databricks. It uses a modular configuration approach with AuthConfig, SQLConfig, and PoolingConfig.
Example usage:
| databricks::Client::~Client | ( | ) |
Destructor.
|
delete |
|
noexcept |
| void databricks::Client::connect | ( | ) |
Explicitly establish connection to Databricks.
Normally not needed as query() will auto-connect. Useful for validating credentials or pre-warming connection.
| std::runtime_error | if connection fails |
| std::future< void > databricks::Client::connect_async | ( | ) |
Asynchronously establish connection to Databricks.
Non-blocking connection useful for reducing perceived latency. Call wait() on returned future before executing queries, or query() will automatically wait.
| void databricks::Client::disconnect | ( | ) |
Disconnect from Databricks.
| const AuthConfig & databricks::Client::get_auth_config | ( | ) | const |
Get the authentication configuration.
| const PoolingConfig & databricks::Client::get_pooling_config | ( | ) | const |
Get the pooling configuration.
| const SQLConfig & databricks::Client::get_sql_config | ( | ) | const |
Get the SQL configuration.
| bool databricks::Client::is_configured | ( | ) | const |
Check if the client is configured with valid credentials.
| std::vector< std::vector< std::string > > databricks::Client::query | ( | const std::string & | sql, |
| const std::vector< Parameter > & | params = {} |
||
| ) |
Execute a SQL query against Databricks.
This method supports both static queries and parameterized queries for security.
Static Query (no parameters):
Parameterized Query (RECOMMENDED for dynamic values): Use placeholders (?) and provide parameters to prevent SQL injection:
| sql | The SQL query to execute (use ? for parameter placeholders) |
| params | Optional vector of parameter values (default: empty = static query) |
| std::future< std::vector< std::vector< std::string > > > databricks::Client::query_async | ( | const std::string & | sql, |
| const std::vector< Parameter > & | params = {} |
||
| ) |
Asynchronously execute a SQL query.
| sql | The SQL query to execute |
| params | Optional vector of parameter values |