A strategy that determines how a hive metastore schema is evolved for a given target schema.
Strategy responsible for the filenames created by eel when writing out data.
A Hive Part that can read values from the metastore, rather than reading values from files.
A Hive Part that can read values from the metastore, rather than reading values from files. This can be used only when the requested fields are all partition keys.
sets which fields are required by the caller.
optional predicate which will filter rows at the read level
Accepts a metastore schema and returns the schema that should actually be persisted to disk.
Accepts a metastore schema and returns the schema that should actually be persisted to disk. This allows us to determine if some data is not written, for example in parquet files it is common to skip writing out partition data, since that data is present in the metastore.
The AdditionEvolutionStrategy will add any missing fields to the schema in the hive metastore.
The AdditionEvolutionStrategy will add any missing fields to the schema in the hive metastore. It will not check that any existing fields are of the same type as in the metastore. The new fields cannot be added as partition fields.
Locates files for a given table.
Locates files for a given table.
Connects to the hive metastore to get the partitions list (or if no partitions then just root) and scans those directories.
Returns a Map of each partition to the files in that partition.
If partition constraints are specified then those partitions are filtered out.
An AlignmentStrategy that will use default values, or nulls, to pad out rows to match the target schema.
This strategy will drop partition columns from the schema so that they not written out to the files.
A strategy that determines how a hive metastore schema is evolved for a given target schema.
For example, a strategy may choose to alter the hive table to add any missing columns. Or it may choose to abort a write by throwing an exception. Or it may choose to leave the schema as is and drop the columns from the input rows.