24
A
回答
49
您可以將文本文件加載到文本文件Hive表中,然後將該表中的數據插入到您的序列文件中。
開始用製表符分隔的文件:
% cat /tmp/input.txt
a b
a2 b2
創建序列文件
hive> create table test_sq(k string, v string) stored as sequencefile;
嘗試加載;如預期,這將失敗:
hive> load data local inpath '/tmp/input.txt' into table test_sq;
但與此表:
hive> create table test_t(k string, v string) row format delimited fields terminated by '\t' stored as textfile;
負荷工作得很好:
hive> load data local inpath '/tmp/input.txt' into table test_t;
OK
hive> select * from test_t;
OK
a b
a2 b2
現在裝入從文本表中序列表:
insert into table test_sq select * from test_t;
也可以用加載/插入覆蓋來替換全部。
1
您不能直接創建存儲爲序列文件的表並向其中插入文本。你必須這樣做:
- 創建存儲爲文本
- 插入文本文件到文本表
- 表做一個CTAS創建存儲作爲一個序列文件表。
- 如果需要
刪除文本表舉例:
CREATE TABLE test_txt(field1 int, field2 string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
LOAD DATA INPATH '/path/to/file.tsv';
CREATE TABLE test STORED AS SEQUENCEFILE
AS SELECT * FROM test_txt;
DROP TABLE test_txt;
相關問題
- 1. Hive加載文件到表副本
- 2. 將csv文件加載到Hive表
- 3. 將數據從.txt文件加載到表中作爲ORC存儲在Hive中
- 4. 如何使用RegexSerDe將日誌文件加載到Hive表中?
- 5. 如何將多個文件加載到Hive表中?
- 6. 如何加載文本文件,並存儲到數據結構
- 7. 無法將P7B文件加載到密鑰存儲文件中
- 8. 從文本文件中將多行xml數據加載到Hive表中
- 9. 將Hive上下文加載到表中
- 10. Apache Pig:如何加載存儲在hdfs中的序列文件?
- 11. 如何將外部創建的ORC文件加載到存儲爲ORC的HIVE表中?
- 12. 使用python將文件列表保存到文本文件中
- 13. 文本文件不會將信息加載到列表框中
- 14. 將文本文件加載到列表框中
- 15. HDFS與本地文件加載到Hive表中的數據
- 16. 將文本文件加載到jTable中
- 17. 如何將此文本文件保存到python列表中
- 18. 如何使用文本列中的\ n符號將csv文件加載到Hive表格
- 19. 從文本文件存儲列表
- 20. 如何將文件添加到基於文件的存儲庫?
- 21. bash腳本中的hive命令將不會將文件加載到表中
- 22. 如何加載文件名存儲在數組中的文件?
- 23. 存儲文本從文件到陣列
- 24. 如何將csv文件加載到具有多行列的Hive表格
- 25. 如何將文件從文件列表存儲到c中的變量#
- 26. 在Dir中的文本文件並將文件名存儲在列表中python
- 27. 如何將本地數據存儲下載到csv文件中?
- 28. Efficientway保存/加載列表項到文本文件android
- 29. 將多個文件加載到HIVE表中
- 30. 如何在JAVA列表中存儲第一行文本文件
算得上直接完成,我們可以加載到序列格式表的東西從TSV文件,而無需中間保存到其他表? – Bohdan
不,它不能完成。上面的方法是將數據加載到序列文件的唯一最簡單的方法。 apche wiki也重申了這一點https://cwiki.apache.org/confluence/display/Hive/CompressedStorage –