Hive的資料型別與基礎操作

2021-08-02 12:35:54 字數 2836 閱讀 4114

表 hive的基本資料型別:

型別描述

示例tinyint

1個位元組(8位)有符號整數

smallint

2個位元組(16位)有符號整數

int4個位元組(32位)有符號整數

bigint

8個位元組(64位)有符號整數

float

4個位元組(32位)單精度浮點數

1.0double

8個位元組(64位)雙精度浮點數

1.0boolean

布林型別,true/false

true

string

字串,可以指定字符集

「xmu」

timestamp

整數、浮點數或者字串

1327882394(unix新紀元秒)

binary

位元組陣列

[0,1,0,1,0,1,0,1]

array

一組有序字段,欄位的型別必須相同

array(1,2)

map一組無序的鍵/值對,鍵的型別必須是原子的,值可以是任何資料型別,同乙個對映的鍵和值的型別必須相同

map(『a』,1,』b』,2)

struct

一組命名的字段,字段型別可以不同

struct(『a』,1,1,0)

hive的基本操作:

1.create:建立資料庫、表、檢視

•建立資料庫

①建立資料庫hive

hive>create database hive;

②建立資料庫hive。因為hive已經存在,所以會丟擲異常,加上if not exists關鍵字,則不會丟擲異常

hive>create database if not exists hive;

•建立表

①在hive資料庫中,建立表usr,含三個屬性id,name,age

hive> use hive;

hive>create table if not exists usr(idbigint,name string,age int);

②在hive資料庫中,建立表usr,含三個屬性id,name,age,儲存路徑為「/usr/local/hive/warehouse/hive/usr」

hive>create table if not existshive.usr(id bigint,name string,age int)

>location 『/usr/local/hive/warehouse/hive/usr』;

建立檢視

①建立檢視little_usr,只包含usr表中id,age屬性

hive>createview little_usr as select id,age from usr;

2. show

:檢視資料庫、表、檢視

•檢視資料庫

①檢視hive中包含的所有資料庫

hive> show databases;

②檢視hive中以h開頭的所有資料庫

hive>show databases like 『h.*』;

•檢視表和檢視

①檢視資料庫hive中所有表和檢視

hive> use hive;

hive> show tables;

②檢視資料庫hive中以u開頭的所有表和檢視

hive> show tables in hive like 『u.*』;

3.load

:向表中裝載資料 ①

把目錄』/usr

/local/data』

下的資料檔案中的資料裝載進

usr表並覆蓋原有資料

hive> load data local

inpath

『/usr

/local/data』 overwrite into table

usr; ②

把目錄』/usr

/local/data』

下的資料檔案中的資料裝載進

usr表不覆蓋原有資料

hive> load data local

inpath

『/usr

/local/data』 into table

usr; ③

把分布式檔案系統目錄

』hdfs://

master_server/usr/local/data

』下的資料檔案資料裝載進

usr表並覆蓋原有資料

hive> load data

inpath

『hdfs://

master_server/usr/local/data』

>overwrite into table

usr;

4.insert

:向表中插入資料或從表中匯出資料

①向表usr1中插入來自usr表的資料並覆蓋原有資料

hive> insert overwrite table usr1

> select * from usrwhere age=10;

②向表usr1中插入來自usr表的資料並追加在原有資料後

hive> insert into table usr1

> select * from usr

> where age=10;

Hive資料型別

1 基本資料型別 包含如下型別 整數型別 tinyint smallint int bigint 浮點型別 float double 布林型別 boolean 字串型別 string 舉例 create table person pid int,pname string,married boolea...

Hive資料型別

hive的內建資料型別可以分為兩大類 1 基礎資料型別 2 複雜資料型別。資料型別 所佔位元組 開始支援版本 tinyint 1byte,128 127 smallint 2byte,32,768 32,767 int4byte,2,147,483,648 2,147,483,647 bigint ...

Hive資料型別

列型別 hive支援的資料型別如下 原生資料型別 復合型別 支援傳統的unix時間戳,可選的納秒級精度。支援的轉換 時間戳被解釋是與timezone無關,儲存為從unix紀元的偏移量。提供便利的udf和時區轉換 to utc timestamp,from utc timestamp 所有現有date...