取消
顯示的結果
而不是尋找
你的意思是:

如何從com.databricks.spark.sqldw進口SqlDWRelation

WillJMSFT
新的貢獻者三世

你好,,我工作在項目中使用SQL數據倉庫連接器內置磚(https://docs.m.eheci.com/data/data-sources/azure/synapse-analytics.html)。從那裏,我想提取信息從邏輯計劃/邏輯關係將幫助我識別表和數據庫(或至少JDBC URL)被用於查詢數據。

我相信我需要從BaseRelation SqlDWRelation提取後的關係從邏輯計劃所示。

val df = spark.read.format (com.databricks.spark.sqldw) .option (“url”, sqlDwUrl) .option (“tempDir”, tempDir) .option .option (“forwardSparkAzureStorageCredentials”、“true”)(“數據表”,表名).load () val logicalPlan = df.queryExecution。邏輯val logicalRelation = logicalPlan。asInstanceOf LogicalRelation val sqlBaseRelation = logicalRelation.relation

然而,這樣做後,我試著投sqlBaseRelation。asInstanceOf SqlDWRelation”和它導致一個錯誤看起來像:

無法訪問對象SqlDWRelation包sqldw com.databricks.spark.sqldw在包

編輯:上麵的錯誤是有意義的,因為它是一個私人類:disappointed_face:

當看著jar為SQL DW連接器提供了在工作區中,我可以看到SqlDWRelation(編輯公共)私人類但它不是可以通過選項卡/內自動完成數據磚筆記本

有人曾經試圖使用SqlDWRelation和提取信息的表和數據庫的名稱給logicalrelation ?謝謝你的指導!

在我的環境中,我使用:

  • Azure磚
  • 磚9.1運行時
  • Scala的筆記本
  • SQL Azure突觸池
6個回答6

WillJMSFT
新的貢獻者三世

啊!是的!很抱歉!今天早上我才意識到,這是一個私人類,這就是為什麼我沒有看到它出現在自動完成。

下一步是找出我們仍然可以訪問該數據甚至當它使用BaseRelation而不僅僅是SqlDWRelation(私人)。

我真的很感謝你的回複,@werners !

嗨@Will約翰遜,

如果@Werner Stinckens的回答幫助你解決這個問題,你可以選擇它作為最好的回應嗎?它將有助於移動到頂部。

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map