2016-08-16 16 views
-1

私は外部テーブルにデータを持っています。今私は外部テーブルからデータベース内の新しく作成されたテーブルにデータをコピーしています。どのようなテーブルがデータベースのテーブルになりますか?それは管理テーブルか外部テーブルですか?私は、データが挿入されたとき外部テーブルからデータベースにデータをコピーする

おかげで、 マダンモハンS

+0

あなたが聞いたことははっきりしません。 –

+0

私は、emp3と呼ばれるテーブルで構成されたハイブに「db1」という名前のデータベースを持っています。従業員という外部テーブルがあります。従業員のデータをemp3にコピーすると(どちらも同じスキーマを使用しています)、私のemp3はハイブのテーブルまたは外部テーブルを管理しますか? –

答えて

0

ハイブ表は、その作成時に、そのタイプ「管理」または「外部」にない取得この質問の背後にある概念を理解するためにあなたの助けを必要としています。

テーブル従業員は外部です(DDLで "create external"を使用して作成され、データファイルの場所を提供されたため)
DDLで "external"が使用されていないため、

テーブルの従業員が「場所」で提供されていたデータを削除しても削除されない場合、外部テーブルはデータが複数のツール、つまりブタで読み取られる場合に便利です。スクリプトは同じ場所を読み込んでいますが、従業員テーブルが削除されても機能します。

しかし、empは管理されています(つまり、metadat aとデータの両方がハイブで管理されます)、empが削除されるとデータも削除されます。したがって、ハイブウェアハウスディレクトリをチェックすると、それを削除した後、 "emp" hdfsディレクトリはもう見つかりません。

関連する問題