在配置和檢視配置之前先弄清楚兩個概念
hive on spark:hive預設在mr上跑,可改成在spark記憶體上跑
spark on hive:不管如何執行spark sql,預設讀取的hive資料庫,其實spark不是直接讀取hive資料庫,而是讀取hive元資料和hdfs,那就是要配置hive的metastore。
hive 的 metastore 安裝方式共有三種
1.內嵌模式,特點是:hive服務和metastore服務執行在同乙個程序中,derby服務也執行在該程序中。
2.本地模式,特點是:hive服務和metastore服務執行在同乙個程序中,mysql是單獨的程序,可以在同一臺機器上,也可以在遠端機器上。
該模式只需將hive-site.xml中的connectionurl指向mysql,並配置好驅動名、資料庫連線賬號即可:
需要將 mysql 的驅動 jar 包拷貝到
$hive_home/lib目錄下, 並啟動 mysql 服務
hive-site.xml配置如下
3.遠端模式,特點是:hive服務和metastore在不同的程序內,可能是不同的機器。該模式需要將hive.metastore.local設定為false,並將hive.metastore.uris設定為metastore伺服器uri,如有多個metastore伺服器,uri之間用逗號分隔。metastore伺服器uri的格式為thrift://hostort
遠端模式與本地模式的區分,就是hive服務和metastore服務是否在同一程序,即使在同一臺機器也可配置遠端模式。
metastore啟動命令
hive --service metastore -p
如果不加埠預設啟動:hive --service metastore,則預設監聽9083
ip為服務所在機器
看到thrift可能有些不明白,這就要涉及hiveserver2
從圖中看出 hiveserver是hive與client端的交換終端,client通過hiveserver構建查詢語句,訪問hadoop,並把資料通過hiveserver返回到client端,hiveserver的核心是基於thrift,thrift負責hive的查詢服務,thtift是構建跨平台的rpc框架,主要由四層組成:server,transport,protocol和處理器。
Spark 連線Hive分布式環境搭建
建立使用者 adduser username chmod u w etc sudoers vim etc sudoers chmod u w etc sudoers 原始碼編譯mysql 5.5 安裝多個版本的mysql 安裝cmake plain view plain copy tar zxvf ...
使用Spark跨集群同步Hive資料
本文適用有入門spark基礎的同學,一些最基礎知識不再贅述 通過閱讀本文即可掌握使用spark跨集群同步hive資料的技巧!眾所周知,業界比較成熟的同步資料工具是sqoop,它是連線關係型資料庫和hadoop的橋梁 比較常用的場景是從mysql等rdb同步到hive hbase或者將hive hba...
HIVE倉庫擴充套件 連線hive資料庫
一 命令列客戶端工具 hivecli cli是和hive互動的最簡單 最常用方式,你只需要在乙個具備完整hive環境下的shell終端中鍵入hive即可啟動服務。beeline beeline是hive新的命令列客戶端工具。hive客戶端工具後續將使用beeline 替代hivecli 並且後續版本...