婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 解決hive中導(dǎo)入text文件遇到的坑

解決hive中導(dǎo)入text文件遇到的坑

熱門標(biāo)簽:原裝電話機(jī)器人 工廠智能電話機(jī)器人 西藏智能外呼系統(tǒng)五星服務(wù) 千陽(yáng)自動(dòng)外呼系統(tǒng) 清遠(yuǎn)360地圖標(biāo)注方法 江蘇客服外呼系統(tǒng)廠家 400電話申請(qǐng)服務(wù)商選什么 在哪里辦理400電話號(hào)碼 平頂山外呼系統(tǒng)免費(fèi)

今天幫一同學(xué)導(dǎo)入一個(gè)excel數(shù)據(jù),我把excel保存為txt格式,然后建表導(dǎo)入,失敗!分隔符格式不匹配,無(wú)法導(dǎo)入!?。。≡趺纯磧蛇叾际荺t,怎么不匹配呢?

做為程序員,最不怕的就是失敗,因?yàn)槲覀冇幸活w勇敢的心!再來!又特么失敗。。。

想了好久,看看了看我的表格式,我犯了一個(gè)好低級(jí)的錯(cuò)誤:

hive表的存儲(chǔ)格式設(shè)置為了orcfile!!!

眾所周知:orcfile為壓縮格式,可以節(jié)約大量存儲(chǔ)空間,但orc還有個(gè)特點(diǎn)就是不能直接load數(shù)據(jù)!要想load數(shù)據(jù),我們要建一個(gè)存儲(chǔ)格式為textfile的中間表,然后再把數(shù)據(jù)抽取過去。因?yàn)檫@個(gè)錯(cuò)誤太簡(jiǎn)單,網(wǎng)上有相關(guān)科普,因此很少有把它當(dāng)錯(cuò)誤寫出來。遇到問題的朋友們可能要走些彎路,我來補(bǔ)個(gè)漏~~~~~~

舉個(gè)栗子:

1.首先,導(dǎo)出excel表格為txt格式,(這個(gè)過程不再贅述,網(wǎng)上教程一大把)。

123,小明,666,1990-09-23 12:00:18
256,小伙,555,1989-10-06 03:57:32
142,小蘭,444,1992-07-04 05:05:45

2.在hive中創(chuàng)建表模型:

CREATE TABLE IF NOT EXISTS STUDENTS
(
ID INT COMMENT'學(xué)生',
SNAME STRING COMMENT '姓名',
SCORE INT COMMENT '得分',
STIME STRING COMMENT '考試時(shí)間'
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS ORCFILE;

3.創(chuàng)建臨時(shí)表(中間表):

CREATE TABLE IF NOT EXISTS STUDENTS_TMP
(
ID INT COMMENT'學(xué)生',
SNAME STRING COMMENT '姓名',
SCORE INT COMMENT '得分',
STIME STRING COMMENT '考試時(shí)間'
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS TEXTFILE;

與目標(biāo)表只有名稱和存儲(chǔ)格式不同,其他都相同。

4.load 數(shù)據(jù)到臨時(shí)表:

load data local inpath '/export/data/1.txt' into table students_tmp;

5.將數(shù)據(jù)導(dǎo)入目標(biāo)表:

insert overwrite table students select * from students_tmp;

6.然后查看表數(shù)據(jù),大功造成:

hive > select * from students;
OK
123 小明 666 1990-09-23 12:00:18
256 小伙 555 1989-10-06 03:57:32
142 小蘭 444 1992-07-04 05:05:45
Time taken: 0.26 seconds, Fetched: 3 row(s)

其他存儲(chǔ)格式如 SEQUENCEFILE、PARQUET 等,也要選存儲(chǔ)為textfile格式,然后抽入目標(biāo)表。

一定要按照導(dǎo)出格式的分隔符建表,不然load數(shù)據(jù)必然出錯(cuò)或全是null;

excel導(dǎo)出格式:

格式 分隔符 中文名稱
text \t  制表符
csv , 逗號(hào)

7.還要注意一點(diǎn)是我們從excel導(dǎo)出的文件格式是gb2312 (無(wú)論是txt還是csv都是這個(gè)格式,都需要轉(zhuǎn)碼),我們需要把它轉(zhuǎn)成utf-8才能Load。

所以在load之前,我們一般會(huì)采取兩種辦法:

1. 在文本編輯器中進(jìn)行轉(zhuǎn)碼,帶不帶bom關(guān)系不大,然后上傳;

2.在文件所在本地目錄下執(zhí)行以下命令轉(zhuǎn)碼:

piconv -f gb2312 -t UTF-8 1.txt > 2.txt

注意,在本地目錄下命令轉(zhuǎn)碼會(huì)改變文件名,因?yàn)榇嗣顣?huì)把所文件寫入到另一個(gè)文件,并清空原文件內(nèi)容,如果我們不改名,文件內(nèi)容會(huì)完全丟失。所以,我們Load的時(shí)候一定要選擇修改后的文件名哦。

示例:

轉(zhuǎn)碼前數(shù)據(jù):

hive> select * from students;
OK
112	��	35	2017/8/19 15:30
113	����	45	
114	³��	55	2017/8/21 15:30
115	����	NULL	
116	������	75	2017/8/23 15:30
117	������	85	2017/8/24 15:30
118	�˽�	NULL	2017/8/25 15:30
119	������	90	
120	СѾ	NULL	2017/8/27 15:30
121	����	80	2017/8/28 15:30
122	��߸	75	
123	��«��	70	2017/8/30 15:30
124	����	NULL	2017/8/31 15:30
125	�繤	NULL	
126	�嶠	NULL	2017/9/2 15:30
127	˾��	50	2017/9/3 15:30
128	������	58	2017/9/4 15:30
129	����	66	2017/9/5 15:30
Time taken: 0.134 seconds, Fetched: 18 row(s)

去所在目錄下轉(zhuǎn)碼,再Load

piconv -f gb2312 -t UTF-8 2.csv > 3.csv
# 在hive中選擇正確的文件Load:
hive> load data local inpath '/export/data/3.csv' into table students;

結(jié)果:

hive> select * from students;
OK
112	小寶	35	2017/8/19 15:30
113	王明	45	
114	魯班	55	2017/8/21 15:30
115	苗苗	NULL	
116	少林寺	75	2017/8/23 15:30
117	體育界	85	2017/8/24 15:30
118	八戒	NULL	2017/8/25 15:30
119	周芷若	90	
120	小丫	NULL	2017/8/27 15:30
121	海寶	80	2017/8/28 15:30
122	哪吒	75	
123	葫蘆娃	70	2017/8/30 15:30
124	丹楓	NULL	2017/8/31 15:30
125	電工	NULL	
126	村長(zhǎng)	NULL	2017/9/2 15:30
127	司機(jī)	50	2017/9/3 15:30
128	王世間	58	2017/9/4 15:30
129	松鼠	66	2017/9/5 15:30
Time taken: 0.106 seconds, Fetched: 18 row(s)

補(bǔ)充:hive導(dǎo)入數(shù)據(jù)出現(xiàn)NULL

在把hdfs上數(shù)據(jù)遷移到hive中的表時(shí),若出現(xiàn)數(shù)據(jù)位NULL,是因?yàn)闆]有指定列分隔符。

由于hive默認(rèn)的分隔符是/u0001(Ctrl+A),為了平滑遷移,需要在創(chuàng)建表格時(shí)指定數(shù)據(jù)的分割符號(hào),語(yǔ)法如下:

hive (default)> create external table et (time BIGINT, userid string, content string, urlrank int, urlnum int, url string)
  > partitioned by (filenum int) 
  > row format delimited fields terminated by '\t'; 

上面創(chuàng)建的是外部表,“導(dǎo)入”數(shù)據(jù)時(shí)可以用load,但若不想進(jìn)行移動(dòng)數(shù)據(jù),就用命令alter來進(jìn)行指向:

alter table et add partition (filenum=1) location '/input/SogouQueryLog/file1';

注意location后面跟的地址必須是個(gè)目錄,若不是,可以用hdfs fs -mv src dest 進(jìn)行移動(dòng)數(shù)據(jù):

hadoop fs -mv /input/SogouQueryLog/querylog_1 /input/SogouQueryLog/file1

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 在python中使用pyspark讀寫Hive數(shù)據(jù)操作
  • 使用Python構(gòu)造hive insert語(yǔ)句說明
  • python3.6.5基于kerberos認(rèn)證的hive和hdfs連接調(diào)用方式
  • python 實(shí)現(xiàn) hive中類似 lateral view explode的功能示例
  • Python pandas 列轉(zhuǎn)行操作詳解(類似hive中explode方法)

標(biāo)簽:日照 安慶 白城 錦州 隨州 西安 天水 股票

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《解決hive中導(dǎo)入text文件遇到的坑》,本文關(guān)鍵詞  解決,hive,中,導(dǎo)入,text,文件,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《解決hive中導(dǎo)入text文件遇到的坑》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于解決hive中導(dǎo)入text文件遇到的坑的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日韩高清国产一区在线| 99久久99久久精品免费观看| 日本色综合中文字幕| 成人app网站| 久久综合色鬼综合色| 久久99精品国产| 久久午夜免费电影| 麻豆精品久久久| 777xxx欧美| 国产经典欧美精品| 国产日韩影视精品| 99久久夜色精品国产网站| 久久精品综合网| www..com久久爱| 国产精品入口麻豆九色| 麻豆精品一二三| 欧美一区二区三区婷婷月色 | 美女在线视频一区| 不卡高清视频专区| 日韩三级高清在线| 国产在线一区观看| 2024国产精品视频| 国产99久久久国产精品潘金| 国产亚洲福利社区一区| 成人黄色软件下载| 一区二区三区四区av| 欧美性猛片xxxx免费看久爱| 日本不卡123| 国产人成亚洲第一网站在线播放| 国产精品亚洲а∨天堂免在线| 久久久久国产一区二区三区四区| 国内精品伊人久久久久av一坑| 久久久久9999亚洲精品| 欧美亚洲图片小说| 麻豆国产精品官网| 一区二区三区欧美在线观看| 4438成人网| 成人精品电影在线观看| 亚洲综合男人的天堂| 欧美一区二区三区四区五区| 99视频在线精品| 日韩黄色在线观看| 亚洲三级电影网站| 精品乱人伦小说| 色欧美片视频在线观看| 国产精品亚洲视频| 免费高清视频精品| 亚洲一区二区三区四区在线观看| 91精品国产91综合久久蜜臀| 色综合天天视频在线观看| av中文字幕一区| av在线综合网| 色香色香欲天天天影视综合网| 捆绑紧缚一区二区三区视频| 秋霞午夜鲁丝一区二区老狼| 亚洲欧美国产高清| 91麻豆精品国产91久久久久久久久| av资源网一区| 福利一区福利二区| 99精品国产视频| 波多野结衣欧美| 色偷偷久久一区二区三区| 色综合天天综合色综合av| 日本精品一级二级| 欧美日韩不卡在线| 日韩一区二区麻豆国产| 亚洲精品乱码久久久久久久久 | 欧洲一区在线观看| 欧美日韩电影一区| 欧美精品一区二区精品网| 中文av一区二区| 亚洲v精品v日韩v欧美v专区| 加勒比av一区二区| 96av麻豆蜜桃一区二区| 欧美一区2区视频在线观看| 中文子幕无线码一区tr| 天天影视色香欲综合网老头| 国产毛片一区二区| 欧美三区免费完整视频在线观看| 欧美一区日本一区韩国一区| 夜夜精品浪潮av一区二区三区| 亚洲图片欧美色图| 色噜噜狠狠色综合欧洲selulu| 精品久久久久久亚洲综合网| 4438亚洲最大| www.综合网.com| 欧美www视频| 中文字幕色av一区二区三区| 国产成人欧美日韩在线电影| 国产乱码字幕精品高清av| 9191成人精品久久| 国产精品国产自产拍在线| 久草精品在线观看| 久久久久成人黄色影片| 国产一二精品视频| 久久精品视频在线看| 黄网站免费久久| 91精品国产91久久久久久一区二区| 亚洲成人精品一区| 久久精品72免费观看| 欧美tk—视频vk| 国产精品一区二区三区99| 久久久不卡网国产精品一区| 久久91精品久久久久久秒播| 久久综合99re88久久爱| 污片在线观看一区二区| 4438亚洲最大| 成人永久aaa| 亚洲福利一区二区| 日韩欧美一级在线播放| 国产成a人无v码亚洲福利| 亚洲女人的天堂| 精品久久久久久综合日本欧美| www.视频一区| 精品一二线国产| 亚洲欧美国产高清| 日韩欧美国产小视频| 91麻豆福利精品推荐| 六月丁香综合在线视频| 国产精品白丝在线| 精品免费视频.| 在线视频国产一区| 国产v日产∨综合v精品视频| 日本va欧美va精品发布| 亚洲夂夂婷婷色拍ww47| 亚洲男人的天堂在线观看| 久久免费视频一区| 91精品国产色综合久久ai换脸| 日本乱码高清不卡字幕| 成人av电影免费在线播放| 国产在线精品一区二区不卡了| 亚洲成人在线观看视频| 亚洲免费在线视频| 亚洲二区视频在线| 天涯成人国产亚洲精品一区av| 国产精品久99| 中文字幕免费在线观看视频一区| 精品国产免费久久| 中文字幕中文字幕在线一区 | 一区二区三区加勒比av| 亚洲成人免费看| 自拍偷拍欧美精品| 国产精品久久久久影院色老大| 欧美国产精品一区| 亚洲综合av网| 久久99精品国产91久久来源| 国产成人日日夜夜| 久久婷婷国产综合精品青草| 日本91福利区| 91精品黄色片免费大全| 亚洲激情图片一区| 99久久综合精品| 国产欧美一区二区三区鸳鸯浴 | 日韩av中文字幕一区二区| 国产福利一区在线| 国产精品私人自拍| 国产精品一区二区果冻传媒| 久久免费视频一区| av不卡在线播放| 亚洲夂夂婷婷色拍ww47| 欧美三日本三级三级在线播放| 亚洲综合一二区| 制服丝袜成人动漫| 国产精品一线二线三线| 亚洲欧洲精品成人久久奇米网| 国产91精品免费| 亚洲国产高清在线观看视频| 欧美视频在线一区二区三区 | 国产精品中文字幕欧美| 国产精品亲子伦对白| 欧美专区在线观看一区| 韩国女主播成人在线| 亚洲精品欧美激情| 国产午夜精品一区二区三区视频| 国产成人免费在线视频| 亚洲国产一区二区视频| 久久综合99re88久久爱| 欧美日韩高清影院| 91丝袜美腿高跟国产极品老师| 久久丁香综合五月国产三级网站| 亚洲美女区一区| 久久精品视频在线免费观看| 日韩欧美亚洲国产精品字幕久久久| 丁香激情综合国产| 狠狠久久亚洲欧美| 亚洲福利一区二区三区| 亚洲男同性恋视频| 亚洲欧美日韩国产综合在线| 国产人伦精品一区二区| 久久亚洲精品国产精品紫薇| 精品久久久久一区| 欧美视频中文一区二区三区在线观看| 成人免费av资源| 91在线观看一区二区| 成人黄色av网站在线| 岛国一区二区在线观看| 久久精品久久久精品美女| 性做久久久久久免费观看欧美| 国产欧美日韩亚州综合 | 日韩精品成人一区二区三区|