(1)创建MySQL 表
1)下载MySQL 的Windows 安装包“mysql-essential-5.1.51-win32. msi”,双击进行安装,注意字符集选择“utf8”,然后安装“navicat8_mysql_cs.exe”。
2)打开navicat,建立localhost 连接,如图9.8 所示。单击“连接测试”,弹出“连接成功”对话框,表示连接没有问题。
3)创建数据库
在localhost 连接上右击鼠标,选择“创建数据库”。输入数据库名“sqoop_test”,选择字符集“utf8-- UTF-8 Unicode”,如图9.9 所示。
图9.8 建立localhost 连接
图9.9 创建“sqoop_test”数据库
4)创建表
双击数据库sqoop_test,在“表”上面点鼠标右键,创建表。设置属性id、name、sex、age、department,如图9.10 所示。其中id 设置为主键并且自动递增,varchar 类型的属性的字符集都选择“utf-8”。保存并键入表名“mysql_employee”。
图9.10 创建MySQL 表“mysql_employee”
5)插入数据
双击mysql_employee 表,插入数据,如图9.11 所示。
图9.11 向“mysql_employee”表中插入数据
(2)MySQL 表数据导入HDFS(www.xing528.com)
在HDFS 中创建目录“/sqoop”,用于存放从MySQL 导入的数据,命令为“hdfs dfs -mkdir /sqoop”。打开master 节点终端,切换到Sqoop 的安装目录,在bin 目录下执行Sqoop Import 命令将表“mysql_employee”的数据导入HDFS。执行命令为:
为了使命令更清晰,可以采用多行输入的方式,也就是在一行的末位加“\”,表示命令未结束。上面的命令可以表示为:
上述命令中的参数说明如下:
--connect:后面是连接MySQL 的url。这里使用JDBC 连接Windows 系统的MySQL 数据库sqoop_test,所以,IP 地址为Windows 系统的IP 地址。
--username root:连接MySQL 的用户名为“root”。
--password root:连接MySQL 的密码为“root”。
--table mysql_employee:指定MySQL 的表为mysql_employee。
--target-dir /sqoop/mysql_employee:指定表数据导入HDFS 的“/sqoop/mysql_employee”目录。
--m 2:设置Map 任务的并行度为“2”。
--fields-terminated-by '\t':设置导入数据在HDFS 文件中的字段分隔符为“\t”。
--lines-terminated-by '\n':设置导入数据在HDFS 文件中的行分隔符为“\n”。
(3)查看导入结果
使用HDFS 命令查看“/sqoop/mysql_employee”目录,里面的两个文件“part-m-00000”和“part-m-00001”就是导入后生成的文件。因为设置了Map 的并行度为“2”,所以生成了两个HDFS 文件。可以进一步查看这两个文件的内容,其结果如图9.12 所示。
图9.12 MySQL 表数据导入HDFS 结果
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。