Riordon 发表于 2015-4-21 11:46:07

mysql中的数据进行清洗,然后导入HDFS(或HIVE)

前提:
mysql表中存储了4个网站(通过url鉴定)的用户访问数据,融合在一起,没有分离
需求:
清洗,提取其中一个网站的访问数据到HDFS(HIVE)中

疑问:
mysql--->HDFS(HIVE) 有工具sqoop,但它是将整个表中的数据导入HDFS,没有过滤的功能

现在若要实现,有什么好的方案呢?

谢谢了...

arsenduan 发表于 2015-4-21 11:57:52

sqoop有条件过滤,比如下面:

sqoop import --connect jdbc:mysql://192.168.81.176/hivemeta2db --username root -password passwd --table sds --where "sd_id > 100"


sqoop import --connect jdbc:mysql://192.168.81.176/hivemeta2db --username root -password passwd --table sds --where "网站类型 =叉叉"

Riordon 发表于 2015-4-21 13:39:54

arsenduan 发表于 2015-4-21 11:57
sqoop有条件过滤,比如下面:

sqoop import --connect jdbc:mysql://192.168.81.176/hivemeta2db --user ...

恩,不错,如果网站的id是包含在url中的呢,怎么从一个字段中提取一部分内容作比较呢?

arsenduan 发表于 2015-4-21 13:45:43

Riordon 发表于 2015-4-21 13:39
恩,不错,如果网站的id是包含在url中的呢,怎么从一个字段中提取一部分内容作比较呢?

这个不知道是否有模糊查询,可以试试like。
楼主的表设计有些问题,这些类型应该是基本的。一个个过滤,性能严重下降
页: [1]
查看完整版本: mysql中的数据进行清洗,然后导入HDFS(或HIVE)