zoukankan      html  css  js  c++  java
  • [工具类] Hive SQL

    package com.claw.util.hive;
    
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
    import java.util.List;
    
    public class Hql {
        
        public static String exec(String sql) throws Exception{
            System.out.println("start sql .....");
            String result = "0";
            List<String> command = new ArrayList<String>();
            command.add("hive");
            command.add("-e");
            command.add(sql);
            System.out.println(sql);
            
            ProcessBuilder hiveProcessBuilder = new ProcessBuilder(command);
            Process hiveProcess = hiveProcessBuilder.start();
            BufferedReader br = new BufferedReader(new InputStreamReader(hiveProcess.getInputStream()));
            System.out.println("hsql run ......");
            String data = null;
            if((data = br.readLine()) != null){
                result = data;
            }
            return result;
        }
    
        public static List<String> sqlList(String sql) throws Exception{
            System.out.println("start sql list .....");
            List<String> list = new ArrayList<String>();
            
            List<String> command = new ArrayList<String>();
            command.add("hive");
            command.add("-e");
            command.add(sql);
            System.out.println(sql);
            
            ProcessBuilder hiveProcessBuilder = new ProcessBuilder(command);
            Process hiveProcess = hiveProcessBuilder.start();
            BufferedReader br = new BufferedReader(new InputStreamReader(hiveProcess.getInputStream()));
            System.out.println("hsql run ......");
            String data = null;
            while((data = br.readLine()) != null){
                list.add(data);
            }
            return list;
        }
        
        public static void t() throws Exception{
            
            String sql="select count(distinct(cookie)) from logs where eventdate=20150724";
            List<String> command = new ArrayList<String>();
            command.add("hive");
            command.add("-e");
            command.add(sql);
            
            ProcessBuilder hiveProcessBuilder = new ProcessBuilder(command);
            Process hiveProcess = hiveProcessBuilder.start();
            
            BufferedReader br = new BufferedReader(new InputStreamReader(hiveProcess.getInputStream()));
            String data = null;
            System.out.println("--------------------");
            if ((data = br.readLine()) != null) {
                System.out.println(data);
            }
            
        }
        
        
        public static void main(String[] args) {
            try {
                t();
            } catch (Exception e) {
                // TODO: handle exception
            }
        }
        
    
    
    }
  • 相关阅读:
    Tomcat配置JMX远程监控(Windown7 Linxu)
    Maven Tomcat:run 使用tomcat7
    关于C3P0容错和自动重连特性的研究
    密码算法记录
    Linxu 安装Nignx
    Linxu Yum方式安装Mysql
    Linxu
    tomcat结合nginx使用小结
    Tomcat性能优化(三) Executor配置
    深入学习C#匿名函数、委托、Lambda表达式、表达式树类型——Expression tree types
  • 原文地址:https://www.cnblogs.com/feelgood/p/4992112.html
Copyright © 2011-2022 走看看