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
            }
        }
        
    
    
    }
  • 相关阅读:
    2019CCPC厦门游记
    [codeforces940E]Cashback
    [codeforces#592Div2]C-G题
    Material Design UI素材库【React版】【2】--定制
    Material Design UI素材库【React版】【1】--入门
    resin中配置session相关参数
    quartz定时任务
    Linux内核----make menuconfig时出错
    【Qt学习之路】Qt开发环境搭建
    已学算法与数据结构的习题
  • 原文地址:https://www.cnblogs.com/feelgood/p/4992112.html
Copyright © 2011-2022 走看看