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

主頁 > 知識庫 > 解決sqoop import 導入到hive后數據量變多的問題

解決sqoop import 導入到hive后數據量變多的問題

熱門標簽:辦公外呼電話系統 漯河外呼電話系統 重慶自動外呼系統定制 美容工作室地圖標注 地圖標注和圖片名稱的區別 合肥公司外呼系統運營商 海豐有多少商家沒有地圖標注 外呼調研系統 打電話智能電銷機器人授權

使用sqoop import 命令從postgresql導入數據到hive中,發現數據行數變多了,但是任務沒有跑錯,非常奇怪。

導入語句為:

sqoop import 
--connect jdbc:postgresql://*.*.*.*:5432/database_name 
--username name111 
--password password111 
--table table111 
--hive-import 
--hive-database database111 
--hive-table hive_table111 
--hive-overwrite 
--delete-target-dir 
--hive-drop-import-delims 
--null-string ''
 --null-non-string '' 
 -m5

導入前pgsql數據量為3698條,但是導入后再hive中的數據量為3938,數據竟然變多了。最后發現將參數-m5,改為-m1即可解決問題。

為什么呢?

我們先來了解一下參數-m的含義以及sqoop導入的原理。

首先用戶輸入一個 Sqoop import 命令,Sqoop 會從關系型數據庫中獲取元數據信息,比如要操作數據庫表的 schema是什么樣子,這個表有哪些字段,這些字段都是什么數據類型等。它獲取這些信息之后,會將輸入命令轉化為基于 Map 的 MapReduce作業,這樣 MapReduce作業中有很多 Map 任務,每個 Map 任務從數據庫中讀取一片數據,這樣多個 Map 任務實現并發的拷貝,把整個數據快速的拷貝到 HDFS 上。

而決定切分成多少個map就是參數-m的作用,-m5代表切分為5個map,-m1代表切分為1個map,即不用切分。

而決定用什么字段來切分,就是用--split-by來制定的。當sqoop import 沒有定義--split-by時,默認使用源數據表的key作為切分字段。

split-by 根據不同的參數類型有不同的切分方法,如int型,Sqoop會取最大和最小split-by字段值,然后根據傳入的num-mappers來 確定劃分幾個區域。比如select max(split_by),min(split-by) from得到的max(split-by)和min(split-by)分別為1000和1,而num-mappers(-m)為2的話,則會分成兩個區域 (1,500)和(501-1000),同時也會分成2個sql給2個map去進行導入操作,分別為select XXX from table where split-by>=1 and split-by500和select XXX from table where split-by>=501 and split-by=1000.最后每個map各自獲取各自SQL中的數據進行導入工作。

那回到最開始的問題,為什么切分數目不一樣,結果就不一樣呢?理論上無論怎么切分,導入的數據都應該是一樣的,但現在甚至還多了?這是因為,用來切分的字段不友好,不是int型或者有排序規律的。

這種id內容是沒有排序規則的,比如本來10條id切兩份得到(5,5),現在切出來時(5,6),有一個id重復了,就導致數量變多了。

所以解決辦法有兩個:

一是將 -m5 改成 -m1 直接不切分;

二是 --split-by制定另外的字段,換一個int型的或者有明確排序順序的字段。

除了以上這種原因導致數據變多,語句缺少 --hive-drop-import-delims 也可能導致問題的出現,解決如下:

關于在sqoop導入數據的時候,數據量變多的解決方案。

今天使用sqoop導入一張表,我去查數據庫當中的數據量為650條數據,但是我將數據導入到hive表當中的時候出現了563條數據,這就很奇怪了,我以為是數據錯了,然后多導入了幾次數據發現還是一樣的問題。

然后我去查數據字段ID的值然后發現建了主鍵的數據怎么可能為空的那。然后我去看數據庫當中的數據發現,數據在存入的時候不知道加入了什么鬼東西,導致數據從哪一行截斷了,導致多出現了三條數據。下面是有問題的字段。

這里我也不知道數據為啥會是這樣,我猜想是在導入數據的時候hive默認行的分割符號是按照\n的形式導入進來的,到這里遇到了這樣的字符就對其按照下一行進行對待將數據截斷了。

然后我測試了一直自定義的去指定hive的行的分割符號,使用--lines-terminated-by 指定hive的行的分割符號,但是不幸的是好像這個是不能改的。他會報下面的錯誤:

FAILED: SemanticException 1:424 LINES TERMINATED BY only supports newline '\n' right now. Error encountered near token ''\164'' 于是上網找資料,然后發現可以使用一個配置清除掉hive當中默認的分割符號,然后導入數據,配置如下: --hive-drop-import-delims 這個參數是去掉hive默認的分割符號,加上這個參數然后在使用--fields-terminated-by 指定hive的行的分割符號 最終數據導入成功,數據量和原來數庫當中的數據一致。

上面是sqoop腳本的部分內容,下面是執行完hive之后,hive創建的表,字段之間默認的分割符號。

至此問題得到了解決。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 在Hadoop集群環境中為MySQL安裝配置Sqoop的教程
  • sqoop export導出 map100% reduce0% 卡住的多種原因及解決
  • 解決sqoop從postgresql拉數據,報錯TCP/IP連接的問題
  • sqoop讀取postgresql數據庫表格導入到hdfs中的實現
  • sqoop 實現將postgresql表導入hive表
  • 使用shell腳本執行hive、sqoop命令的方法
  • Sqoop的安裝與使用詳細教程

標簽:烏海 衡陽 株洲 來賓 珠海 晉城 錦州 蚌埠

巨人網絡通訊聲明:本文標題《解決sqoop import 導入到hive后數據量變多的問題》,本文關鍵詞  解決,sqoop,import,導入,到,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《解決sqoop import 導入到hive后數據量變多的問題》相關的同類信息!
  • 本頁收集關于解決sqoop import 導入到hive后數據量變多的問題的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲福利电影网| 国产成人在线看| 欧美日韩一区不卡| 天天综合色天天综合色h| 69久久夜色精品国产69蝌蚪网 | 欧美日韩一区二区欧美激情| 日韩av网站在线观看| 久久综合99re88久久爱| 91伊人久久大香线蕉| 午夜精品久久久久久久蜜桃app| 日韩一区二区三区av| 9久草视频在线视频精品| 五月天丁香久久| 久久久久国产精品厨房| 一本一道久久a久久精品| 日韩国产欧美视频| 亚洲日本中文字幕区| 日韩三级免费观看| 欧美午夜免费电影| 成人黄色在线看| 日本不卡不码高清免费观看| 国产精品久久久久久久久免费桃花| 欧美日韩你懂得| 99国产欧美另类久久久精品| 日韩精品色哟哟| 亚洲欧美一区二区三区国产精品 | 成人黄色网址在线观看| 午夜伊人狠狠久久| 国产精品理论片| 日韩欧美一区电影| 欧美羞羞免费网站| 成人福利电影精品一区二区在线观看 | 日韩精品综合一本久道在线视频| 福利视频网站一区二区三区| 午夜精品久久久久久久久久| 亚洲女厕所小便bbb| 中文欧美字幕免费| 精品三级在线看| 日韩一级在线观看| 欧美浪妇xxxx高跟鞋交| 在线一区二区观看| 91国产免费看| 欧美亚洲高清一区| 欧美日韩激情在线| 欧美视频一区二区三区四区 | 欧美精品第1页| 欧美三级中文字| 欧美专区在线观看一区| 欧美三级电影精品| 欧美日韩一本到| 欧美日本在线一区| 欧美视频一区二区三区在线观看| 色欲综合视频天天天| 色综合天天在线| 欧美日韩在线免费视频| 欧美日韩小视频| 欧美电影一区二区| 日韩一本二本av| 久久久www成人免费毛片麻豆| 亚洲精品视频在线看| 色婷婷av一区二区三区软件 | 成人黄色片在线观看| 丁香六月综合激情| 97久久人人超碰| 欧美色综合久久| 91麻豆精品国产91久久久更新时间 | 99久久777色| 在线观看视频一区二区欧美日韩| 欧美性受极品xxxx喷水| 欧美精品丝袜中出| 久久亚洲一区二区三区明星换脸 | 国产精品理论在线观看| 亚洲精品成人a在线观看| 日韩在线一区二区三区| 国产精品一卡二卡在线观看| av电影天堂一区二区在线观看| 欧美亚洲免费在线一区| 精品久久久久久久久久久久久久久| 国产精品女主播在线观看| 亚洲综合色噜噜狠狠| 久久国产精品免费| 91麻豆精品视频| 日韩免费视频一区| 国产精品区一区二区三| 视频一区国产视频| 成人黄色小视频| 欧美电视剧在线看免费| 国产精品美女久久久久aⅴ | 中文字幕欧美三区| 一个色妞综合视频在线观看| 韩国av一区二区三区在线观看| 99精品视频一区二区三区| 91精品国产入口| 亚洲色图一区二区| 国产xxx精品视频大全| 欧美日韩精品欧美日韩精品 | 男女男精品网站| 成人国产精品免费观看| 精品美女在线播放| 亚洲午夜在线观看视频在线| 高清国产一区二区| 欧美成人r级一区二区三区| 亚洲自拍偷拍图区| 99久久精品费精品国产一区二区| 久久影院视频免费| 美国三级日本三级久久99| 欧美私人免费视频| 一区二区三区四区不卡视频| 大胆欧美人体老妇| 久久久久久综合| 久久99久久99| 欧美一区二区视频免费观看| 亚洲第四色夜色| 色综合久久久久久久久久久| 国产欧美日产一区| 国产精品资源在线看| 日韩精品自拍偷拍| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美午夜不卡视频| 亚洲国产美女搞黄色| 91浏览器打开| 亚洲特级片在线| 色一区在线观看| 亚洲色欲色欲www| 99热99精品| 最好看的中文字幕久久| 97久久人人超碰| 亚洲一二三四在线| 欧美日韩国产首页在线观看| 午夜影院久久久| 精品va天堂亚洲国产| 久久99国产精品尤物| 久久久久99精品国产片| 国产制服丝袜一区| 中文字幕一区二区三区视频| 色综合天天综合网国产成人综合天| 中文字幕永久在线不卡| 一本久道久久综合中文字幕| 亚洲成人免费影院| 日韩欧美另类在线| 不卡欧美aaaaa| 洋洋av久久久久久久一区| 国产精品理伦片| 97精品国产露脸对白| 亚洲国产中文字幕在线视频综合 | 亚洲精品久久7777| 欧美久久婷婷综合色| 日韩精品一二三| 国产网站一区二区| 色久综合一二码| 久久精品国产精品亚洲精品| 久久久精品国产免费观看同学| 不卡视频免费播放| 午夜精品一区二区三区电影天堂| 久久久久久久国产精品影院| 99v久久综合狠狠综合久久| 亚洲va在线va天堂| 国产日本欧洲亚洲| 欧美日韩精品欧美日韩精品| 麻豆精品一区二区综合av| 亚洲日本va午夜在线电影| 日韩免费看的电影| 欧洲一区在线电影| 国产一区激情在线| 香蕉成人啪国产精品视频综合网| 26uuu久久天堂性欧美| 91高清在线观看| 国产精品一区一区三区| 视频一区二区欧美| 国产精品精品国产色婷婷| 日韩免费高清av| 欧美体内she精视频| 福利一区二区在线| 久久精品国产77777蜜臀| 亚洲啪啪综合av一区二区三区| 精品剧情v国产在线观看在线| 91极品视觉盛宴| 成人在线视频一区二区| 久久草av在线| 手机精品视频在线观看| 亚洲精品国产成人久久av盗摄| 久久久久国产精品免费免费搜索| 欧美高清视频www夜色资源网| 91网站最新网址| 成人福利视频在线看| 国产一区二区三区在线观看精品 | 日韩精品一区二区三区中文精品| 91麻豆国产福利在线观看| 国产成人av一区二区三区在线 | 亚洲色图欧美在线| 国产人成一区二区三区影院| 欧美一区二区三区视频免费| 色综合久久中文字幕| 99r国产精品| 色噜噜狠狠成人中文综合| 91丝袜美腿高跟国产极品老师| 99久久精品免费精品国产| 粉嫩av一区二区三区在线播放 | 蜜乳av一区二区三区| 婷婷丁香激情综合|