Hive 中數據倉庫默認位置配置及庫表關系


1、原始位置的默認配置

hive中的Default(默認)數據倉庫的最原始位置是在hdfs上的 /user/hive/warehouse(以下默認Hive的HDFS根目錄為/user/hive)路徑下,這個原始位置是本地的/usr/local/hive/conf/hive-default.xml.template文件默認配置的,

2、庫表關系

1)默認情況下:

在hdfs目錄下,沒有對默認的數據庫default創建文件夾。如果某張表屬於default數據庫,直接在數據倉庫目錄下創建一個文件夾。

下圖中abc,bonus,department,dept,emp為缺省庫default下的幾張表,目錄名與表名一致。

 

 

2)指定庫情況下

  如果創建了數據庫,並指定表為該庫下的表,Hive會在/user/hive/warehouse/下創建一個以庫名命名的目錄(如上圖的a.db,b.db分別代表數據庫a,b),該庫的表目錄在庫目錄下。

 

 

3)制定分區的情況下:

 如果為表設定了分區,則會在表目錄下增加分區目錄,目錄名以“分區鍵名=分區值”的形式命名。如下圖,表dept1中,設置了v1和v2兩個名為a的分區。

 

 

3、修改數據倉庫的原始位置只需在hive-site.xml自定義配置文件中設置如下信息即可:

<property>
<name>hive.metastore.warehouse.dir</name>
<value>目錄</value>
<description>location of default database for the warehouse</description>
</property>
需要為該目錄配置同組可寫:

hdfs dfs -chmod g+w 目錄
,另外也可以順便在這個自定義配置文件中設置如下參數

 <property>
   <name>hive.cli.print.header</name>
   <value>true</value>
 </property> 
 <property>
   <name>hive.cli.print.current.db</name>
   <value>true</value>
 </property>
這樣每次select返回結果信息就會顯示有表頭字段名了。

轉載:https://blog.csdn.net/qq_39954916/article/details/105197541?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduend~default-1-105197541.nonecase&utm_term=hive%20warehouse%E9%85%8D%E7%BD%AE&spm=1000.2123.3001.4430


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM