把Spark SQL的metadata存储到mysql


1:安装配置mysql

yum install mysql mysql-server
service mysqld start
mysqladmin -u root  password newpassword
mysql -u root -p
登录mysql
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION
有时候上面语句不行,换这个GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' identified by 'password'
myslq>FLUSH PRIVILEGES
 

2:配置hive-site.xml

下载一个hive的安装包,加压后复制conf目录下面的hive-default.xml.template到SPARK_HOME/conf中,重命名为hive-site.xml
修改4个重要属性:
1:javax.jdo.option.ConnectionURL         
jdbc:mysql://192.168.1.93:3306/sparkmetadata?createDatabaseIfNotExist=true&characterEncoding=UTF-8
2:javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
3:javax.jdo.option.ConnectionUserName
root
4: javax.jdo.option.ConnectionPassword
xxx
 
然后修改Hive-site.xml中所有的时间属性,所有属性的单位为s(秒),删除s然后添加3个0,所有属性的单位为ms的删除ms,spark无法识别这些单位,而是把他们全当数字处理。
 

3:启动spark-sql

在spark-sql的shell下面创建表,查看mysql的database:sparkmetadata中的表:TBLS是否包含该记录,如果有说明一切OK。
 






免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM