sqoop读取postgresql数据库表格导入到hdfs中

       最近再学习spark streaming做实时计算这方面内容,过程中需要从后台数据库导出数据到hdfs中,经过调研发现需要使用sqoop进行操作,本次操作环境是Linux下。

       首先确保环境安装了Hadoop和sqoop,安装只需要下载 ,解压 以及配置环境变量,这里不多说了,网上教程很多。

       一、配置sqoop以及验证是否成功

 切换到配置文件下:cd $SQOOP_HOME/conf   

 创建配置环境文件: cp sqoop-env-template.sh sqoop-env.sh

 修改配置文件:conf/vi  sqoop-env.sh:修改内容如下

sqoop读取postgresql数据库表格导入到hdfs中_第1张图片

 配置完成后,执行命令sqoop-version ,检查是否成功,如图显示sqoop 1.4.7即成功。

二、添加postgresql驱动jar包

      因为这里使用sqoop读取postgresql的数据,所以需要将数据库驱动包放到$SQOOP_HOME/lib 下即可 。

三、导入pg数据库中表到hdfs中

1、首先要启动Hadoop集群,不然会报错 

 执行语句  $HADOOP_HOME/sbin/./start-all.sh  

2、执行sqoop语句进行数据导入到hdfs 

sqoop import \
    --connect jdbc:postgresql:localhost:5432/test(数据库的名称)
    --username postgres (填自己的数据库用户名)
    --password 888888 (填自己数据库的密码)
    --table company (自己创建表的名称)
    --m 1 (mapreduce的个数)

 执行结果如图:

sqoop读取postgresql数据库表格导入到hdfs中_第2张图片

3、检查hdfs上是否成功存储到表数据

$HADOOP_HOME/bin hdfs dfs -cat /sqoop/part-m-00000(数据目录改成自己的)

结果如图所示:

      显示使用sqoop 将 postgreql上的表格数据成功导入到hdfs中,这算今天也有点收获了!

 

你可能感兴趣的:(大数据,hadoop,hdfs,postgresql)