hive不自動建立多層目錄解決方法

2021-07-02 12:06:09 字數 744 閱讀 6260

hive中建立新table時候出現如下類似錯誤:

moving data to: hdfs://hadoop0:9000/hive/hmbbs_pv_2013_05_30

failed with exception unable to rename: hdfs://hadoop0:9000/tmp/hive-root/hive_2015-05-11_14-03-48_326_1958300989754494522/-ext-10001 to: hdfs://hadoop0:9000/hive/hmbbs_pv_2013_05_30

failed: execution error, return code 1 from org.apache.hadoop.hive.ql.exec.movetask

仔細檢視,原因是因為hive倉庫中沒有建立頂級目錄/hive/,這樣你如果想建立表的時候(對應hdfs中的檔案目錄),就會報類似上面的錯誤,這個頂級目錄是依據你自己的配置,位置在hive-site.xml中,屬性如下:

hive.metastore.warehouse.dir

/hive

location of default database for the warehouse

當hive沒有自動在hdfs中建立頂級目錄的時候,就會報如上的錯誤,這時你就需要手動建立或者加上如下屬性的配置就可以解決:

hive.insert.into.multilevel.dirs

true

create the dirs

JAVA自動建立多層檔案目錄

某目錄時,因為其上一層目錄即父目錄不存在,會丟擲異常 指定檔案路徑不存在 jdk中提供了建立目錄的兩種方法實現 mkdir 和 mkdirs 第一種,在給定目錄結構path引數下建立指定的目錄,如果path中少了一層目錄沒有建立,則會丟擲異常 filenotfoundexception 第二中,相對...

建立多層目錄 VC MFC

原文連線 在vc中不存在直接建立多層目錄的函式,要做到這一點,必須自己通過已有的建立目錄函式遞迴的進行建立,下面是實現原始碼 判斷目錄是否存在 bool folderexists cstring s 遞迴建立目錄,如果目錄已經存在或者建立成功返回true static bool supermkdir...

nodejs建立多層目錄

同步 fs.mkdirsync tmp fs.mkdirsync tmp test 非同步 fs.mkdir tmp function err console.log tmp目錄建立成功。fs.mkdir tmp test function err console.log test目錄建立成功。va...