spark批量寫入mysql mysql作為數(shù)據(jù)源可否直接用spark處理?
mysql作為數(shù)據(jù)源可否直接用spark處理?謝謝。Spark通過JDBC從RDB查詢數(shù)據(jù)源。不過,Spark對(duì)JDBC的支持也是一個(gè)漸進(jìn)的演進(jìn)過程,關(guān)鍵是1.3版的引入,也就是數(shù)據(jù)幀。在1.3之前,
mysql作為數(shù)據(jù)源可否直接用spark處理?
謝謝。Spark通過JDBC從RDB查詢數(shù)據(jù)源。不過,Spark對(duì)JDBC的支持也是一個(gè)漸進(jìn)的演進(jìn)過程,關(guān)鍵是1.3版的引入,也就是數(shù)據(jù)幀。在1.3之前,spark使用JDBCRDD處理對(duì)JDBC的查詢。它實(shí)現(xiàn)了標(biāo)準(zhǔn)的RDD接口,如分區(qū)和計(jì)算。但對(duì)很多用戶來說太復(fù)雜了。從1.3開始,您可以直接用DF接口做同樣的事情。例如,下面的代碼可以完成一個(gè)RDB表的查詢
如您所見,無論數(shù)據(jù)源(hive、parquet,甚至NoSQL)的數(shù)據(jù)來自何處,在引入數(shù)據(jù)幀后,其代碼都非常相似,結(jié)果就是數(shù)據(jù)幀,您可以盡可能地將它們混合在一起。至于dataframe如何支持多個(gè)數(shù)據(jù)源以及如何優(yōu)化它們,我將再次討論源代碼。
spark怎樣并發(fā)的從mysql查詢數(shù)據(jù)?
在我的標(biāo)題中查找案例?
如何使用scala開發(fā)spark作業(yè),并訪問hive?
1. 為了讓spark連接到hive的原始數(shù)據(jù)倉庫,我們需要在hive中連接hive-網(wǎng)站.xml將該文件復(fù)制到spark的conf目錄,這樣您就可以通過這個(gè)配置文件找到hive的元數(shù)據(jù)和數(shù)據(jù)存儲(chǔ)。
在這里,因?yàn)槲业膕park是自動(dòng)安裝和部署的,所以我需要知道CDH將配置-網(wǎng)站.xml它在哪里?摸索之后。此文件的默認(rèn)路徑在/etc/hive/conf下
類似地,spark的conf在/etc/spark/conf下
此時(shí),如上所述,相應(yīng)的配置單元被更改-網(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文件.