1. 程式人生 > >Hive中java對資料庫、表的操作

Hive中java對資料庫、表的操作

在應用Hive之前,首先搭建Hive環境,關於Hive的搭建 參考之前的搭建文件

java程式碼執行Hive指令碼

java程式碼執行Hive指令碼,需要啟動Hive的內部服務,供其他或者java程式碼連結,Hive內部服務啟動命令

# ./hive --service hiveserver2

這裡寫圖片描述

啟動成功後tcp會自動監聽 一個10000的埠

這裡寫圖片描述

但是這裡監聽的IP是127.0.0.1,是不能供其它連結的,需要修改配置檔案,指定服務地址,IP或者伺服器名稱

  • 需改 Hive-site.xml 的配置檔案
# vi ../conf/hive-site.xml 

需要把如下value的localhost 改為伺服器名稱或者IP

<property>
  <name>hive.server2.thrift.bind.host</name>
  <value>centos-node6</value>
  <description>Bind host on which to run the HiveServer2 Thrift interface.
  Can be overridden by setting $HIVE_SERVER2_THRIFT_BIND_HOST</description>
</property>

再次啟動Hive的內部服務,檢視監聽的tcp和埠號服務

這裡寫圖片描述

內部服務開啟成功,現在可以供其它連結Hive,本地測試 命令進入/bin目錄下

# ./beeline 
beeline> !connect jdbc:hive2://centos-node6/default;

這裡寫圖片描述

使用者名稱預設:root 密碼:無

登陸成功後命令檢視default資料庫中的表

show tables

出現錯誤 5000L,這是Hive的一個bug,需要修改配置檔案

這裡寫圖片描述

修改配置檔案 hive-site.xml,修改value值為5000

<property>
  <name>hive.server2.long.polling.timeout
</name> <value>5000</value> <description>Time in milliseconds that HiveServer2 will wait, before responding to asynchronous calls that use long polling</description> </property>

再次命令檢視default 中的表 show tables

這裡寫圖片描述

遠端連結Hive測試成功!

java程式碼JDBC連結Hive

  • jdbc測試連結Hive程式碼如下
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * Hive遠端測試連線
 * @author llh
 *
 */
public class HiveTest {

    public static void main(String[] args) throws Exception{
        Class.forName("org.apache.hive.jdbc.HiveDriver");
        Connection conn = DriverManager.getConnection("jdbc:hive2://centos-node6/default", "root", "");
        try {
            Statement st = conn.createStatement();
            ResultSet re = st.executeQuery("select count(*) from t_emp"); 
            if(re.next()){
                System.err.println("t_emp資料條數:"+re.getInt(1));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            conn.close();
        }
    }

}

這裡寫圖片描述

測試成功

相關推薦

Hivejava資料庫操作

在應用Hive之前,首先搭建Hive環境,關於Hive的搭建 參考之前的搭建文件 java程式碼執行Hive指令碼 java程式碼執行Hive指令碼,需要啟動Hive的內部服務,供其他或者java程式碼連結,Hive內部服務啟動命令 # ./hive

mysql 基礎篇(一) 資料庫操作

資料庫、表操作 Show databases ;顯示所有資料庫Use test ; 使用test資料庫Desc test ; 展示test資料庫的表結構 Create database testDB;建立新的資料庫。Create table user(id int(10) primary key auto

Hive資料庫操作

在應用Hive之前,首先搭建Hive環境,關於Hive的搭建 參考之前的搭建文件 Hive官方應用文件 資料定義語言 DDL 1、Create Database Hive中資料庫的建立和關係型資料庫類似,用create datebas

SQL簡單介紹資料庫的簡單操作

1.SQL語句簡單介紹: SQL(結構化查詢語言(Structured Query Language))包含6個部分(資料查詢語言DQL、資料操作語言DML、資料定義語言DDL、事務處理語言TPL、資料控制語言DCL、指標控制語言CCL),在Java中常用的有三種,DQL

JAVA資料庫進行操作,實現資料庫資料的插入,查詢,更改,刪除操作

轉載自:http://www.cnblogs.com/sodawoods-blogs/p/4415858.html (—)通過mysql workbench 建立一個數據庫,在這裡命名為company,然後建一個tb_employee表 (二)以下是java程式碼對錶

Java怎樣實現批量刪除操作Java資料庫進行事務處理)?

本人開發的一個安卓版app小遊戲,瘋狂猜明星android版,圖示看起來很搞笑,有點京劇變臉的味道。朋友們小手一抖,下載支援下。謝謝了 本文是記錄Java中實現批量刪除操作(Java對資料庫進行事務處理),在開始之前先來看下面這樣的一個頁面圖:  上面這張圖片顯示的是從

hive信息查詢:查看結構操作等--轉

cal ica class depend yun sel getting 結構 dconf 原文地址:http://www.aboutyun.com/forum.PHP?mod=viewthread&tid=8590&highlight=Hive 問題導讀

hive信息查詢:查看結構操作

1.3 xlsx 插入語 表操作 content rar cto get gin hive表信息查詢:查看表結構、表操作 問題導讀:1.如何查看hive表結構?2.如何查看表結構信息?3.如何查看分區信息?4.哪個命令可以模糊搜索表 1.hive模糊搜索

資料庫操作,資料操作

注意的幾點:1.如果你在cmd中書命令的時候,輸入錯了就用\c跳出   2.\s檢視配置資訊 一、操作資料夾(庫) 增:create database db1 charset utf8; 刪:drop database db1; 改:alter da

三十五python學習之Flask框架(七)資料庫:Flask資料庫的基本操作常見關係模板資料庫遷移綜合案例:圖書管理

補充:   使用SQL_Alchemy定義一個模型類,不可以不指定primary_key=True建立表. 一、資料庫基本操作 1. 資料庫的基本操作(CRUD): 在Flask-SQLAlchemy中,插入、修改、刪除操作,均由資料庫會話管理。

關於java需要路徑進行分割操作時出現的異常

在工作中操作分割路徑時出現的問題 示例:String path = "C:\\Users\\Administrator.SC-201606041031\\Desktop\\test.txt"; 需要對該path進行分割操作則需要 String[] matchPaths = path.split

淺談java與方法的重載

ring bat spring 初始 [] myba strong 有關 .html 對象: 一切皆為對象。 對象包括兩部分內容:屬性(名詞形容詞),行為(動詞)。 對象和對象之間是有關系的: 派生,關聯,依賴。 類: 對同一類別的眾多對象的一種抽象。 類,還是用來生成對象

通過java資料庫的增刪查修操作

一 準備工作: JDBC(Java Data Base Connectivity,java資料庫連線)是一種用於執行SQL語句的Java API,可以為多種關係資料庫提供統一訪問,它由一組用Java語言編寫的類和介面組成。JDBC提供了一種基準,據此可以構建更高階的工具和介面,使資料庫開發人

JAVA資料庫進行操作---弱智的學習記錄

通過java對資料庫進行操作的簡單實現 匯入myql-jdbc的jar包 簡單的程式碼實現 package day10_10; import java.sql.Connection; import java.sql.Driv

C#資料庫的基本操作(增刪改以及呼叫儲存過程)

因為最近在寫web API的時候需要對資料庫操作,所以要用到ADO.NET,因為之前沒有接觸過.NET所以也是一邊上網查資料看C#書一邊寫,現在對這塊基礎的部分已經掌握了,現在寫下來只是想對自己前段時間的學習做個簡單的總結,也便於自己以後查閱(網上有很多類似的資源,大家可以

mysql 資料庫快速入門 DDL:操作資料庫列等

DDL:資料庫定義語言 用來定義資料庫物件:庫、表、列等。 使用的關鍵字:CREATE、 ALTER、 DROP 操作資料庫 建立資料庫 Create database mydb1; Create database mydb2 character set gbk; Creat

java程式碼實現資料庫的備份操作

 本週客戶提了一個數據庫實時備份的功能,看到網上的資料不是很詳細,而且也比較麻煩,就把自己的實現方法分享一下。因為目前專案用的是SSM,就想到了寫一個用於備份的儲存過程,然後後臺通過sql呼叫執行,把指定的資料庫備份到相應的路徑,具體操作如下: 1.先寫一個用於備份的儲存過程

問題描述: 在使用mybatis資料庫執行更新操作時,parameterType為某個具體的bean,而bean傳入的引數為null時,丟擲異常如下:

org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mappin

php 如何在HTML頁面實現資料庫資料的增刪改查

  上一篇詳細說明了如何將資料庫中的資料列印到html頁面上,本篇將介紹如何在HTML頁面的表格裡進行對資料庫內容的增刪改查還是借用上一篇的頁面,在此基礎上增加了操作按鈕:<!doctype html><html><head><meta charset="utf-8"

MySQL下資料庫操作

資料庫名詞解釋 主鍵 主鍵指的是能夠唯一表示表中每一行的資料,通過設定主鍵來讓表具有實體完整性。 主鍵可以為多列。 主鍵用於與其它表的外來鍵關聯,以及修改和刪除中唯一確定一行 實體完整性 要求每一個表中的主鍵欄位都不能為空或者重複的值。