Delta Live Tables API 指南
重要
本文的內容已淘汰,而且可能不會更新。 請參閱 Databricks REST API 參考中的 Delta 實時數據表 。
Delta Live Tables API 可讓您建立、編輯、刪除、啟動及檢視管線的詳細數據。
重要
若要存取 Databricks REST API,您必須驗證。
建立管線
端點 | HTTP 方法 |
---|---|
2.0/pipelines |
POST |
建立新的 Delta Live Tables 管線。
範例
此範例會建立新的觸發管線。
要求
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines \
--data @pipeline-settings.json
pipeline-settings.json
:
{
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"continuous": false
}
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5"
}
要求結構
請參閱管線 設定。
回應結構
欄位名稱 | 類型 | 描述 |
---|---|---|
pipeline_id | STRING |
新建立之管線的唯一標識符。 |
編輯管線
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id} |
PUT |
更新 現有管線的設定。
範例
此範例會將 target
參數新增至標識元為 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
的管線:
要求
curl --netrc -X PUT \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5 \
--data @pipeline-settings.json
pipeline-settings.json
{
"id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"target": "wikipedia_quickstart_data",
"continuous": false
}
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
要求結構
請參閱管線 設定。
刪除管線
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id} |
DELETE |
從 Delta Live Tables 系統刪除管線。
範例
這個範例會刪除識別碼為 的 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
管線:
要求
curl --netrc -X DELETE \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
啟動管線更新
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id}/updates |
POST |
啟動管線的更新。 您可以啟動整個管線圖形的更新,或特定資料表的選擇性更新。
範例
開始完整重新整理
此範例會針對識別碼 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
為 的管線啟動完整重新整理的更新:
要求
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "full_refresh": "true" }'
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
開始更新選取的數據表
此範例會啟動更新,以sales_orders_cleaned
識別碼a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
重新整理管線中的 和 sales_order_in_chicago
資料表:
要求
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "refresh_selection": ["sales_orders_cleaned", "sales_order_in_chicago"] }'
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
開始完整更新選取的數據表
此範例會啟動 和 sales_order_in_chicago
數據表的sales_orders_cleaned
更新,以及使用標識元 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
為之管線中和 sales_orders_raw
數據表完整重新customers
整理的更新。
要求
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates \
--data '{ "refresh_selection": ["sales_orders_cleaned", "sales_order_in_chicago"], "full_refresh_selection": ["customers", "sales_orders_raw"] }'
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"update_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8",
"request_id": "a1b23c4d-5e6f-78gh-91i2-3j4k5lm67no8"
}
要求結構
欄位名稱 | 類型 | 描述 |
---|---|---|
full_refresh |
BOOLEAN |
是否要重新處理所有數據。 如果 true 為 ,Delta Live Tables 系統會在執行管線之前重設所有可重設的數據表。這是選用欄位。 預設值是 false 。如果 full_refesh 為 true 且 refresh_selection 已設定 或 full_refresh_selection ,則會傳回錯誤。 |
refresh_selection |
的陣列 STRING |
要更新的數據表清單。 使用refresh_selection 表示開始重新整理管線圖形中選取的一組數據表。這是選用欄位。 如果兩者皆為 refresh_selection 和full_refresh_selection 是空的,會重新整理整個管線圖形。如果是下列情況,則會傳回錯誤: * full_refesh 為 true 且refresh_selection 已設定。* 管線圖形中不存在一或多個指定的數據表。 |
full_refresh_selection |
的陣列 STRING |
要以完整重新整理更新的數據表清單。 使用 full_refresh_selection 來開始更新選取的一組數據表。 在 Delta Live Tables 系統啟動更新之前,會重設指定數據表的狀態。這是選用欄位。 如果兩者皆為 refresh_selection 和full_refresh_selection 是空的,會重新整理整個管線圖形。如果是下列情況,則會傳回錯誤: * full_refesh 為 true 且refresh_selection 已設定。* 管線圖形中不存在一或多個指定的數據表。 * 一或多個指定的數據表無法重設。 |
回應結構
欄位名稱 | 類型 | 描述 |
---|---|---|
update_id |
STRING |
新建立更新的唯一標識碼。 |
request_id |
STRING |
啟動更新之要求的唯一標識碼。 |
取得管線更新要求的狀態
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id}/requests/{request_id} |
GET |
取得與 request_id
相關聯之管線更新的狀態和資訊,其中 request_id
是起始管線更新之要求的唯一標識符。 如果重試或重新啟動更新,則新的更新會繼承request_id。
範例
針對標識碼為 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
的管線,此範例會傳回與要求標識符 a83d9f7c-d798-4fd5-aa39-301b6e6f4429
相關聯的更新狀態和資訊:
要求
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/requests/a83d9f7c-d798-4fd5-aa39-301b6e6f4429
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"status": "TERMINATED",
"latest_update":{
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"update_id": "90da8183-89de-4715-b5a9-c243e67f0093",
"config":{
"id": "aae89b88-e97e-40c4-8e1a-1b7ac76657e8",
"name": "Retail sales (SQL)",
"storage": "/Users/username/data",
"configuration":{
"pipelines.numStreamRetryAttempts": "5"
},
"clusters":[
{
"label": "default",
"autoscale":{
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries":[
{
"notebook":{
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"continuous": false,
"development": true,
"photon": true,
"edition": "advanced",
"channel": "CURRENT"
},
"cause": "API_CALL",
"state": "COMPLETED",
"cluster_id": "1234-567891-abcde123",
"creation_time": 1664304117145,
"full_refresh": false,
"request_id": "a83d9f7c-d798-4fd5-aa39-301b6e6f4429"
}
}
回應結構
欄位名稱 | 類型 | 描述 |
---|---|---|
status |
STRING |
管線更新要求的狀態。 其中一個 * ACTIVE :此要求的更新正在主動執行,或在新的更新中重試。* TERMINATED :要求已終止,且不會重試或重新啟動。 |
pipeline_id |
STRING |
管線的唯一標識碼。 |
update_id |
STRING |
更新的唯一標識碼。 |
config |
管線 設定 | 管線設定。 |
cause |
STRING |
更新的觸發程式。 的其中 API_CALL 一個 ,RETRY_ON_FAILURE 、 、 SERVICE_UPGRADE 、 SCHEMA_CHANGE JOB_TASK 或 USER_ACTION 。 |
state |
STRING |
更新的狀態。 的其中 QUEUED 一個 , CREATED WAITING_FOR_RESOURCES 、 、 INITIALIZING 、 RESETTING SETTING_UP_TABLES 、、 RUNNING 、 STOPPING 、 COMPLETED 、FAILED 或 CANCELED 。 |
cluster_id |
STRING |
執行更新之叢集的標識碼。 |
creation_time |
INT64 |
建立更新時的時間戳。 |
full_refresh |
BOOLEAN |
此更新是否在執行之前重設所有數據表 |
refresh_selection |
的陣列 STRING |
要更新且不需完整重新整理的數據表清單。 |
full_refresh_selection |
的陣列 STRING |
要以完整重新整理更新的數據表清單。 |
request_id |
STRING |
啟動更新之要求的唯一標識碼。 這是更新要求所傳回的值。 如果重試或重新啟動更新,則新的更新會繼承request_id。 不過, update_id 會有所不同。 |
停止任何作用中的管線更新
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id}/stop |
POST |
停止任何作用中的管線更新。 如果未執行任何更新,則此要求為無作業。
對於連續管線,管線執行會暫停。 數據表目前正在處理完成重新整理,但下游數據表不會重新整理。 在下一個管線更新中,Delta Live Tables 會執行未完成處理的數據表選取的重新整理,並繼續處理其餘管線 DAG。
針對觸發的管線,管線執行會停止。 數據表目前正在處理完成重新整理,但下游數據表不會重新整理。 在下一個管線更新中,Delta Live Tables 會重新整理所有數據表。
範例
此範例會停止識別碼 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
為 的管線更新:
要求
curl --netrc -X POST \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/stop
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
列出管線事件
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id}/events |
GET |
擷取管線的事件。
範例
此範例會針對標識碼 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
為的管線擷取最多 5 個事件。
要求
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/events?max_results=5
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
要求結構
欄位名稱 | 類型 | 描述 |
---|---|---|
page_token |
STRING |
先前呼叫所傳回的頁面令牌。 此欄位與此要求中的所有字段互斥,但max_results除外。 如果設定此欄位時設定max_results以外的任何欄位,則會傳回錯誤。 這是選用欄位。 |
max_results |
INT32 |
在單一頁面中傳回的項目數上限。 即使有更多可用的事件,系統仍可能會傳回回應中的事件少於 max_results 事件。這是選用欄位。 預設值為 25。 最大值為 100。 如果的值為 ,則會傳回錯誤 max_results 大於 100。 |
order_by |
STRING |
字串,以時間戳表示結果的排序順序,例如 ["timestamp asc"] 。排序順序可以是遞增或遞減。 根據預設,事件會依時間戳以遞減順序傳回。 這是選用欄位。 |
filter |
STRING |
選取結果子集的準則,使用類似 SQL 的語法表示。 支援的篩選條件如下: * level='INFO' (或 或 WARN ERROR )* level in ('INFO', 'WARN') * id='[event-id]' * timestamp > 'TIMESTAMP' (或 >= ,< ,,= <= )支援複合運算式,例如: level in ('ERROR', 'WARN') AND timestamp> '2021-07-22T06:37:33.083Z' 這是選用欄位。 |
回應結構
欄位名稱 | 類型 | 描述 |
---|---|---|
events |
管線事件的陣列。 | 符合要求準則的事件清單。 |
next_page_token |
STRING |
如果存在,則為擷取下一頁事件的令牌。 |
prev_page_token |
STRING |
如果存在,則為擷取上一頁事件的令牌。 |
取得管線詳細資料
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id} |
GET |
取得管線的詳細數據,包括管線設定和最近的更新。
範例
此範例會取得識別碼為 a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
的管線詳細資料:
要求
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"spec": {
"id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"target": "wikipedia_quickstart_data",
"continuous": false
},
"state": "IDLE",
"cluster_id": "1234-567891-abcde123",
"name": "Wikipedia pipeline (SQL)",
"creator_user_name": "username",
"latest_updates": [
{
"update_id": "8a0b6d02-fbd0-11eb-9a03-0242ac130003",
"state": "COMPLETED",
"creation_time": "2021-08-13T00:37:30.279Z"
},
{
"update_id": "a72c08ba-fbd0-11eb-9a03-0242ac130003",
"state": "CANCELED",
"creation_time": "2021-08-13T00:35:51.902Z"
},
{
"update_id": "ac37d924-fbd0-11eb-9a03-0242ac130003",
"state": "FAILED",
"creation_time": "2021-08-13T00:33:38.565Z"
}
],
"run_as_user_name": "username"
}
回應結構
欄位名稱 | 類型 | 描述 |
---|---|---|
pipeline_id |
STRING |
管線的唯一標識碼。 |
spec |
管線 設定 | 管線設定。 |
state |
STRING |
管線的狀態。 其中 IDLE 一個 或 RUNNING 。如果 state = RUNNING ,則至少有一個作用中更新。 |
cluster_id |
STRING |
執行管線之叢集的標識碼。 |
name |
STRING |
此管線的用戶易記名稱。 |
creator_user_name |
STRING |
管線建立者的用戶名稱。 |
latest_updates |
UpdateStateInfo 的 陣列 | 管線的最新更新狀態,會先使用最新的更新來排序。 |
run_as_user_name |
STRING |
管線執行身分的用戶名稱。 |
取得更新詳細數據
端點 | HTTP 方法 |
---|---|
2.0/pipelines/{pipeline_id}/updates/{update_id} |
GET |
取得管線更新的詳細數據。
範例
此範例會取得識別碼a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5
為 之管線更新9a84f906-fc51-11eb-9a03-0242ac130003
的詳細資料:
要求
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines/a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5/updates/9a84f906-fc51-11eb-9a03-0242ac130003
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"update": {
"pipeline_id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"update_id": "9a84f906-fc51-11eb-9a03-0242ac130003",
"config": {
"id": "a12cd3e4-0ab1-1abc-1a2b-1a2bcd3e4fg5",
"name": "Wikipedia pipeline (SQL)",
"storage": "/Users/username/data",
"configuration": {
"pipelines.numStreamRetryAttempts": "5"
},
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
}
],
"libraries": [
{
"notebook": {
"path": "/Users/username/DLT Notebooks/Delta Live Tables quickstart (SQL)"
}
}
],
"target": "wikipedia_quickstart_data",
"continuous": false,
"development": false
},
"cause": "API_CALL",
"state": "COMPLETED",
"creation_time": 1628815050279,
"full_refresh": true,
"request_id": "a83d9f7c-d798-4fd5-aa39-301b6e6f4429"
}
}
回應結構
欄位名稱 | 類型 | 描述 |
---|---|---|
pipeline_id |
STRING |
管線的唯一標識碼。 |
update_id |
STRING |
此更新的唯一標識碼。 |
config |
管線 設定 | 管線設定。 |
cause |
STRING |
更新的觸發程式。 的其中 API_CALL 一個 ,RETRY_ON_FAILURE 、 SERVICE_UPGRADE 。 |
state |
STRING |
更新的狀態。 的其中 QUEUED 一個 , CREATED WAITING_FOR_RESOURCES 、 、 INITIALIZING 、 RESETTING SETTING_UP_TABLES 、、 RUNNING 、 STOPPING 、 COMPLETED 、FAILED 或 CANCELED 。 |
cluster_id |
STRING |
執行管線之叢集的標識碼。 |
creation_time |
INT64 |
建立更新時的時間戳。 |
full_refresh |
BOOLEAN |
這是否為完整重新整理。 如果為 true,則會在執行更新之前重設所有管線數據表。 |
列出管線
端點 | HTTP 方法 |
---|---|
2.0/pipelines/ |
GET |
列出 Delta Live Tables 系統中定義的管線。
範例
這個範例會擷取名稱包含 quickstart
之管線的詳細資料:
要求
curl --netrc -X GET \
https://<databricks-instance>/api/2.0/pipelines?filter=name%20LIKE%20%27%25quickstart%25%27
將:
<databricks-instance>
使用 Azure Databricks 工作區實例名稱,例如adb-1234567890123456.7.azuredatabricks.net
。
此範例使用 .netrc 檔案。
回應
{
"statuses": [
{
"pipeline_id": "e0f01758-fc61-11eb-9a03-0242ac130003",
"state": "IDLE",
"name": "DLT quickstart (Python)",
"latest_updates": [
{
"update_id": "ee9ae73e-fc61-11eb-9a03-0242ac130003",
"state": "COMPLETED",
"creation_time": "2021-08-13T00:34:21.871Z"
}
],
"creator_user_name": "username"
},
{
"pipeline_id": "f4c82f5e-fc61-11eb-9a03-0242ac130003",
"state": "IDLE",
"name": "My DLT quickstart example",
"creator_user_name": "username"
}
],
"next_page_token": "eyJ...==",
"prev_page_token": "eyJ..x9"
}
要求結構
欄位名稱 | 類型 | 描述 |
---|---|---|
page_token |
STRING |
先前呼叫所傳回的頁面令牌。 這是選用欄位。 |
max_results |
INT32 |
在單一頁面中傳回的項目數上限。 即使有更多可用的事件,系統仍可能會傳回回應中的事件少於 max_results 事件。這是選用欄位。 預設值為 25。 最大值為 100。 如果的值為 ,則會傳回錯誤 max_results 大於 100。 |
order_by |
的陣列 STRING |
指定結果順序的字串清單,例如["name asc"] . 支援的 order_by 欄位為 id 和name . 預設值為 id asc 。這是選用欄位。 |
filter |
STRING |
根據指定的準則選取結果子集。 支援的篩選條件如下: "notebook='<path>'" 表示選取參考所提供筆記本路徑的管線。name LIKE '[pattern]' 表示選取名稱相符的 pattern 管線。 支援通配符,例如:name LIKE '%shopping%' 不支持復合篩選。 這是選用欄位。 |
回應結構
欄位名稱 | 類型 | 描述 |
---|---|---|
statuses |
PipelineStateInfo 的 陣列 | 符合要求準則的事件清單。 |
next_page_token |
STRING |
如果存在,則為擷取下一頁事件的令牌。 |
prev_page_token |
STRING |
如果存在,則為擷取上一頁事件的令牌。 |
資料結構
本節內容:
- ABFSS 儲存體 Info
- ClusterLogConf
- Dbfs 儲存體 Info
- File 儲存體 Info
- InitScriptInfo
- KeyValue
- NotebookLibrary
- PipelinesAutoScale
- PipelineLibrary
- PipelinesNewCluster
- 管線 設定
- PipelineStateInfo
- UpdateStateInfo
- Workspace 儲存體 Info
ABFSS 儲存體 Info
Azure Data Lake 儲存體 (ADLS) 記憶體資訊。
欄位名稱 | 類型 | 描述 |
---|---|---|
destination |
STRING |
檔案目的地。 範例: abfss://... |
ClusterLogConf
叢集記錄檔的路徑。
欄位名稱 | 類型 | 描述 |
---|---|---|
dbfs |
Dbfs 儲存體 Info | 叢集記錄的 DBFS 位置。 必須提供目的地。 例如,{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
Dbfs 儲存體 Info
DBFS 記憶體資訊。
欄位名稱 | 類型 | 描述 |
---|---|---|
destination |
STRING |
DBFS 目的地。 範例: dbfs:/my/path |
File 儲存體 Info
檔案記憶體資訊。
注意
此位置類型僅適用於使用 Databricks Container Services 設定的叢集。
欄位名稱 | 類型 | 描述 |
---|---|---|
destination |
STRING |
檔案目的地。 範例: file:/my/file.sh |
InitScriptInfo
init 腳本的路徑。
如需搭配 Databricks Container Services 使用 init 腳本的指示,請參閱 使用 init 腳本。
注意
檔案儲存類型 (功能變數名稱: file
) 僅適用於使用 Databricks Container Services 設定的叢集。 請參閱 File 儲存體 Info。
欄位名稱 | 類型 | 描述 |
---|---|---|
workspace 或dbfs (已淘汰)OR abfss |
Workspace 儲存體 Info Dbfs 儲存體 Info (已淘汰) ABFSS 儲存體 Info |
init 腳本的工作區位置。 必須提供目的地。 例如,{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (已淘汰)init 腳本的 DBFS 位置。 必須提供目的地。 例如, { "dbfs" : { "destination" : "dbfs:/home/init_script" } } init 腳本的 Azure Data Lake 儲存體 (ADLS) 位置。 必須提供目的地。 例如, { "abfss": { "destination" : "abfss://..." } } |
KeyValue
指定組態參數的索引鍵/值組。
欄位名稱 | 類型 | 描述 |
---|---|---|
key |
STRING |
組態屬性名稱。 |
value |
STRING |
組態屬性值。 |
NotebookLibrary
包含管線程式代碼的筆記本規格。
欄位名稱 | 類型 | 描述 |
---|---|---|
path |
STRING |
筆記本的絕對路徑。 這是必要欄位。 |
PipelinesAutoScale
定義自動調整叢集的屬性。
欄位名稱 | 類型 | 描述 |
---|---|---|
min_workers |
INT32 |
叢集在使用量過低時可相應減少的最小背景工作角色數目。 這也是叢集在建立之後將擁有的初始背景工作角色數目。 |
max_workers |
INT32 |
叢集在多載時可以相應增加的背景工作角色數目上限。 max_workers必須嚴格大於 min_workers。 |
mode |
STRING |
叢集的自動調整模式: * ENHANCED 表示使用 增強型自動調整。* LEGACY 表示使用 叢集自動調整功能。 |
PipelineLibrary
管線相依性的規格。
欄位名稱 | 類型 | 描述 |
---|---|---|
notebook |
NotebookLibrary | 定義 Delta Live Tables 數據集的筆記本路徑。 路徑必須位於 Databricks 工作區中,例如:{ "notebook" : { "path" : "/my-pipeline-notebook-path" } } . |
PipelinesNewCluster
管線叢集規格。
Delta Live Tables 系統會設定下列屬性。 使用者無法設定這些屬性:
spark_version
欄位名稱 | 類型 | 描述 |
---|---|---|
label |
STRING |
叢集規格的標籤,default 設定預設叢集,或maintenance 設定維護叢集。這是選用欄位。 預設值是 default 。 |
spark_conf |
KeyValue | 物件,包含一組選擇性、使用者指定的Spark組態索引鍵/值組。 您也可以透過 將額外的 JVM 選項字串傳入驅動程式和執行程式 分別是 spark.driver.extraJavaOptions 和 spark.executor.extraJavaOptions 。範例 Spark 會提供: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} 或{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
此欄位透過單一值,將對此叢集中每個 Spark 節點可使用的資源編碼。 例如,Spark 節點可以針對記憶體或計算密集型工作負載布建和優化。您可以使用叢集 API 呼叫來擷取可用節點類型清單。 |
driver_node_type_id |
STRING |
Spark 驅動程式的節點類型。 此欄位是選擇性的;如果未設定,驅動程式節點類型將會設定為與上面定義的相同值 node_type_id 。 |
ssh_public_keys |
的陣列 STRING |
將新增至此叢集中每個 Spark 節點的 SSH 公鑰內容。 對應的私鑰可用來使用埠 2200 上的使用者名稱ubuntu 登入。 最多可以指定10個索引鍵。 |
custom_tags |
KeyValue | 物件,包含叢集資源的一組標記。 除了default_tags之外,Databricks 也會標記所有具有這些標籤的叢集資源。 注意: * 舊版節點類型不支援標記,例如計算優化和記憶體優化 * Azure Databricks 最多允許 45 個自定義標籤。 |
cluster_log_conf |
ClusterLogConf | 將 Spark 記錄傳遞至長期記憶體目的地的設定。 一個叢集只能指定一個目的地。 如果提供此組態,每個記錄都會傳遞至目的地5 mins . 驅動程式記錄的目的地為 <destination>/<cluster-ID>/driver ,而執行程式記錄的目的地為 <destination>/<cluster-ID>/executor 。 |
spark_env_vars |
KeyValue | 物件,包含一組選擇性、使用者指定的環境變數索引鍵/值組。 表單的索引鍵/值組 (X,Y) 會匯出為 (也就是export X='Y' )啟動司機和工人時。為了指定一組 SPARK_DAEMON_JAVA_OPTS 額外的 ,Databricks 建議將它們附加至 , $SPARK_DAEMON_JAVA_OPTS 如下列範例所示。 這可確保也包含所有預設的 Azure Databricks 受控環境變數。Spark 環境變數範例: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} 或{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
init_scripts |
InitScriptInfo 的 陣列 | 儲存 init 腳本的組態。 您可以指定任意數目的目的地。 腳本會依提供的順序循序執行。 如果 cluster_log_conf 已指定,則會將init腳本記錄傳送至<destination>/<cluster-ID>/init_scripts . |
instance_pool_id |
STRING |
叢集所屬實例集區的選擇性標識符。 請參閱 集區組態參考。 |
driver_instance_pool_id |
STRING |
要用於驅動程序節點之實例集區的選擇性識別碼。 您也必須指定instance_pool_id . 請參閱 實例集區 API。 |
policy_id |
STRING |
叢 集原則 標識碼。 |
num_workers OR autoscale |
INT32 OR InitScriptInfo |
如果num_workers,此叢集應該擁有的背景工作節點數目。 叢集有一個 Spark 驅動程式和num_workers執行程式,總共num_workers + 1 個 Spark 節點。 讀取叢集的屬性時,此字段會反映所需的背景工作角色數目,而不是實際背景工作角色數目。 例如,如果叢集從 5 到 10 個背景工作角色重設大小,則會更新此欄位以反映 10 個背景工作角色的目標大小,而執行程式中列出的背景工作角色會隨著布建新節點逐漸從 5 增加到 10。 如果自動調整,則根據負載自動相應增加和減少叢集所需的參數。 這是選用欄位。 |
apply_policy_default_values |
BOOLEAN |
是否要使用遺漏叢集屬性的原則預設值。 |
管線 設定
管線部署的設定。
欄位名稱 | 類型 | 描述 |
---|---|---|
id |
STRING |
此管線的唯一標識碼。 標識碼是由 Delta Live Tables 系統所建立,而且在建立管線時不得提供。 |
name |
STRING |
此管線的用戶易記名稱。 這是選用欄位。 根據預設,管線名稱必須是唯一的。 若要使用重複的名稱,請在管線組態中將 設定 allow_duplicate_names 為 true 。 |
storage |
STRING |
用來儲存管線所建立檢查點和數據表之 DBFS 目錄的路徑。 這是選用欄位。 如果此欄位是空的,系統就會使用預設位置。 |
configuration |
的地圖 STRING:STRING |
要新增至將執行管線之叢集 Spark 組態的機碼/值組清單。 這是選用欄位。 元素必須格式化為索引鍵:值組。 |
clusters |
PipelinesNewCluster 的 陣列 | 叢集執行管線的規格陣列。 這是選用欄位。 如果未指定此項目,系統會選取管線的預設叢集組態。 |
libraries |
PipelineLibrary 的 陣列 | 包含管線程式代碼的筆記本,以及執行管線所需的任何相依性。 |
target |
STRING |
保存管線輸出數據的資料庫名稱。 如需詳細資訊,請參閱 將數據從 Delta Live Tables 發佈至 Hive 中繼存放區 。 |
continuous |
BOOLEAN |
這是否為連續管線。 這是選用欄位。 預設值是 false 。 |
development |
BOOLEAN |
是否要在開發模式中執行管線。 這是選用欄位。 預設值是 false 。 |
photon |
BOOLEAN |
是否為此管線啟用 Photon 加速。 這是選用欄位。 預設值是 false 。 |
channel |
STRING |
Delta Live Tables 發行通道,指定要用於此管線的運行時間版本。 支援的值為: * preview 以測試管線,以及 Delta Live Tables 運行時間即將進行的變更。* current 使用目前的 Delta Live Tables 運行時間版本。這是選用欄位。 預設值是 current 。 |
edition |
STRING |
要執行管線的 Delta Live Tables 產品版本: * CORE 支援串流內嵌工作負載。* PRO 也支援串流擷取工作負載,並新增對異動數據擷取 (CDC) 處理的支援。* ADVANCED 支援版本的所有功能 PRO ,並新增對需要 Delta Live Tables 預期來強制執行數據品質條件約束之工作負載的支援。這是選用欄位。 預設值是 advanced 。 |
PipelineStateInfo
管線的狀態、最新更新的狀態,以及相關聯資源的相關信息。
欄位名稱 | 類型 | 描述 |
---|---|---|
state |
STRING |
管線的狀態。 其中 IDLE 一個 或 RUNNING 。 |
pipeline_id |
STRING |
管線的唯一標識碼。 |
cluster_id |
STRING |
執行管線之叢集的唯一標識符。 |
name |
STRING |
管線的用戶易記名稱。 |
latest_updates |
UpdateStateInfo 的 陣列 | 管線的最新更新狀態,會先使用最新的更新來排序。 |
creator_user_name |
STRING |
管線建立者的用戶名稱。 |
run_as_user_name |
STRING |
管線執行身分的用戶名稱。 這是衍生自管線擁有者的唯讀值。 |
UpdateStateInfo
管線更新的目前狀態。
欄位名稱 | 類型 | 描述 |
---|---|---|
update_id |
STRING |
此更新的唯一標識碼。 |
state |
STRING |
更新的狀態。 的QUEUED 其中一個、 CREATED WAITING_FOR_RESOURCES 、 、 INITIALIZING 、 RESETTING SETTING_UP_TABLES 、、 RUNNING 、 STOPPING 、 COMPLETED 、FAILED 或 CANCELED 。 |
creation_time |
STRING |
建立此更新時的時間戳。 |
Workspace 儲存體 Info
工作區記憶體資訊。
欄位名稱 | 類型 | 描述 |
---|---|---|
destination |
STRING |
檔案目的地。 範例: /Users/someone@domain.com/init_script.sh |