Crate datafusion_common
SourceRe-exports§
pub use diagnostic::Diagnostic;
pub use error::field_not_found;
pub use error::unqualified_field_not_found;
pub use error::DataFusionError;
pub use error::Result;
pub use error::SchemaError;
pub use file_options::file_type::GetExt;
pub use file_options::file_type::DEFAULT_ARROW_EXTENSION;
pub use file_options::file_type::DEFAULT_AVRO_EXTENSION;
pub use file_options::file_type::DEFAULT_CSV_EXTENSION;
pub use file_options::file_type::DEFAULT_JSON_EXTENSION;
pub use file_options::file_type::DEFAULT_PARQUET_EXTENSION;
pub use scalar::ScalarType;
pub use scalar::ScalarValue;
pub use spans::Location;
pub use spans::Span;
pub use spans::Spans;
pub use stats::ColumnStatistics;
pub use stats::Statistics;
pub use utils::project_schema;
pub use arrow;
Modules§
- alias
- cast
- This module provides DataFusion specific casting functions
that provide error handling. They are intended to “never fail”
but provide an error message rather than a panic, as the corresponding
kernels in arrow-rs such as
as_boolean_array
do. - config
- Runtime configuration, via
ConfigOptions
- cse
- Common Subexpression Elimination logic implemented in
CSE
can be controlled with aCSEController
, that defines how to eliminate common subtrees from a particularTreeNode
tree. - diagnostic
- display
- Types for plan display
- error
- DataFusion error types
- file_
options - Options related to how files should be written
- format
- hash_
utils - Functionality used both on logical and physical plans
- instant
- WASM-compatible
Instant
wrapper. - parsers
- Interval parsing logic
- rounding
- Floating point rounding mode utility library TODO: Remove this custom implementation and the “libc” dependency when floating-point rounding mode manipulation functions become available in Rust.
- scalar
ScalarValue
: stores single values- spans
- stats
- This module provides data structures to represent statistics
- test_
util - Utility functions to make testing DataFusion based crates easier
- tree_
node TreeNode
for visiting and rewriting expression and plan trees- types
- utils
- This module provides the bisect function, which implements binary search.
Macros§
- arrow_
datafusion_ err - arrow_
err - assert_
batches_ eq - Compares formatted output of a record batch with an expected vector of strings, with the result of pretty formatting record batches. This is a macro so errors appear on the correct line
- assert_
batches_ sorted_ eq - Compares formatted output of a record batch with an expected vector of strings in a way that order does not matter. This is a macro so errors appear on the correct line
- assert_
contains - A macro to assert that one string is contained within another with a nice error message if they are not.
- assert_
not_ contains - A macro to assert that one string is NOT contained within another with a nice error message if they are are.
- config_
datafusion_ err - Macro wraps
$ERR
to add backtrace feature - config_
err - Macro wraps Err(
$ERR
) to add backtrace feature - config_
field - config_
namespace - A macro that wraps a configuration struct and automatically derives
Default
andConfigField
for it, allowing it to be used in theConfigOptions
configuration tree. - context
- create_
array - downcast_
value - Downcast an Arrow Array to a concrete type, return an
DataFusionError::Internal
if the cast is not possible. In normal usage of DataFusion the downcast should always succeed. - exec_
datafusion_ err - Macro wraps
$ERR
to add backtrace feature - exec_
err - Macro wraps Err(
$ERR
) to add backtrace feature - extensions_
options - Convenience macro to create
ExtensionsOptions
. - internal_
datafusion_ err - Macro wraps
$ERR
to add backtrace feature - internal_
err - Macro wraps Err(
$ERR
) to add backtrace feature - not_
impl_ datafusion_ err - Macro wraps
$ERR
to add backtrace feature - not_
impl_ err - Macro wraps Err(
$ERR
) to add backtrace feature - plan_
datafusion_ err - Macro wraps
$ERR
to add backtrace feature - plan_
err - Macro wraps Err(
$ERR
) to add backtrace feature - record_
batch - Creates a record batch from literal slice of values, suitable for rapid testing and development.
- resources_
datafusion_ err - Macro wraps
$ERR
to add backtrace feature - resources_
err - Macro wraps Err(
$ERR
) to add backtrace feature - schema_
datafusion_ err - schema_
err - sql_
datafusion_ err - sql_err
- substrait_
datafusion_ err - Macro wraps
$ERR
to add backtrace feature - substrait_
err - Macro wraps Err(
$ERR
) to add backtrace feature - unwrap_
or_ internal_ err - Unwrap an
Option
if possible. Otherwise return anDataFusionError::Internal
. In normal usage of DataFusion the unwrap should always succeed.
Structs§
- Column
- A named reference to a qualified field in a schema.
- Constraints
- This object encapsulates a list of functional constraints:
- DFSchema
- DFSchema wraps an Arrow schema and adds relation names.
- Functional
Dependence - This object defines a functional dependence in the schema. A functional dependence defines a relationship between determinant keys and dependent columns. A determinant key is a column, or a set of columns, whose value uniquely determines values of some other (dependent) columns. If two rows have the same determinant key, dependent columns in these rows are necessarily the same. If the determinant key is unique, the set of dependent columns is equal to the entire schema and the determinant key can serve as a primary key. Note that a primary key may “downgrade” into a determinant key due to an operation such as a join, and this object is used to track dependence relationships in such cases. For more information on functional dependencies, see: https://www.scaler.com/topics/dbms/functional-dependency-in-dbms/
- Functional
Dependencies - This object encapsulates all functional dependencies in a given relation.
- Recursion
Unnest Option - Instruction on how to unnest a column (mostly with a list type) such as how to name the output, and how many level it should be unnested
- Resolved
Table Reference - A fully resolved path to a table of the form “catalog.schema.table”
- Unnest
Options - Options for unnesting a column that contains a list type, replicating values in the other, non nested rows.
Enums§
- Constraint
- This object defines a constraint on a table.
- Dependency
- Describes functional dependency mode.
- Join
Constraint - Join constraint
- Join
Side - Join side. Stores the referred table side during calculations
- Join
Type - Join type
- Param
Values - The parameter value corresponding to the placeholder
- Schema
Reference - Table
Reference - A multi part identifier (path) to a table that may require further
resolution (e.g.
foo.bar
).
Traits§
- Expr
Schema - Provides schema information needed by certain methods of
Expr
(defined in the datafusion-common crate). - Schema
Ext - DataFusion-specific extensions to
Schema
. - ToDF
Schema - Convenience trait to convert Schema like things to DFSchema and DFSchemaRef with fewer keystrokes
Functions§
- aggregate_
functional_ dependencies - Calculates functional dependencies for aggregate output, when there is a GROUP BY expression.
- get_
required_ group_ by_ exprs_ indices - Returns indices for the minimal subset of GROUP BY expressions that are functionally equivalent to the original set of GROUP BY expressions.
- get_
target_ functional_ dependencies - Returns target indices, for the determinant keys that are inside group by expressions.
- qualified_
name
Type Aliases§
- DFSchema
Ref - A reference-counted reference to a DFSchema.
- HashMap
- HashSet