有spark為什么還要hive 求問(wèn)怎么設(shè)置sparksql讀取hive的數(shù)據(jù)庫(kù)?
求問(wèn)怎么設(shè)置sparksql讀取hive的數(shù)據(jù)庫(kù)?過(guò)去,hive是用來(lái)建立數(shù)據(jù)倉(cāng)庫(kù)的,因此對(duì)hive管理的數(shù)據(jù)查詢(xún)有很大的需求。Hive、shark和sparlsql可以查詢(xún)Hive數(shù)據(jù)。Shark使
求問(wèn)怎么設(shè)置sparksql讀取hive的數(shù)據(jù)庫(kù)?
過(guò)去,hive是用來(lái)建立數(shù)據(jù)倉(cāng)庫(kù)的,因此對(duì)hive管理的數(shù)據(jù)查詢(xún)有很大的需求。Hive、shark和sparlsql可以查詢(xún)Hive數(shù)據(jù)。Shark使用hive的SQL語(yǔ)法解析器和優(yōu)化器,修改executor,使其物理執(zhí)行過(guò)程在spark上運(yùn)行;spark-SQL使用自己的語(yǔ)法解析器、優(yōu)化器和executor,spark-SQL還擴(kuò)展了接口,不僅支持hive數(shù)據(jù)查詢(xún),還支持多數(shù)據(jù)源的數(shù)據(jù)查詢(xún)。
如何使用scala開(kāi)發(fā)spark作業(yè),并訪問(wèn)hive?
1. 為了讓spark連接到hive的原始數(shù)據(jù)倉(cāng)庫(kù),我們需要在hive中連接hive-網(wǎng)站.xml將該文件復(fù)制到spark的conf目錄,這樣您就可以通過(guò)這個(gè)配置文件找到hive的元數(shù)據(jù)和數(shù)據(jù)存儲(chǔ)。
在這里,因?yàn)槲业膕park是自動(dòng)安裝和部署的,所以我需要知道CDH將配置-網(wǎng)站.xml它在哪里?摸索之后。此文件的默認(rèn)路徑在/etc/hive/conf下
對(duì)于spark/etc/conf也是如此
此時(shí),如上所述,相應(yīng)的配置單元發(fā)生了更改-網(wǎng)站.xml復(fù)制到spark/conf目錄
如果hive的元數(shù)據(jù)存儲(chǔ)在mysql中,我們需要準(zhǔn)備mysql相關(guān)的驅(qū)動(dòng)程序,例如mysql-connector-java-5.1.22-bin.jar文件.
hive和sparksql的區(qū)別?
功能點(diǎn):hive:[1,數(shù)據(jù)存儲(chǔ)
2,數(shù)據(jù)清理spark:1,數(shù)據(jù)清理2,流計(jì)算hive可以通過(guò)HQL模式讀取hive數(shù)據(jù)進(jìn)行數(shù)據(jù)清理spark可以通過(guò)spark SQL或spark core模式清理數(shù)據(jù),可以讀取數(shù)據(jù)源包live JDBC、hive、elasticsearch、file等,因此spark可以替換數(shù)據(jù)蜂巢的清洗功能,也可以使用蜂巢作為數(shù)據(jù)源。蜂巢的優(yōu)勢(shì)在于1。大數(shù)據(jù)存儲(chǔ)。MapReduce操作通過(guò)SQL降低大數(shù)據(jù)使用門(mén)檻。Spark的優(yōu)勢(shì)在于1?;趦?nèi)存的MapReduce操作,速度快。流計(jì)算(基準(zhǔn)產(chǎn)品Flink、storm)