2016-01-19 44 views

回答

1

沒有什麼像內部表。 Hive管理表和外部表。兩者之間沒有性能差異。從DDL角度

兩點區別:

  1. 蜂巢將在管理表的情況下對文件的控制。如果刪除表格,則HDFS中的數據和Metastore DB中的元數據將消失。對於外部表格,Metastore表格中的元數據將會消失。
  2. 語法差異。指定位置對於外部表是強制性的。

從查詢角度看,沒有任何區別。

0

Hive爲我們提供了現有Hadoop集羣頂部的數據倉儲設施。除此之外,它還提供了一個類似於SQL的界面。

您可以通過兩種不同的方式創建表格。

  1. 創建外部表

創建外部表的學生(ID INT,STRING名稱,批次STRING)TERMINATED BY '\ t' #supply分隔符位置 「/用戶ROW FORMAT分隔的字段/ HDFS /學生;

對於外部表Hive不會將數據移動到其倉庫目錄中。如果外部表被刪除,那麼表元數據將被刪除,但不是數據。

  • 創建正常表
  • CREATE TABLE學生(ID INT,名稱STRING,批次STRING)行格式 分隔字段TERMINATED BY '\ T' #supply定界符地址 '/ user/hddfs/students';

    對於普通表配置單元將數據移入其倉庫目錄。如果表被刪除,那麼表元數據和數據將被刪除。您可以檢查this

    相關問題