/** * Hive (parquet) table type. * * Hive partitions are *new* columns at write time, distinct from data * columns: their identity is the partition name and the validator forbids * shadowing an existing data column. */ import { Violation } from '../model'; import { TableTypeBase } from '../table-type'; /** Hive (parquet) table. */ export declare class HiveParquetTable extends TableTypeBase { /** * Validate a column type against the Hive type registry. * * @param type Type string from a column definition. * @returns True when the type is a valid Hive type. */ isValidColumnType(type: string): boolean; /** * Hive partition rules. * * Emits: `NO_DUPLICATE_PARTITIONS` (by partition name), * `HIVE_PARTITION_NOT_IN_COLUMNS` (a Hive partition is a new column, so * it must not collide with a data column), and `HIVE_PARTITION_TYPE_VALID`. * * @returns Every partition-related violation. */ partitionViolations(): Violation[]; /** * Hive engine-specific rules: bucketing and table properties. * * @returns Every engine-specific violation. */ engineSpecificViolations(): Violation[]; /** * Validate the skew spec. * * Emits `HIVE_SKEW_COLUMN_EXISTS`, `HIVE_SKEW_NO_DUPLICATE_COLUMNS`, and * `HIVE_SKEW_VALUE_ARITY` (each `on` tuple has one value per skewed column). * * @returns Every skew-related violation. */ private skewedByViolations; /** * Validate the storage format. * * Emits `HIVE_STORAGE_FORMAT_VALID` (a known Hive format) and * `HIVE_STORAGE_FORMAT_PARQUET` (a `hive_parquet` table must use Parquet). * * @returns Every storage-related violation. */ private storageViolations; /** * Validate the closed-domain Hive table properties and the * Parquet-vs-ORC ACID rule. Keys outside the known set pass through. * * Emits `HIVE_PROPERTY_ENUM_VALID` and `HIVE_FULL_ACID_REQUIRES_ORC`. * * @returns Every table-property violation. */ private tablePropertyViolations; /** * Validate the bucketing spec. * * Emits `HIVE_BUCKET_NOT_PARTITION_COLUMN`, `HIVE_BUCKET_COLUMN_EXISTS`, * `HIVE_BUCKET_NO_DUPLICATE_COLUMNS`, `HIVE_BUCKET_COUNT_POSITIVE`, * `HIVE_SORT_COLUMN_EXISTS`, and `HIVE_SORT_DIRECTION_VALID`. * * @returns Every bucketing-related violation. */ private bucketingViolations; }