當前位置:首頁 » 編程語言 » 如何進sparksql
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

如何進sparksql

發布時間: 2023-01-13 03:38:36

⑴ 如何使用Spark sql 的JDBC server

首先確保SQLSERVER服務正在運行,並可以允許遠程訪問連接

然後按如下步驟進行連接
1.安裝JDBC驅動
1)下載JDBC驅動

2)執行sqljdbc_4.0.2206.100_chs.exe解壓驅動文件

3)拷貝以下目錄中的sqljdbc_auth.dll到Windows的System32目錄。對x64的機子,x64的dll拷到C:\Windows\System32,x86的dll拷到C:\Windows\SysWOW64目錄。
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\auth\

2.在Java程序中連接SQL Server
classpath中加上安裝好的SQL Server jdbc jar包
Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\chs\sqljdbc4.jar

連接SQL Server的JDBC代碼
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

String url = "jdbc:sqlserver://localhost:54364;databaseName=master;IntegratedSecurity=True";

Connection con = DriverManager.getConnection(url);
在SQL Server Browser服務開啟的情況下也可以通過服務名連接
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

String url = "jdbc:sqlserver://localhost\\SQLEXPRESS;databaseName=master;IntegratedSecurity=True";

Connection con = DriverManager.getConnection(url);

3.身份驗證模式

SQL Server默認使用Windows身份驗證模式,這也是官方推薦的模式,安全性更高。上面的連接例子就是採用的Windows認證。如果要使用混合認證模式,需要下載SQL Server Management Studio,並通過SQL Server Management Studio修改認證模式為混合認證模式。

⑵ hue怎麼直接操作spark sql

可以用notebook,需要安裝一個livy server作為spark sql server,在notebook上支持hive,spark,R等

在這上面使用spark的話,跟後台通過spark調命令行差不多

可以去其官網看一下例子。

⑶ AWS Glue中使用Spark SQL

AWS Glue 是一項完全託管的提取、轉換和載入 (ETL) 服務,讓客戶能夠輕松准備和載入數據進行分析。您只需在 AWS 管理控制台中單擊幾次,即可創建並運行 ETL 作業。您只需將 AWS Glue 指向存儲在 AWS 上的數據,AWS Glue 便會發現您的數據,並將關聯的元數據(例如表定義和架構)存儲到 AWS Glue 數據目錄中。存入目錄後,您的數據可立即供 ETL 搜索、查詢和使用。

Glue提供了DynamicFrame來操作數據,但如果用戶習慣用Spark SQL來做ETL,那是否可行呢? 本文就做了一個嘗試:

首先我們創建一個基本的Glue Job,選擇Spark,這里要注意在Job parameters裡面加上

--enable-glue-datacatalog = true

這是為了在Spark SQL中使用Glue的元數據。

之後其他步驟都隨意選擇,進入腳本編輯環境,將腳本替換成如下:

這里做了一個簡單的insert overwrite操作,從表testdata1中選擇數據到表table_6。

嘗試運行Job,等待7-8分鍾後就可以看到任務完成了。此時去檢查table_6的數據,已經有了。

⑷ sparksql的程序入口是什麼

SparkSession。SparkSQL介紹說明,sparksql的程序入口是SparkSession。SparkSQL作為ApacheSpark中的一個模塊,將關系處理與SparkAPI集成在一起。它是專為涉及大規模數據集的只讀聯機分析處理(OLAP)而設計的。

⑸ Spark SQL 到底怎麼搭建起來

Spark on yarn已搭建好,開始使用SparkSql,做如下工作
1、將Hive-site.xml 至$SPARK_HOME/conf目錄,注意配置hive.metastore.uris、hive.metastore.client.socket.timeout
2、復制MySQL-connector-Java.jar 到$SPARK_HOME/lib目錄
3、配置spark-env.sh
export SPARK_CLASSPATH=$SPARK_CLASSPATH:/usr/lib/spark/lib/mysql-connector-java.jar:/usr/lib/hive/lib/*

export SPARK_CLASSPATH=$SPARK_CLASSPATH:/usr/lib/spark/lib/mysql-connector-java.jar:/usr/lib/hive/lib/*

4、開始使用
./bin/spark-sql --master yarn --num-executors 30 --executor-cores 4 --executor-memory 8g

⑹ 如何使用Spark SQL 的JDBC server

Spark SQL主要的推動者是Databricks。提到Spark SQL不得不提的就是Shark。Shark可以理解為Spark社區這邊搞的一個」Hive on Spark」,把Hive的物理執行計劃使用Spark計算引擎去執行。這裡面會有一些問題,Hive社區那邊沒有把物理執行計劃到執行引擎這個步驟抽象出公共API,所以Spark社區這邊要自己維護一個Hive的分支,而且Hive的設計和發展不太會考慮到如何優化Spark的Job。但是前面提到的Hive on Spark卻是和Hive一起發布的,是由Hive社區控制的。所以後來Spark社區就停止了Shark的開發轉向Spark SQL(「坑了」一部分當時信任Shark的人)。Spark SQL是把SQL解析成RDD的transformation和action,而且通過catalyst可以自由、靈活的選擇最優執行方案。對資料庫有深入研究的人就會知道,SQL執行計劃的優化是一個非常重要的環節,Spark SQL在這方面的優勢非常明顯,提供了一個非常靈活、可擴展的架構。但是Spark SQL是基於內存的,元數據放在內存裡面,不適合作為數據倉庫的一部分來使用。所以有了Spark SQL的HiveContext,就是兼容Hive的Spark SQL。它支持HiveQL, Hive Metastore, Hive SerDes and Hive UDFs以及JDBC driver。這樣看起來很完美,但是實際上也有一些缺點:Spark SQL依賴於Hive的一個snapshot,所以它總是比Hive的發布晚一個版本,很多Hive新的feature和bug fix它就無法包括。而且目前看Spark社區在Spark的thriftserver方面的投入不是很大,所以感覺它不是特別想朝著這個方向發展。還有一個重要的缺點就是Spark SQL目前還不能通過分析SQL來預測這個查詢需要多少資源從而申請對應的資源,所以在共享集群上無法高效地分配資源和調度任務。