天天看點

51 Hive的Load操作

文法結構

LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO 
TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]
      

1、Load 操作隻是單純的複制/移動操作,将資料檔案移動到 Hive 表對應的位置。

2、FILEPATH:

  • 相對路徑,例如:project/data1
  • 絕對路徑,例如:/user/hive/project/data1
  • 包含模式的完整 URI,列如:

    hdfs://namenode:9000/user/hive/project/data1

3、LOCAL關鍵字

  • 如果指定了 LOCAL, load 指令會去查找本地檔案系統中的 filepath。
  • 如果沒有指定 LOCAL 關鍵字,則根據inpath中的uri查找檔案。

4、OVERWRITE 關鍵字

  • 如果使用了 OVERWRITE 關鍵字,則目标表(或者分區)中的内容會被删除,然後再将 filepath 指向的檔案/目錄中的内容添加到表/分區中。
  • 如果目标表(分區)已經有一個檔案,并且檔案名和 filepath 中的檔案名沖突,那麼現有的檔案會被新檔案所替代。

具體執行個體

1、加載相對路徑資料

51 Hive的Load操作

2、加載絕對路徑資料

51 Hive的Load操作

繼續閱讀