私はHiveテーブルの列に主キーを作成できないと読んでいます。しかし、私はいくつかの場所でDDLを見て、それを実行しました。それは何の問題もなく働いた。この後これは、ハイブの列に主キーを作成することとどのように違うのですか?
create table prim(id int, name char(30))
TBLPROPERTIES("PRIMARY KEY"="id");
私は「プリムにフォーマットについて説明」とキーは、私はテーブルに同じID番号を持つ2つのレコードを挿入し、カラムID
Table Parameters:
PRIMARY KEY id
上で作成されていることを見てみました実行。
insert into prim values(1,'ABCD');
insert into prim values(2,'EFGH');
両方のレコードがテーブルに挿入されました。私にはわかりにくいのは、私が理解できるcreate文でPRIMARY KEYを与えることができないということです。しかし、TBLPROPERTIES("PRIMARY KEY"="id")
で与えられたとき、RDBMSの主キーとどのように違うのですか?
ハイブは、検証されていないプライマリキーと外部キーの制約をサポートしていると思います。あなたは同じことについて医者を見ることができます。 –