使數據訪問配置
本文描述了數據訪問配置數據磚管理員執行的所有SQL倉庫使用UI。
請注意
如果啟用了工作區為統一目錄,您不需要執行本文中的步驟。統一目錄默認支持SQL倉庫。
使用REST API來配置所有SQL倉庫,看看SQL API倉庫。
重要的
改變這些設置重啟所有正在運行的SQL倉庫。
概述如何啟用訪問數據,看看訪問控製。
需求
你必須是一個磚工作區管理配置設置的所有SQL倉庫。
配置實例配置文件
配置所有倉庫時使用一個AWS實例配置文件訪問AWS存儲:
點擊你的用戶名欄頂部的工作區並選擇管理設置從下拉。
單擊SQL倉庫設置選項卡。
在實例配置文件下拉,選擇一個實例配置文件。如果沒有資料,請參閱配置實例配置文件。
點擊保存。
警告
如果用戶沒有權限使用實例配置文件,所有用戶創建倉庫將無法開始。
如果實例配置文件是無效的,所有SQL倉庫將變得不健康。
您還可以配置概要文件的一個實例磚起程拓殖的提供者和databricks_sql_global_config。
請注意
你也可以直接編輯文本框數據訪問配置條目。
重要的
設置一個配置屬性值的一個秘密而不暴露秘密值火花,將值設置為{{秘密/ < secret-scope > / <秘密名字>}}
。取代< secret-scope >
的範圍和秘密<秘密名字>
秘密的名字。的值必須從{{秘密/和結束}}。這個語法的更多信息,請參閱語法引用火花配置中的秘密財產或環境變量。
配置數據訪問屬性的SQL倉庫
配置所有倉庫與數據訪問屬性,比如當你使用一個外部metastore代替蜂巢metastore:
點擊你的用戶名欄頂部的工作區並選擇管理設置從下拉。
單擊SQL倉庫設置選項卡。
在數據訪問配置文本框中,指定包含鍵值對metastore屬性。
重要的
設置一個火花配置屬性的價值一個秘密而不暴露秘密值火花,將值設置為
{{秘密/ < secret-scope > / <秘密名字>}}
。取代< secret-scope >
的範圍和秘密<秘密名字>
秘密的名字。必須從價值{{秘密/
和結束}}
。這個語法的更多信息,請參閱語法引用火花配置中的秘密財產或環境變量。點擊保存。
您還可以配置數據訪問的屬性磚起程拓殖的提供者和databricks_sql_global_config。
支持的屬性
以下屬性支持SQL倉庫。結尾的一個條目*
內的所有屬性,支持前綴。例如,spark.sql.hive.metastore。*
表明兩個spark.sql.hive.metastore.jars
和spark.sql.hive.metastore.version
支持,以及任何其他屬性,開始spark.sql.hive.metastore
。
對於屬性的值包含敏感信息,您可以存儲敏感信息秘密並設置屬性值的秘密名字使用下麵的語法:秘密/ < secret-scope > / <秘密名字>
。
spark.databricks.hive.metastore.glueCatalog.enabled
spark.databricks.delta.catalog.update.enabled假
spark.sql.hive.metastore。*
(spark.sql.hive.metastore.jars
和spark.sql.hive.metastore.jars.path
是不支持的serverless SQL倉庫。)spark.sql.warehouse.dir
spark.hadoop.aws.region
spark.hadoop.datanucleus。*
spark.hadoop.fs。*
spark.hadoop.hive。*
spark.hadoop.javax.jdo.option。*
spark.hive。*
spark.hadoop.aws.glue。*
spark.databricks.cloudfetch.override.enabled
如何設置這些屬性的更多信息,參見外部蜂巢metastore和AWS膠數據目錄。
證實或建立一個AWS實例配置文件使用與serverless SQL倉庫
如果你已經在使用概要文件與磚SQL的一個實例,與實例配置文件相關聯的角色需要一個磚Serverless計算信任關係的聲明,這樣Serverless SQL倉庫可以使用它。
這取決於您的實例配置文件被創建時,您可能不需要修改的角色,因為它可能已經信任關係。如果實例配置文件創建在以下方麵,它可能有信任關係聲明:
2022年6月24日之後,您的實例配置文件創建的一部分創建一個磚工作區使用AWS快速入門。
2022年6月24日之後,有人在磚的文章在你的組織中遵循的步驟手動創建實例配置文件。
本節描述如何確認或更新與實例配置文件相關聯的角色有信任關係的聲明。使你serverless SQL倉庫使用S3 bucket角色訪問。
重要的
要執行這些步驟,您必須是一個磚工作區管理確認哪個實例配置文件工作區使用磚SQL。你也必須成為一個AWS帳戶管理員檢查角色的信任關係政策或進行任何必要的更改。如果你沒有這兩種類型的管理,聯係相應的管理員在你的組織中來完成這些步驟。
在管理員設置頁麵,單擊SQL倉庫設置選項卡。
看看數據安全部分實例配置文件字段。確認您的工作區配置為使用一個AWS實例配置文件為磚SQL連接到AWS S3 bucket根鬥。
如果您使用的是一個實例,它的名字是可見的實例配置文件字段。記下它的下一步。
如果字段值沒有一個,你不使用一個實例配置文件訪問S3 bucket工作區以外的根鬥。設置完成。
確認您的實例配置文件名匹配相關的角色名。
在AWS控製台,去我服務的角色選項卡。它列出了所有我的角色,在您的帳戶。
點擊角色的名稱相匹配的實例配置文件名稱中的磚SQL管理設置數據安全部分實例配置文件場,你發現早在這一節中。
在總結區域,找到的的角色是和實例配置文件是字段。
檢查這兩個字段的最後部分匹配的名字後最終削減。例如:
如果你決定在前一步的角色名稱(文本中的最後一個斜杠後角色攻擊)和實例配置文件名稱(去年削減後的文本實例配置文件是)不匹配,編輯您的實例資料登記指定你在攻擊我的角色。
編輯您的實例資料,看以下實例配置文件字段並單擊配置按鈕。
單擊您的實例配置文件的名字。
點擊編輯。
在可選的角色是場,粘貼的作用是與您的實例相關聯的角色形象。這是關鍵的一步,允許您的實例配置文件使用磚SQL Serverless即使角色名稱不匹配實例配置文件名稱。
點擊保存。
在AWS控製台,證實或編輯信任關係。
在AWS控製台我服務的角色選項卡,點擊您想修改的實例配置文件的作用。
單擊信任關係選項卡。
查看現有的信任策略。如果政策已經包含JSON塊下麵,然後在早些時候這一步完成後,您可以忽略以下指令。
點擊編輯信任策略。
在現有的
聲明
JSON數組,添加下麵的塊的結束現有的信任策略。確保你不會覆蓋現有的政策。{“效應”:“允許”,“校長”:{“AWS”:(“攻擊:aws:我::790110701330:角色/ serverless-customer-resource-role”]},“行動”:“sts: AssumeRole”,“條件”:{“StringEquals”:{“sts: ExternalId”:(“databricks-serverless - < YOUR-WORKSPACE-ID1 >”,“databricks-serverless - < YOUR-WORKSPACE-ID2 >”]}}}
你唯一需要改變在聲明中工作區ID。取代
YOUR_WORKSPACE-ID
與一個或多個磚工作區id的工作空間將使用這個角色。得到您的工作區ID,您使用的是您的工作區,檢查URL。例如,在https:// < databricks-instance > / ? o = 6280049833385130
後,o =
是工作區ID。做不編輯的主要政策。的
Principal.AWS
字段必須繼續有值攻擊:aws:我::790110701330:/ serverless-customer-resource-role角色
。這引用由磚serverless計算的作用。點擊審查政策。
點擊保存更改。
重要的
如果您的實例配置文件改變在稍後的時間,重複這些步驟,以確保信任關係的實例配置文件包含所需的額外的聲明中所扮演的角色。
故障排除
如果你的信任關係是配置錯誤,集群失敗的消息表示“請求創建一個集群與異常INVALID_PARAMETER_VALUE失敗:< role-id >我的角色沒有所需的信任關係。”
如果你有這種錯誤,這可能是工作區id是不正確的或可能的信任策略不正確更新正確的角色。
認真執行步驟證實或建立一個AWS實例配置文件使用與serverless SQL倉庫更新信任關係。
配置膠metastore serverless SQL倉庫
如果你需要指定一個AWS膠metastore或添加額外的數據源配置,更新數據訪問配置在管理設置頁麵。看到使數據訪問配置。
重要的
Serverless SQL倉庫支持默認磚metastore metastore和AWS膠,但不支持外部蜂巢metastores。