使用windows安全認證連接mysql 如何用sqoop將hive分區(qū)表信息導入到mysql命令?
如何用sqoop將hive分區(qū)表信息導入到mysql命令?問題分析:hive中分區(qū)表的底層是HDFS多個目錄下的單個文件,hive導出數(shù)據(jù)的本質是導出HDFS的文件。hive中的分區(qū)表,因為分區(qū)字段(
如何用sqoop將hive分區(qū)表信息導入到mysql命令?
問題分析:
hive中分區(qū)表的底層是HDFS多個目錄下的單個文件,hive導出數(shù)據(jù)的本質是導出HDFS的文件。
hive中的分區(qū)表,因為分區(qū)字段(靜態(tài)分區(qū))不在文件中,所以在導出sqoop時不能直接導出。
思路:在hive中創(chuàng)建一個臨時表,復制分區(qū)表,然后將分區(qū)字段轉換成普通字段,再用sqoop導出tmp表,實現(xiàn)需求。
步驟如下:
文章目錄
1.創(chuàng)建目標表(分區(qū)表)
1.1查看表格結構
2.輸入數(shù)據(jù)
3.查詢表dept_partition
4.創(chuàng)建臨時表。
5.查詢臨時表
6.檢查表結構(此時,分區(qū)表已經轉換為非分區(qū)表)
鐘健表部門_分區(qū)
8.使用sqoop導入到MySQL。
查詢驗證已成功導出。
1.創(chuàng)建目標表(分區(qū)表)
hivegt創(chuàng)建表` dept_partition `(
` deptno` int,
` dname ;字符串,
` loc ;字符串)
由(` month` string)行格式分隔的字段以t結尾
一個
2
三
四
五
一個
2
三
四
五
1.1查看表格結構
hivegt顯示創(chuàng)建表dept_partition
一個
一個
- -
| createtab_stmt |
- -
|創(chuàng)建表“dept _ partition ”(|
| `deptno` int,|
| `dname ;字符串,|
| `loc` string) |
|分區(qū)者(|
| `月`字符串)
一個
2
三
四
五
六
七
八
九
一個
2
三
四
五
六
七
八
九
2.輸入數(shù)據(jù)
hivegt將path/user/hive/hive _ db/data/dept . txt中的數(shù)據(jù)加載到表dept_partition中
一個一個
10會計1700
20研究1800
30銷售1900
40操作1700
一個
2
三
四
一個
2
三
四
3.查詢表dept_partition
hivegt select * from dept _ partition
一個
一個
- - - - -
| dept _ | dept _ partition . dname | dept _ partition . loc | dept _ |
- - - - -
| 10 |會計| 1700 | 2019-10-19 |
| 20 |研究| 1800 | 2019-10-19 |
| 30 |銷售| 1900 | 2019-10-19 |
| 40 |運營| 1700 | 2019-10-19 |
| 10 |會計| 1700 | 2019-10-20 |
| 20 |研究| 1800 | 2019-10-20 |
| 30 |銷售| 1900 | 2019-10-20 |
| 40 |運營| 1700 | 2019-10-20 |
- - - - -
一個
2
三
四
五
六
七
八
九
10
11
12
一個
2
三
四
五
六
七
八
九
10
11
12
4.創(chuàng)建臨時表。
hivegt將表tmp_dept_partition創(chuàng)建為select * from dept_partition
一個
一個
5.查詢臨時表
hivegt select * from臨時部門分區(qū)
一個
一個
- - - - -
| tmp _ dept _ | tmp _ dept _ partition . dname | tmp _ dept _ partition . loc | tmp _ dept _ |
- - - - -
| 10 |會計| 1700 | 2019-10-19 |
| 20 |研究| 1800 | 2019-10-19 |
| 30 |銷售| 1900 | 2019-10-19 |
| 40 |運營| 1700 | 2019-10-19 |
| 10 |會計| 1700 | 2019-10-20 |
| 20 |研究| 1800 | 2019-10-20 |
| 30 |銷售| 1900 | 2019-10-20 |
| 40 |運營| 1700 | 2019-10-20 |
- - - - -
一個
2
三
四
五
六
七
八
九
10
11
12
一個
2
三
四
五
六
七
八
九
10
11
12
6.檢查表結構(此時,分區(qū)表已經轉換為非分區(qū)表)
hivegt顯示創(chuàng)建表tmp_dept_partition
一個
一個
- -
| createtab_stmt |
-- -
|創(chuàng)建表“tmp _ dept _ partition ”(|
| `deptno` int,|
| `dname ;字符串,|
| `loc ;字符串,|
| `月`字符串)
一個
2
三
四
五
六
七
八
一個
2
三
四
五
六
七
八
鐘健表部門_分區(qū)
如果存在dept_partition,mysqlgt將刪除表
創(chuàng)建表dept_partition(
` deptno` int,
` dname ; varchar(20),
` loc ; varchar(20),
` month ; varchar(50))
一個
2
三
四
五
六
一個
2
三
四
五
六
8.使用sqoop導入到MySQL。
bin/sqoop導出
-連接JDBC :mysql://Hadoop 01 : 3306/partitionb
-用戶名root
-密碼123456
-表部門分區(qū)
-映射器數(shù)量1
-
為什么oracle需要配置而mysql不需要?
因為orcle需要解壓和必要時的,所以它需要配置,但mysql不需要 t.
與以未壓縮格式存儲數(shù)據(jù)相比,新的Oracle數(shù)據(jù)壓縮技術可以確保以更少的開銷節(jié)省三倍以上的磁盤存儲空間。這比僅僅節(jié)省磁盤空間有更大的優(yōu)勢,因為它可以讓企業(yè)節(jié)省更多的開支,以便有更多的資金來鞏固自己的地位。
自動診斷庫(ADR)是嚴重錯誤的知識庫。知識庫基本可以自動完成一些過去由數(shù)據(jù)庫管理員手工完成的操作。
作為ADR的一部分,SQL性能分析器(SPA)是最令人驚訝的特性之一。SQL性能分析器是一個整體調整工具,管理員可以通過它來調整數(shù)據(jù)。在數(shù)據(jù)庫上定義并重放一個典型的工作負載,然后管理員就可以調整整體參數(shù),使數(shù)據(jù)庫盡快達到最佳性能——而這個任務也是數(shù)據(jù)庫管理員多年來手工完成的。
由于獲得了最優(yōu)的初始參數(shù),數(shù)據(jù)庫管理員不需要調整數(shù)萬條SQL語句。管理員需要做的就是給出一個典型的負載,SPA會根據(jù)歷史來決定SQL的最終設置,而不需要管理員測試哪個SQL設置最合理。
多年來,甲骨文一直試圖完成的另一個新功能是 "在線更新 "(不關機更新軟件)。事實上,從軟件工程的角度來看,設計一個可以在運行時自動升級的軟件是很難的。由于Real Application Clusters (RAC)的特性,甲骨文公司再次向其他數(shù)據(jù)庫供應商施加了更大的壓力。在實際使用過程中,數(shù)據(jù)庫產品的用戶總是希望產品具有持續(xù)的高可用性,并不意味著在下一次補丁更新之前的三年就足夠滿足了。
自動內存管理的特性可以追溯到Oracle 9i,當時甲骨文推出了第一個自動調整存儲池的工具。AMM工具實際上是一種檢測機制。實際上,Oracle 11g有許多隨機存取存儲池。當存儲管理模式(AMM)檢測到存儲池已滿時,它將整個隨機存取存儲器(RAM)從一個區(qū)域分配到其他相對合適的區(qū)域。