Oracle 到 Hive 的資料型別對映

2021-10-07 05:21:37 字數 1882 閱讀 2641

下表標識 oracle 資料型別、複製定義資料型別和 hive 資料型別

oracle 資料型別

複製定義資料型別

hive 資料型別

integer

rs_oracle_decimal

double

number

rs_oracle_decimal

double

number(10) - number(18)

rs_oracle_decimal

bigint

number(5) - number(9)

rs_oracle_decimal

intnumber(2) - number(4)

rs_oracle_decimal

smallint

number(p,s)

rs_oracle_decimal / varchar

decimal/varchar

number(1)

rs_oracle_decimal

tinyint

float

rs_oracle_float

double

binary_float

rs_oracle_float

double

binary_double

rs_oracle_decimal

double

date

rs_oracle_datetime

timestamp

timestamp(n)

rs_oracle_timestamp9

timestamp

char

char

varchar

nchar

unichar

varchar

nvarchar2

varchar

varchar

nvarchar

univarchar

varchar

nvarchar2

univarchar

varchar

blob

image

無預設值

bfile

image

無預設值

nclob

unitext

無預設值

rowid

rs_oracle_interval

無預設值

urowid

rs_oracle_rowid

無預設值

urowid

rs_oracle_rowid

無預設值

timestamp with time zone

rs_oracle_timestamptz

無預設值

timestamp with local time zone

rs_oracle_timestamp9

無預設值

anydata

opaque

無預設值

varray

opaque

無預設值

nestedtab

opaque

無預設值

object

opaque

無預設值

refrs_oracle_binary

無預設值

rawrs_oracle_binary

binary

注意

如果沒有提供預設值,您需要根據業務需求選擇對映到 hive 資料型別的自定義工具才能成功複製 oracle 型別。有關其它 oracle 資料型別的資訊,請參見《replication agent 主資料庫指南》的「oracle 資料型別相容性」和「oracle 資料型別限制」。

從Oracle資料庫中匯入資料到Hive中的指令碼

這個是test.bash的指令碼 話說shell是真的 bin sh source config.sh 資料庫 hive db raw if 1 then echo table 1 tables 1 else tables demo2 qxf fifor ele in do table 匯入表結構 ...

從Oracle匯出資料並匯入到Hive

1 配置源和目標的資料連線 源 oracle 目標 hive 2.1.1 系統自帶2.1.1的驅動jar包,如果該版本無法相容你的hive,可將對應版本hive驅動jar包匯入hhdi的lib目錄中。自帶的jar包包括以下檔案 hadoop common 2.6.0.jar hive common ...

匯入HDFS的資料到Hive

create external table if not exists finance.json serde optd table retcode string,retmsg string,data array row format serde org.apache.hive.hcatalog.da...