我试图在Linux服务器上运行配置单元,但我一直收到以下错误:
Caused by: ERROR XSDB6: Another instance of Derby may have already booted the database /home/usr/metastore_db
出了什么问题?我试过了:
ps aux | grep spark-shell
ps aux | grep metastore
ps aux | grep derby
但没有一个显示任何过程。可能是什么原因?
答案 0 :(得分:0)
我发现这种情况正在发生,因为已经有多个其他Spark-Shell实例已经运行并且已经拥有derby DB,所以当我启动另一个Spark Shell并使用RDD.toDF()创建数据框时,它是投掷错误:
解决方案:
我运行了ps命令来查找Spark-Shell的其他实例:
ps -ef | grep spark-shell
我使用kill命令将它们全部杀死:
kill -9 Spark-Shell-processID(例如:kill -9 4848)
在所有SPark-Shell实例都消失之后,我开始了一个新的SPark SHell并重新启动了我的数据帧功能,它运行得很好:)
答案 1 :(得分:0)
问题在于您的hive-site.xml上的以下配置之一,或者您没有将文件复制到正确的位置以进行spark
avax.jdo.option.ConnectionURL
javax.jdo.option.ConnectionDriverName
hive.metastore.uris
hive.metastore.local
hive.metastore.warehouse.dir