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

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

WillJMSFT
新的貢獻者三世

你好,,我工作在項目中使用SQL數據倉庫連接器內置磚(https://docs.www.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突觸池
1接受解決方案

接受的解決方案

werners1
尊敬的貢獻者三世

哈哈所以我打字回複但現在我看到你編輯你的文章。

一個私有方法不能被稱為。

我曾與連接器隻運行查詢等,獲取元數據。

但黃金法則是:如果自動完成了它,你可以使用它。

也許有很多的努力,因為缺少文檔,但這是可以做到的。

在原帖子查看解決方案

6個回答6

Kaniz
社區經理
社區經理

你好@WillJMSFT!我的名字叫Kaniz,我這裏的技術主持人。很高興認識你,謝謝你的問題!看看你的同行在社區中有一個回答你的問題。否則我將盡快給你回電。謝謝。

werners1
尊敬的貢獻者三世

你試圖通過簡單的查詢突觸看看效果如何?

WillJMSFT
新的貢獻者三世

@Werner Stinckens謝謝你的回複!SQL DW連接器本身工作很好,我可以從SQL DW檢索結果。我想提取元數據(即服務器、數據庫和表名)從邏輯計劃(或通過其他方式)。

werners1
尊敬的貢獻者三世

哈哈所以我打字回複但現在我看到你編輯你的文章。

一個私有方法不能被稱為。

我曾與連接器隻運行查詢等,獲取元數據。

但黃金法則是:如果自動完成了它,你可以使用它。

也許有很多的努力,因為缺少文檔,但這是可以做到的。

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

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

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

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

Baidu
map