Crate datafusion_common
source ·Re-exports
pub use file_options::file_type::FileCompressionType;
pub use file_options::file_type::FileType;
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 file_options::FileTypeWriterOptions;
pub use scalar::ScalarType;
pub use scalar::ScalarValue;
pub use stats::ColumnStatistics;
pub use stats::Statistics;
pub use utils::project_schema;
Modules
- 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. - Runtime configuration, via
ConfigOptions
- Types for plan display
- Options related to how files should be written
- Interval parsing logic
- This module provides ScalarValue, an enum that can be used for storage of single elements
- This module provides data structures to represent statistics
- Utility functions to make testing DataFusion based crates easier
- This module provides common traits for visiting or rewriting tree data structures easily.
- This module provides the bisect function, which implements binary search.
Macros
- A macro to assert that one string is contained within another with a nice error message if they are not.
- A macro to assert that one string is NOT contained within another with a nice error message if they are are.
- 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. - Convenience macro to create
ExtensionsOptions
. - Unwrap an
Option
if possible. Otherwise return anDataFusionError::Internal
. In normal usage of DataFusion the unwrap should always succeed.
Structs
- A named reference to a qualified field in a schema.
- This object encapsulates a list of functional constraints:
- DFField wraps an Arrow field and adds an optional qualifier
- DFSchema wraps an Arrow schema and adds relation names
- 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/
- This object encapsulates all functional dependencies in a given relation.
- A resolved path to a table of the form “catalog.schema.table”
- Options for unnesting a column that contains a list type, replicating values in the other, non nested rows.
Enums
- DataFusion error
- Describes functional dependency mode.
- Join constraint
- Join type
- Schema-related errors
TableReference
s represent a multi part identifier (path) to a table that may require further resolution.
Traits
- Provides schema information needed by certain methods of
Expr
(defined in the datafusion-common crate). - DataFusion-specific extensions to [
Schema
]. - Convenience trait to convert Schema like things to DFSchema and DFSchemaRef with fewer keystrokes
Functions
- Calculates functional dependencies for aggregate output, when there is a GROUP BY expression.
- Create a “field not found” DataFusion::SchemaError
- Returns target indices, for the determinant keys that are inside group by expressions.
- Convenience wrapper over
field_not_found
for when there is no qualifier
Type Aliases
- A reference-counted reference to a
DFSchema
. - This is a
TableReference
that has ’static lifetime (aka it owns the underlying string) - Result type for operations that could result in an DataFusionError
- Result type for operations that could result in an DataFusionError and needs to be shared (wrapped into
Arc
).