scoop匯入資料從mysql到hive
mysql裡的表格式:
desc track_log18;CREATE TABLE `track_log18` (
`id` varchar(1000) DEFAULT NULL,
`url` varchar(5000) DEFAULT NULL,
`referer` varchar(5000) DEFAULT NULL,
`keyword` varchar(5000) DEFAULT NULL,
`type` varchar(1000) DEFAULT NULL,
`guid` varchar(1000) DEFAULT NULL,
`pageId` varchar(1000) DEFAULT NULL,
`moduleId` varchar(1000) DEFAULT NULL,
`linkId` varchar(1000) DEFAULT NULL,
`attachedInfo` varchar(1000) DEFAULT NULL,
`sessionId` varchar(1000) DEFAULT NULL,
`trackerU` varchar(1000) DEFAULT NULL,
`trackerType` varchar(1000) DEFAULT NULL,
`ip` varchar(1000) DEFAULT NULL,
`trackerSrc` varchar(1000) DEFAULT NULL,
`cookie` varchar(5000) DEFAULT NULL,
`orderCode` varchar(1000) DEFAULT NULL,
`trackTime` varchar(1000) DEFAULT NULL,
`endUserId` varchar(1000) DEFAULT NULL,
`firstLink` varchar(1000) DEFAULT NULL,
`sessionViewNo` varchar(5000) DEFAULT NULL,
`productId` varchar(1000) DEFAULT NULL,
`curMerchantId` varchar(1000) DEFAULT NULL,
`provinceId` varchar(1000) DEFAULT NULL,
`cityId` varchar(1000) DEFAULT NULL,
`ds` varchar(20) DEFAULT NULL, //ds 在hive表裡是分割槽欄位
`hour` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1; //hour在hive表裡是分割槽欄位
1 直接匯入到hdfs的檔案系統
表格式如下:
desc track_log;
id string
url string
。。。
cityid string
ds string
hour string
# Partition Information
# col_name data_type comment
ds string
hour string
jimmy>sqoop import --connect jdbc:mysql://localhost:3306/track_log --username root --password Nokia123
--table track_log18 //mysql的源表
--target-dir /user/hive/warehouse/track_log/ds=20150827/hour=18 //直接到hdfs,
--split-by id //根據id分段生成多個檔案
結果自動生成多個檔案:
-rw-r--r-- 1 jimmy supergroup 0 2016-12-18 15:17 /user/hive/warehouse/track_log/ds=20150827/hour=18/_SUCCESS
-rw-r--r-- 1 jimmy supergroup 0 2016-12-18 15:17 /user/hive/warehouse/track_log/ds=20150827/hour=18/part-m-00000
-rw-r--r-- 1 jimmy supergroup 13711664 2016-12-18 15:17 /user/hive/warehouse/track_log/ds=20150827/hour=18/part-m-00001
-rw-r--r-- 1 jimmy supergroup 2712180 2016-12-18 15:17 /user/hive/warehouse/track_log/ds=20150827/hour=18/part-m-00002
-rw-r--r-- 1 jimmy supergroup 2655849 2016-12-18 15:17 /user/hive/warehouse/track_log/ds=20150827/hour=18/part-m-00003
-rw-r--r-- 1 jimmy supergroup 2576800 2016-12-18 15:17 /user/hive/warehouse/track_log/ds=20150827/hour=18/part-m-00004
-rw-r--r-- 1 jimmy supergroup 1391853 2016-12-18 15:17 /user/hive/warehouse/track_log/ds=20150827/hour=18/part-m-00005
注意:
A)匯入後還要在hive裡指定分割槽地址:
hive》alter table track_log add partition(ds='20150828' ,hour='17') location '/user/hive/warehouse/track_log/ds=20150827/hour=18';
B)hive查詢時候有問題 ,比如select id from track_log時候返回多列
2.匯入到hive表裡
這裡表track_log19從track_log拷貝而來,就沒有分割槽了
hive>create table track_log19 as select * from track_log;
表格式如下:
desc track_log19;
OK
id string
...
ds string //ds仍然是欄位,但不是分割槽
hour string //hour仍然是欄位,但不是分割槽
jimmy>sqoop import --connect jdbc:mysql://localhost:3306/track_log --username root --password Nokia123 - -table track_log19 //源表
--hive-import
--hive-table track_log19 //目的表
--hive-overwrite
-m 1 //(最後生成一個檔案)
結果(直接到warehouse下目錄生成檔案track_log19)
drwxrwxrwx - jimmy supergroup 0 2016-12-18 15:17 /user/hive/warehouse/track_log
drwxrwxrwx - jimmy supergroup 0 2016-12-18 15:35 /user/hive/warehouse/track_log19
相關推薦
scoop匯入資料從mysql到hive
mysql裡的表格式: desc track_log18;CREATE TABLE `track_log18` ( `id` varchar(1000) DEFAULT NULL, `url` varchar(5000) DEFAULT NULL, `refer
Oracle 使用SQL Loader 從外部匯入資料
在專案中經常會有一些基礎資料需要從Excel或其他檔案中匯入。大部分的格式都是樹結構。如果是這樣,我們對資料稍加整理,即可使用Oracle的資料匯入工具SQL Loader匯入我們所需要的資料到指定的表中。SQL Loader的詳細用法,可自己查詢相關詳細的文件,這裡只做簡單的使用介紹。 1
使用Sqoop將資料從RDBMS(關係型資料庫) 到hdfs和Hive的匯入匯出
一、RDBMS 到 HDFS/HIVE 1.首先啟動Mysql service mysql start 2.在mysql中新建一張表並插入資料 # mysql -uroot -proot mysql> create table dept(id int pri
利用sqoop指定列指定條件的方式將資料從mysql中增量匯入hive表中
========1、sqoop增量(指定列指定條件的方式增量匯入hive表中)匯入hive指令碼======= #!/bin/bash #Set the RDBMS connection params rdbms_ip=$1 rdbms_connect="jdbc:mysq
利用sqoop把資料從SqlServer匯入到Hadoop
一、sqoop安裝和配置 1.下載和解壓,設定環境變數(略) 2.配置 修改sqoop/server/conf/catalina.properties common.loader==SQOOP_HOME新增/usr/local/src/sqoop-1.99.4-bin-
學習筆記:從0開始學習大資料-28. solr儲存資料在hdfs並從mysql匯入資料
環境 centos7 hadoop2.6.0 solr-7.5.0 一、建立hdfs為儲存的core 1.在hdfs建立索引資料目錄 [[email protected] bin]# hadoop fs -mkdir /user/solr/ [[email&
sqoop使用,從hive向oracle匯入資料
author: lf sqoop export 使用說明 --export-dir 和 (--table和--call中的一個)是必須的。 指定了將要填充的表(或將要呼叫的儲存過程),以及hdfs包含資源資料的目錄 --columns 預設將查詢出表中所有的欄位。通過
hive 從Excel中匯入資料
拿到Excel表後將資料保留,其他的亂七八糟都刪掉,然後另存為txt格式的文字,用nodepad++將文字轉換為UTF-8編碼,此處命名為cityprovince.txt 將cityprovince.txt傳入操作的Linux環境中 hive建表,注
用java實現從txt文字檔案批量匯入資料至資料庫
今天同事讓我準備一個專案的測試資料,要向一個表中插入上千條記錄,並且保證每條記錄內容不同,如果用手工一條一條插入肯定是不可能,也不會有哪個SB去做這樣的事,我最開始想到了用迴圈,但要求插入的記錄內容不能相同,用迴圈實現比較麻煩,於是我想到了將記錄從文字檔案匯入至資料庫(其實
【學習OpenCV】通過DLL實現影象資料從.dat匯入Mat
目的:主要為了將C++的影象處理部分交給C#介面,特此學習怎麼用DLL。 一、生成DLL 1、在vs中建立名為datFile的dll專案,設定包含目錄和庫目錄為opencv路徑 2、編寫datFile類的標頭檔案和實現 datFile.h #ifndef DATFILE_H
一個小例子集合xlrd,matplotlib,numpy,scipy使用方法(從Excel匯入資料)
最近因為一篇論文的原因,要從Excel中取得部分資料平作圖,但是得到的圖都是點陣圖,不是太好插入到論文中,因此,決定使用Python畫圖來解決此問題(不使用MATLAB的原因在於它畫出的圖是在是不好看呀) 首先使用的庫是xlrd庫,此庫的作用是從讀取Exc
使用sqoop將資料從hdfs中匯入mysql時,卡在INFO mapreduce.Job: map 100% reduce 0%的解決辦法
最近在將hdfs中已經處理好的資料匯入到mysql的時候遇到這麼一個現象,當任務執行到 INFO mapreduce.Job: map 100% reduce 0% mapreduce任務卡在map100% ,任何reduce不繼續執行。 總結了以下解決辦法: 一,如果沒
SQLite3建立資料庫的方法 和 SQLite從Excel檔案中匯入資料 及 python/qpython sqlite 中文 亂碼
之一 有關SQLite3使用: 1.將sqlite3.exe檔案放在任何位置(本人放在E:\Php) 2.在CMD下進入到E:\Php下(cd .. cd E:\php) PS:進入其他驅動盤不需要打cd命令,比如進入D盤打D:\就可以了。cd命令是開啟檔案目
SQLite從Excel檔案中匯入資料
Android客戶端開發的時候使用了SQLite資料庫,為了測試,需要將一些excel檔案中的資料匯入到資料庫的表中,下面是幾個步驟:資料庫表的定義: create table bookroom(id integer, roomname nvarchar(2
solr5.5之從資料庫中匯入資料並建立索引
前面已經介紹了solr-5.5.0的安裝與部署,接下來我將分享solr-5.5.0資料匯入之從資料庫中匯入資料並建立索引的例子。由於本人也是剛剛接觸solr,不足之處,請大家多多見諒。solr和lucene版本更新太快了,版本之間的差異十分大。比如之前的版本中,在core中
使用 SqlBulkCopy 批量從execl中匯入資料
string text11 = "E:/UserFile/201638114343778799.xls"; //批量從execl中匯入資料 string strConn = "Provider=Microsoft.ACE.OLEDB.12.0
Solr從資料庫匯入資料
一. 資料匯入(DataImportHandler-DIH) DIH 是solr 提供的一種針對資料庫、xml/HTTP、富文字物件匯入到solr 索引庫的工具包。這裡只針對資料庫做介紹。 A、準備以下jar包 apache-solr-dataimporthandl
ORACLE 批量插入 主鍵為自增序列 有幾個欄位資料從其他表匯入的 有幾個是固定的
ORACLE 批量插入 主鍵為自增序列 有幾個欄位資料從其他表匯入的 有幾個是固定的 insert into CUSTOMERPRODUCTCATEGORY----------目標表 (CUSTOMERPRODUCTCATEGORYID,ORIGINALID,WE
向HBase中匯入資料3:使用MapReduce從HDFS或本地檔案中讀取資料並寫入HBase(增加使用Reduce批量插入)
前面我們介紹了:為了提高插入效率,我們在前面只使用map的基礎上增加使用reduce,思想是使用map-reduce操作,將rowkey相同的項規約到同一個reduce中,再在reduce中構建put物件實現批量插入測試資料如下:注意到有兩條記錄是相似的。package cn
利用poi從excel中匯入資料到資料庫
最近遇到了從excel向資料庫匯入資料的情況,利用POI技術實現資料的匯入: 前臺頁面程式碼如下: <input type="file" name="" id="file" style="width: 165px"> <button type="butto