在hive中儲存資料時,如何保留資料的原格式

2021-04-20 00:51:55 字數 1714 閱讀 4493

1樓:匿名使用者

設定string型別就行了。

還有就是字典與陣列型別是需要指定分隔符的。

hive的資料儲存

2樓:聯盟巨猩

首先,hive 沒有專門的資料儲存格式,也沒有為資料建立索引,使用者可以非常自由的組織 hive 中的表,只需要在建立表的時候告訴 hive 資料中的列分隔符和行分隔符,hive 就可以解析資料。

其次,hive 中所有的資料都儲存在 hdfs 中,hive 中包含以下資料模型:表(table),外部表(external table),分割槽(partition),桶(bucket)。

hive 中的 table 和資料庫中的 table 在概念上是類似的,每一個 table 在 hive 中都有一個相應的目錄儲存資料。例如,一個表 pvs,它在 hdfs 中的路徑為:/wh/pvs,其中,wh 是在 hive-site.

xml 中由 $ 指定的資料倉儲的目錄,所有的 table 資料(不包括 external table)都儲存在這個目錄中。

partition 對應於資料庫中的 partition 列的密集索引,但是 hive 中 partition 的組織方式和資料庫中的很不相同。在 hive 中,表中的一個 partition 對應於表下的一個目錄,所有的 partition 的資料都儲存在對應的目錄中。例如:

pvs 表中包含 ds 和 city 兩個 partition,則對應於 ds = 20090801, ctry = us 的 hdfs 子目錄為:/wh/pvs/ds=20090801/ctry=us;對應於 ds = 20090801, ctry = ca 的 hdfs 子目錄為;/wh/pvs/ds=20090801/ctry=ca

buckets 對指定列計算 hash,根據 hash 值切分資料,目的是為了並行,每一個 bucket 對應一個檔案。將 user 列分散至 32 個 bucket,首先對 user 列的值計算 hash,對應 hash 值為 0 的 hdfs 目錄為:/wh/pvs/ds=20090801/ctry=us/part-00000;hash 值為 20 的 hdfs 目錄為:

/wh/pvs/ds=20090801/ctry=us/part-00020

external table 指向已經在 hdfs 中存在的資料,可以建立 partition。它和 table 在後設資料的組織上是相同的,而實際資料的儲存則有較大的差異。

table 的建立過程和資料載入過程(這兩個過程可以在同一個語句中完成),在載入資料的過程中,實際資料會被移動到資料倉儲目錄中;之後對資料對訪問將會直接在資料倉儲目錄中完成。刪除表時,表中的資料和後設資料將會被同時刪除。 external table 只有一個過程,載入資料和建立表同時完成(create external table ……location),實際資料是儲存在 location 後面指定的 hdfs 路徑中,並不會移動到資料倉儲目錄中。

當刪除一個 external table 時,僅刪除後設資料,表中的資料不會真正被刪除。

hive 的後設資料儲存在 derby 和 mysql 中有什麼區別

3樓:匿名使用者

定義 後設資料最本質、最抽象的定義為:data about data (關於資料的資料)。它是一種廣泛存在的現象,在許多領域有其具體的定義和應用。

在資料倉儲領域中,後設資料被定義為:描述資料及其環境的資料。一般來說,它有兩方面的用途。

如何找到onenote在本地電腦中儲存的位置和檔案進行備份

1 開啟 onenote筆記本 如下圖所示。2 點選左上角工具欄中的 檔案 功能,如下圖所示。3 進入檔案功能選項選單,點選左側的 選項 按鍵。如下圖所示。4 彈出onenote設定對話方塊,點選 儲存和備份 功能選項。5 進入儲存和備份功能選項中,找到 快取檔案位置 功能設定,找到儲存的位置了,如...

如何用C語言講文字檔案中儲存的資料讀入二維陣列

此 符合你的要求 include include include int main memset line,0x00,sizeof line while fgets line,1000,fp null linecount fclose fp 列印結果 for ii 0 ii return 0 我只能...

華為榮耀8x在保留資料情況下如何解鎖

如果解鎖密碼忘記了,可以通過手機賬號的驗證碼來重置解鎖密碼。只要能夠重置解鎖密碼成功就不需要清除資料來解開手機。華為榮耀8x在保留資料情況下如何解鎖?鎖屏密碼有兩種方法,一是可以通過手機找回重設開機,鎖屏密碼。借用電腦用華為賬號登入任意華為 華為雲,通過找回手機頁面按提示操作,先定位再遠端 鎖定手機...