Package io.deephaven.iceberg.util
Class InferenceResolver
java.lang.Object
io.deephaven.iceberg.util.InferenceResolver
- All Implemented Interfaces:
ResolverProvider
This provides a consolidated set of inference options for use in
LoadTableOptions
. This is useful when the
caller does not know the structure of the table to be loaded, and wants the resulting Deephaven definition (and
mapping to the Iceberg fields) to be inferred. This is a counterpart to the more advanced
InferenceInstructions
, which requires the callers to be more explicit about the Schema
.-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic InferenceResolver.Builder
builder()
boolean
If inference should fail if any of the Iceberg fields fail to map to Deephaven columns.boolean
IfPartitioning
columns should be inferred based on thelatest spec
.The namer factory.schema()
The schema to use for inference.
-
Constructor Details
-
InferenceResolver
public InferenceResolver()
-
-
Method Details
-
builder
-
inferPartitioningColumns
@Default public boolean inferPartitioningColumns()IfPartitioning
columns should be inferred based on thelatest spec
. By default, isfalse
.Warning: inferring partition columns for general-purpose use is dangerous. This is only meant to be applied in situations where caller knows that the
latest spec
is safe to use for inference.- See Also:
-
failOnUnsupportedTypes
@Default public boolean failOnUnsupportedTypes()If inference should fail if any of the Iceberg fields fail to map to Deephaven columns. By default, isfalse
. -
namerFactory
The namer factory. Defaults tofieldName("_")
, which will create Deephaven column name by joining together thefield names
with an underscore andlegalize
the name if necessary. -
schema
The schema to use for inference. By default, isSchemaProvider.fromCurrent()
.
-