Spark入门(六)Spark SQL shell启动方式(元数据存储在mysql)
生活随笔
收集整理的這篇文章主要介紹了
Spark入门(六)Spark SQL shell启动方式(元数据存储在mysql)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、hive配置文件?
在spak/conf目錄添加hive-site.xml配置,設置mysql作為元數據存儲的數據庫
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://192.168.150.1:3306/spark_metadata_db?createDatabaseIfNotExist=true&characterEncoding=UTF-8</value><description>JDBC connect string for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value><description>Driver class name for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value><description>Username to use against metastore database</description></property><property><name>javax.jdo.option.ConnectionPassword</name><value>admin</value><description>password to use against metastore database</description></property><!-- hive查詢時輸出列名 --><property><name>hive.cli.print.header</name><value>true</value></property><!-- 顯示當前數據庫名 --><property><name>hive.cli.print.current.db</name><value>true</value></property> </configuration>?
二、啟動spark-sql shell
--driver-class-path 是spark元數據存儲的驅動類路徑,這里使用mysql作為metastore,故使用mysql-connector-java-5.1.26-bin.jar?
--jars 是executer執行器的額外添加類的路徑,這里使用mysql的test表進行操作,故使用mysql-connector-java-5.1.26-bin.jar?
--total-executor-cores? 啟動的核數,默認是所有核數
--executor-memory? 每個work分配的內存,默認是work的所有內存
cd ~/software/spark-2.4.4-bin-hadoop2.6 bin/spark-sql --master spark://hadoop01:7077,hadoop02:7077,hadoop03:7077 --driver-class-path /home/mk/mysql-connector-java-5.1.26-bin.jar --jars /home/mk/mysql-connector-java-5.1.26-bin.jar --total-executor-cores 2 --executor-memory 1g?
啟動shell前:
啟動shell后:
??mysql數據庫里面創建了spark_metadata_db
?
三、執行sql
show tables;create table test(id int, name string) USING org.apache.spark.sql.jdbc options(url 'jdbc:mysql://192.168.150.1:3306/spark-mysql?user=root&password=admin', dbtable 'test_a');show tables;select * from test;insert into test values(4, 'd'), (5, 'e'), (6, 'f');select * from test;?
?
?
?
?
總結
以上是生活随笔為你收集整理的Spark入门(六)Spark SQL shell启动方式(元数据存储在mysql)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 护花危情结局 该剧主要讲述了什么故事
- 下一篇: Spark入门(七)Spark SQL