2015-05-25 4 views
1

У меня есть данные о ТБ в моем хранилище улья, я пытаюсь включить мгновенное сжатие для них. Я знаю, что мы можем позволить улья сжатие с использованиемКак включить мгновенное сжатие для всех загруженных данных в улье?

hive> SET hive.exec.compress.output=true; 
hive> SET mapred.output.compression.codec=org.apache.hadoop.io.compress.SnappyCodec; 

при загрузке данных в улей, Но как я сжимать данные, которые уже загружены.

ответ

1

Улей ORCFile поддерживает сжатое хранилище. Чтобы преобразовать существующие данные в ORCFile, создать новую таблицу с той же схемой, что и таблица источника и хранятся в виде орки, см ниже: -

CREATE TABLE A_ORC ( 
    customerID int, name string, ..etc 
) STORED AS ORC tblproperties (“orc.compress" = “SNAPPY”); 

INSERT INTO A_ORC SELECT * FROM A; 

Здесь A_ORC является новой таблицей и является исходной таблицей

Here you can learn more about ORCFile.