Data optimization
Data file optimization covers the performance improvement on the data files in terms of file format, compression, and storage.
File format
Hive supports TEXTFILE
, SEQUENCEFILE
, AVRO
, RCFILE
, ORC
, and PARQUET
file formats. There are two HQL statements used to specify the file format as follows:
CREATE TABLE ... STORE AS <file_format>
: Specify the file format when creating a tableALTER TABLE ... [PARTITION partition_spec] SET FILEFORMAT <file_format>
: Modify the file format (definition only) in an existing table
Once a table stored in text format is created, we can load text data directly into it. To load text data into tables that have other file formats, we can first load the data into a table stored as text, where we use INSERT OVERWRITE/INTO TABLE ... SELECT
to select data from it and then insert the data into the tables that have other file formats.
Note
To change the default file format for table creation, we can set the hive.default.fileformat = <file_format...