通過遠程jdbc方式連接到hive數據倉庫


1.啟動hiveserver2服務器,監聽端口是10000,啟動名令:hive --service hiveserver2 &;//將其放在后台進行運行,判斷啟動是否成功的標志是:jps,是否有RunJar進程,或者netstat -anop |grep 10000查看10000端口是否連接
,如果可以連接,那么就可以使用beeline通過$>hive service hiveserver2這個命令連接進來
2.通過beeline的命令行連接到hiveserver2,可以直接寫$>beeline 等價於:$>hive --service beeline,連接到數據庫:$beeline>!connect jdbc:hive2://localhost/mydb1連接到數據庫hive數據庫mydb1
3.!help,打印出幫助匯總
4.beeline下面的命令:!tables

hive命令

//創建表
$hive>create table if not exists t1(name string) comment 'xx' row format delimited fields terminated by ',' stored as textfile;
//創建外部表

$hive>create external table if not exists t1(name string) comment 'xx' row format delimited fields terminated by ',' stored as textfile;
//查看數據
$hive>desc t2 ;
$hive>desc formatted t2;
$hive>load data local inpath '/home/centos/customers.txt' into table t2 ;//從本地文件上傳到hive表中,local是上傳文件,
//復制表
$mysql>create table tt as select * from users ; //復制表,攜帶數據和表結構
$mysql>create table tt like users ; //復制表,只攜帶表結構,不帶數據

hive>create table tt as select * from users;
hive>create table tt  like users ;
hive>select count(*) from users;    //這個需要轉成mr進行處理,count(*) 查詢要轉成mr查詢
hive>select id,name from t2 order by id desc ;//order by是全排序,要轉成mr,以內需要進行聚合

分區表

hive的優化手段之一:創建分區表
在hive中數據庫是目錄,表是目錄,分區表還是目錄,表下的分區仍然是目錄,從目錄層面控制搜索數據的范圍
創建分區表
$hive>create table t3(id int,name string ,age int) partitioned by (year int,month int) row format delimited fields terminated by ","
//顯示分區表的分區信息
hive>show partitions t5;
//添加分區修改表
$hive>altertable t3 add partition (year=2014,month=1) partition(year =2015,month=2);
hdfs -lsr /;//添加完成之后查看目錄
//加載數據到指定分區
$hive>load data local inpath '/home/centos/customers.txt' into table t5 partition(year=2015,month=3);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM