sparksql自定義數(shù)據(jù)源 mysql作為數(shù)據(jù)源可否直接用spark處理?
mysql作為數(shù)據(jù)源可否直接用spark處理?謝謝。Spark通過JDBC從RDB查詢數(shù)據(jù)源。不過,Spark對JDBC的支持也是一個漸進的演進過程,關鍵是1.3版的引入,也就是數(shù)據(jù)幀。在1.3之前,
mysql作為數(shù)據(jù)源可否直接用spark處理?
謝謝。Spark通過JDBC從RDB查詢數(shù)據(jù)源。不過,Spark對JDBC的支持也是一個漸進的演進過程,關鍵是1.3版的引入,也就是數(shù)據(jù)幀。在1.3之前,spark使用JDBCRDD處理對JDBC的查詢。它實現(xiàn)了標準的RDD接口,如分區(qū)和計算。但對很多用戶來說太復雜了。從1.3開始,您可以直接用DF接口做同樣的事情。例如,下面的代碼可以完成一個RDB表的查詢
如您所見,無論數(shù)據(jù)源(hive、parquet,甚至NoSQL)的數(shù)據(jù)來自何處,在引入數(shù)據(jù)幀后,其代碼都非常相似,結(jié)果就是數(shù)據(jù)幀,您可以盡可能地將它們混合在一起。至于dataframe如何支持多個數(shù)據(jù)源以及如何優(yōu)化它們,我將再次討論源代碼。
求問怎么設置sparksql讀取hive的數(shù)據(jù)庫?
過去,hive是用來建立數(shù)據(jù)倉庫的,因此對hive管理的數(shù)據(jù)查詢有很大的需求。Hive、shark和sparlsql可以查詢Hive數(shù)據(jù)。Shark使用hive的SQL語法解析器和優(yōu)化器,修改executor,使其物理執(zhí)行過程在spark上運行;spark-SQL使用自己的語法解析器、優(yōu)化器和executor,spark-SQL還擴展了接口,不僅支持hive數(shù)據(jù)查詢,還支持多數(shù)據(jù)源的數(shù)據(jù)查詢。
spark sql構建特征?
1. 易于集成
SQL查詢和Spark程序的無縫混合
不同語言的代碼開發(fā)
2。統(tǒng)一數(shù)據(jù)源訪問
以相同的方式連接到任何數(shù)據(jù)源。以后,sparksql可以使用統(tǒng)一的方式連接到任何外部數(shù)據(jù)源,而無需使用不同的api
3。兼容hive
sparksql可以支持hivesql語法sparksql兼容hivesql
4。支持標準數(shù)據(jù)庫連接
sparksql支持標準數(shù)據(jù)庫連接JDBC或ODBC