运维进行时-数据分析

       一直做的数据分析均是基于数据库数据、日志进行分析,开发业务模型,日志深度监控系统。也一直想抓取到用户的感知,幸好找大数据平台的人要到了我们网站嵌码采集的相关数据,准备对用户行为从早期的access日志外,另一层面做下分析。

        用到时间函数时存在很大于oracle不同,用from_unixtime(unix_timestamp(),'HH:mm')搞定时间,网上查询页面:http://blog.csdn.net/ningyuanhuo/article/details/21481307,后期在遇到在来细查时间函数。

        其他函数想了下应该和sql类似,也查了下文档,hive常用函数http://blackproof.iteye.com/blog/2108353,主要用到substr,length。

        Hive的工作模式是提交一个任务,等到任务结束时被通知,而不是实时查询。即使查了个很小的数也需要很久,用惯了数据库,查这个多少有些不适应。不过和sql语法基本类似,学习成本较低。细节还是见文档hive深入浅出http://blog.csdn.net/hguisu/article/details/18986759。

         利用sqoop将hive/hdfs数据导入到oracle中

         使用的是sqoop1,其次我们需要ojdbc6.jar 这个jar 包下载地址如下:

         http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html

         将解压的包 复制到sqoop安装目录下的lib 目录中

执行我们的导入命令即可

  1. sqoop  export --table FDC_JPLP   --connect jdbc:oracle:thin:@localhost:port:test1   --username test --password test     --export-dir /user/hive/warehouse/data_w.db/seq_fdc_jplp     --columns  goal_ocityid,goal_issueid,compete_issueid,ncompete_rank  --input-fields-terminated-by '\001'     --input-lines-terminated-by '\n'   


注意要指定 --columns 参数 否则会报错 找不到 columns

用法: --columns

查询数据是否导入成功

  1. sqoop  eval   --connect jdbc:oracle:thin:@localhost:port:test1 --query "select * from FDC_JPLP"  --username fccsreport --password fccsoracle10g_report   



你可能感兴趣的:(oracle,hive,Sql语法,监控系统,数据库数据)