导入的规则
在我们将业务数据从MySQL中导入至HDFS中是需要做ETL设计的,即我们可能只需要筛选出一部分的数据可能是几列的数据或者是其中几行的数据。 比如说在Gmall这张表当中包含了很多个不同的字段,其中有id、name、nickname、login_name等字段,那么如果我们需要的是id和login_name字段的话,我们就需要做出筛选。
# 筛选出列
--columns id, login_name
# 筛选出行
--where 'id >=1 and id <= 20'
在MapReduce输出是,首先会检查输出路径是否存在,所以sqoop在将数据输出之前,会检查target-dir是否存在。设置如下命令,可以检测,如果该路径存在首先会先删除再创建
--delete-target-dir
在MySQL中存储的数据都是结构化数据,每个不同的字段之间是通过分隔符,例如’\t’来划分的。