SQL Backend Base Classes¶
BaseSQLBackend
¶
Bases: BaseBackend
Base backend class for backends that compile to SQL.
Functions¶
compile(expr, limit=None, params=None, timecontext=None)
¶
Compile an Ibis expression.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
expr |
ir.Expr
|
Ibis expression |
required |
limit |
str | None
|
For expressions yielding result sets; retrieve at most this number of values/rows. Overrides any limit already set on the expression. |
None
|
params |
Mapping[ir.Expr, Any] | None
|
Named unbound parameters |
None
|
timecontext |
tuple[pd.Timestamp, pd.Timestamp] | None
|
Additional information about data source time boundaries |
None
|
Returns:
Type | Description |
---|---|
Any
|
The output of compilation. The type of this value depends on the backend. |
execute(expr, params=None, limit='default', **kwargs)
¶
Compile and execute an Ibis expression.
Compile and execute Ibis expression using this backend client interface, returning results in-memory in the appropriate object type
Parameters:
Name | Type | Description | Default |
---|---|---|---|
expr |
ir.Expr
|
Ibis expression |
required |
limit |
str
|
For expressions yielding result sets; retrieve at most this number of values/rows. Overrides any limit already set on the expression. |
'default'
|
params |
Mapping[ir.Scalar, Any] | None
|
Named unbound parameters |
None
|
kwargs |
Any
|
Backend specific arguments. For example, the clickhouse backend
uses this to receive |
{}
|
Returns:
Type | Description |
---|---|
DataFrame | Series | Scalar
|
|
explain(expr, params=None)
¶
Explain an expression.
Return the query plan associated with the indicated expression or SQL query.
Returns:
Type | Description |
---|---|
str
|
Query plan |
raw_sql(query)
¶
Execute a query string.
The returned cursor object must be manually released if results are returned.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
query |
str
|
DDL or DML statement |
required |
sql(query, schema=None)
¶
table(name, database=None)
¶
to_pyarrow_batches(expr, *, params=None, limit=None, chunk_size=1000000, **_)
¶
Execute expression and return an iterator of pyarrow record batches.
This method is eager and will execute the associated expression immediately.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
expr |
ir.Expr
|
Ibis expression to export to pyarrow |
required |
limit |
int | str | None
|
An integer to effect a specific row limit. A value of |
None
|
params |
Mapping[ir.Scalar, Any] | None
|
Mapping of scalar parameter expressions to value. |
None
|
chunk_size |
int
|
Maximum number of rows in each returned record batch. |
1000000
|
Returns:
Type | Description |
---|---|
RecordBatchReader
|
Collection of pyarrow |