我想設置一個磚SQL端點連接到外部蜂巢metastore。我複製metastore火花配置SQL端點,通過添加添加以下配置:
spark.sql.hive.metastore.jarsmaven
我一直錯誤
不能實例化org.apache.hadoop.hive.metastore.HiveMetaStoreClient
我們目前正在使用Azure磚,蜂巢Metastore 0.13版本,和Azure MySQL數據庫。
這是完整的SQL端點配置:
spark.hadoop.javax.jdo.option。ConnectionPassword{{秘密/ keyvault / db-secret-name}} spark.hadoop.javax.jdo.option。ConnectionURL jdbc: mysql: / / my-dbserver-name.mysql.database.azure.com: 3306 / my-db-name嗎?sslMode = PREFERRED&verifyServerCertificate = true spark.hadoop.javax.jdo.option。ConnectionDriverName com.mysql.jdbc。司機spark.sql.hive.metastore。spark.hadoop.javax.jdo.option 0.13版本。ConnectionUserName adminuser@my-db-name spark.sql.hive.metastore。maven spark.hadoop.hive.metastore.schema jar。驗證錯誤spark.hadoop.hive.metastore.schema.verification.record。假spark.sql.hive.metastore.schema.verification.record版本。真正的spark.hadoop.datanucleus版本。autoCreateSchema假spark.sql.hive.metastore.schema。驗證真實spark.hadoop.datanucleus.schema。autoCreateTables假spark.hadoop.datanucleus。fixedDatastore真實
SQL端點支持蜂巢Metastore 0.13版本嗎?或任何其他的指導,我們將不勝感激。
謝謝,這是一個偉大的建議,試圖找出幕後發生了什麼。不幸的是,我在一個損失下一步該做什麼。
我的錯誤:
引起的:org.datanucleus.store.rdbms.connectionpool。DatastoreDriverNotFoundException:指定數據存儲驅動程序(“com.mysql.jdbc.Driver”)不存在在類路徑中。請檢查你的類路徑規範和司機的名字。
我也試著用“com.mysql.cj.jdbc。司機”司機的名字,因為這是MySQL連接器是什麼文檔。
我試過下載正確的驅動程序從文檔設置spark.sql.hive.metastore.jars來maven然而,下麵的命令從文檔給我沒有權限錯誤:
% sh cp - r <路徑> / dbfs / hive_metastore_jar
<路徑>對我來說這裏是/ local_disk0 / tmp /蜂巢v13 - 4467 a09c - d7cd - 42 - cf - 824 f - 47 ca74cc7bc4從日誌。我試著複製/ local_disk0 / tmp,但這個目錄是省略的副本。
然後我嚐試下載mysql連接器JAR (mysql-connector-java-8.0.30.jar)手動從maven,上傳dbfs,並創造了一個全球init腳本將JAR複製到本地文件係統。
睡眠10 cp / dbfs / hive_metastore_jars / *。jar /磚/ hive_metastore_jars /
這個全球init腳本並不是有效的,它會導致集群不開始說它與非零退出代碼退出。我可以做一些很錯了,沒有這樣做在過去複製過程。
我嚐試設置spark.sql.hive.metastore.jars到dbfs路徑/ dbfs / hive_metastore_jars / *我已經成功地使用這種配置在過去。這仍然不工作,讓司機在類路徑中沒有發現“錯誤。
我在這裏失蹤或任何想法我如何解決這個問題嗎?
謝謝,
賽斯