[spark]spark/hive配置metastore为postgresql

看文档可以知道,Spark SQL复用了hive的sql解析器/metastore管理。而hive的默认的metastore为derby,它有两个弊端:

1.metastore一次仅允许一个客户端连接

2.每个客户端进行sql操作时,都会在本进程所在的文件夹内新建metastore

所以,在产品的开发中,至少应该将metastore配为postgresql的

步骤如下:

1.在postgresql中新建一个用户nsc,并为它新建一个数据库metastore;并允许远程访问

2.新建/home/pijing/spark/conf/hive-site.xml文件,配置如下:

3.我用的spark版本为1.3.0,它所用的hive版本为0.12.0;所以下载一个hive的包,在它的: scripts\metastore\upgrade\postgres目录下,找到hive-schema-0.12.0.postgres.sql

运行命令:

psql –U nsc metastore<c:\hive\scripts\metastore\upgrade\postgres\hive-schema-0.12.0.postgres.sql

将表导入pg的metastore库中。

4.接着,再运行/home/pijing/spark/sbin/start-thriftserver.sh即可


经过以上步骤,metastore就被配置为了postgresql中的metastore数据库。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值