MySQL是關系型數據庫中的一種,可用于存儲和管理數據。Hive是一個基于Hadoop的數據倉庫工具,它可以將結構化數據映射到Hadoop上的文件系統中。本文將介紹如何將MySQL的數據導入Hive。
1.準備工作
$ wget http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.7/mysql-connector-java-5.1.7.jar $ sudo cp mysql-connector-java-5.1.7.jar /usr/lib/hive/lib/
2.創建外部表
CREATE EXTERNAL TABLE hive_test_mysql ( id INT, name STRING ) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS TEXTFILE LOCATION '/user/hive/warehouse/hive_test_mysql/';
3.導入數據
$ sqoop import \ --driver com.mysql.jdbc.Driver \ --connect jdbc:mysql://localhost:3306/test \ --username root \ --password root \ --table test_mysql \ --hive-import \ --hive-table hive_test_mysql \ --map-column-hive id=INT,name=STRING \ --target-dir /user/hive/warehouse/hive_test_mysql/ \ --delete-target-dir
4.查看導入結果
SELECT * FROM hive_test_mysql;
注意:如若提示無法連接hive或者導出數據失敗,請重啟hadoop服務再次執行上述操作。