磚SQL CLI
請注意
本文介紹Databricks SQL CLI,它是按原樣提供的,Databricks不通過客戶技術支持渠道支持它。問題和功能請求可以通過問題頁麵的磚/ databricks-sql-cli在GitHub回購。
Databricks SQL命令行界麵(磚SQL CLI)使您能夠在現有的Databricks SQL上運行SQL查詢倉庫從您的終端或Windows命令提示符,而不是從Databricks SQL編輯器或Databricks筆記本等位置。從命令行中,您可以獲得建議和語法高亮顯示等生產力特性。
需求
你的倉庫連接細節.具體來說,你需要服務器主機名而且HTTP路徑值。
Python3.7或更高版本。使用命令查看是否安裝了Python。使用實例
python——版本
從您的終端或命令提示符。(在某些係統上,您可能需要輸入python3
相反)。安裝Python,如果您尚未安裝它。皮普, Python的包安裝程序。安裝較新的Python版本
皮普
默認情況下。檢查是否有皮普
安裝完成後,運行該命令皮普——版本
從您的終端或命令提示符。(在某些係統上,您可能需要輸入pip3
相反)。pip安裝,如果您尚未安裝它。(可選)用於創建和管理Python的實用程序虛擬環境,如venv,virtualenv,或pipenv.虛擬環境有助於確保您同時使用正確版本的Python和Databricks SQL CLI。設置和使用虛擬環境超出了本文的範圍。有關更多信息,請參見創建虛擬環境.
安裝Databricks SQL命令行
在你見到需求,安裝磚SQL CLI從Python打包索引(PyPI)獲取包。您可以使用皮普
,從PyPI安裝Databricks SQL CLI包皮普安裝databricks-sql-cli
或python- m皮普安裝databricks-sql-cli
.
pip安裝databricks-sql-cli#還是……Python -m PIP install databricks-sql-cli
身份驗證
您必須為Databricks SQL CLI提供Databricks SQL倉庫的身份驗證詳細信息,以便使用適當的訪問憑證調用目標倉庫。您可以通過以下幾種方式提供此信息:
在
dbsqlclirc
設置文件的默認位置(或通過——clirc
選項,每次使用Databricks SQL CLI運行命令時)。看到設置文件.通過設置
DBSQLCLI_HOST_NAME
,DBSQLCLI_HTTP_PATH
而且DBSQLCLI_ACCESS_TOKEN
環境變量。看到環境變量.通過指定
——主機名
,——http-path
,——訪問令牌
選項,每次使用Databricks SQL CLI運行命令時。看到命令選項.
請注意
的dbsqlclirc
設置文件必須存在,即使您設置了前麵的環境變量或指定了前麵的命令選項或兩者都指定。
無論何時運行Databricks SQL CLI,它都會按以下順序查找身份驗證詳細信息,在找到第一組詳細信息時停止:
的
——主機名
,——http-path
,——訪問令牌
選項。的
DBSQLCLI_HOST_NAME
,DBSQLCLI_HTTP_PATH
而且DBSQLCLI_ACCESS_TOKEN
環境變量。的
dbsqlclirc
控件指定的備用設置文件(或——clirc
選項)。
設置文件
使用dbsqlclirc
為您的Databricks SQL倉庫提供認證詳細信息,第一次運行Databricks SQL CLI,如下:
dbsqlcli
Databricks SQL CLI為您創建一個設置文件,在~ / .dbsqlcli / dbsqlclirc
在Unix、Linux和macOS上運行% HOMEDRIVE % % HOMEPATH % \ .dbsqlcli \ dbsqlclirc
或% USERPROFILE % \ .dbsqlcli \ dbsqlclirc
在Windows上。自定義該文件。
使用文本編輯器打開和編輯
dbsqlclirc
文件。滾動到以下部分:
# [credentials] # host_name = "" # http_path = "" # access_token = ""
把四個
#
字符,:旁邊
host_name
,進入你的倉庫服務器主機名價值來自於需求之間""
字符。旁邊
http_path
,進入你的倉庫HTTP路徑價值來自於需求之間""
字符。旁邊
access_token
,輸入您的個人訪問令牌值之間的要求""
字符。
例如:
[credentials] host_name = "dbc-a1b2345c- d6e78.cloudd.www.eheci.com " http_path = "/sql/1.0/ repositories /1abc2d3456e7f890a" access_token = "dapi1234567890b2cd34ef5a67bc8de90fa12b"
保存
dbsqlclirc
文件。
或者,不使用dbsqlclirc
文件的默認位置時,可以在不同的位置指定文件——clirc
命令選項和備用文件的路徑。該備用文件的內容必須符合前麵的語法。
環境變量
使用DBSQLCLI_HOST_NAME
,DBSQLCLI_HTTP_PATH
,DBSQLCLI_ACCESS_TOKEN
環境變量為Databricks SQL CLI提供您的Databricks SQL倉庫的身份驗證詳細信息,請執行以下操作:
設置僅針對當前終端會話的環境變量。要為所有終端會話設置環境變量,請在shell的啟動文件中輸入以下命令,然後重新啟動終端。在以下命令中,需要替換為:
DBSQLCLI_HOST_NAME
你的倉庫的服務器主機名從需求中獲得價值。DBSQLCLI_HTTP_PATH
你的倉庫的HTTP路徑從需求中獲得價值。DBSQLCLI_ACCESS_TOKEN
您的個人訪問令牌值。
出口DBSQLCLI_HOST_NAME=“dbc-a1b2345c-d6e78.cloud.www.eheci.com”出口DBSQLCLI_HTTP_PATH=“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”出口DBSQLCLI_ACCESS_TOKEN=“dapi1234567890b2cd34ef5a67bc8de90fa12b”
僅為當前命令提示符會話設置環境變量,執行以下命令,將值替換為:
DBSQLCLI_HOST_NAME
你的倉庫的服務器主機名從需求中獲得價值。DBSQLCLI_HTTP_PATH
你的倉庫的HTTP路徑從需求中獲得價值。DBSQLCLI_ACCESS_TOKEN
您的個人訪問令牌值來自需求:
集DBSQLCLI_HOST_NAME=“dbc-a1b2345c-d6e78.cloud.www.eheci.com”集DBSQLCLI_HTTP_PATH=“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”集DBSQLCLI_ACCESS_TOKEN=“dapi1234567890b2cd34ef5a67bc8de90fa12b”
要為所有命令提示符會話設置環境變量,請運行以下命令,然後重新啟動命令提示符,將值替換為:
DBSQLCLI_HOST_NAME
你的倉庫的服務器主機名從需求中獲得價值。DBSQLCLI_HTTP_PATH
你的倉庫的HTTP路徑從需求中獲得價值。DBSQLCLI_ACCESS_TOKEN
您的個人訪問令牌值。
對於setx DBSQLCLI_HOST_NAME“dbc-a1b2345c-d6e78.cloud.www.eheci.com”對於setx DBSQLCLI_HTTP_PATH“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”對於setx DBSQLCLI_ACCESS_TOKEN“dapi1234567890b2cd34ef5a67bc8de90fa12b”
命令選項
使用——主機名
,——http-path
,——訪問令牌
選項為Databricks SQL CLI提供您的Databricks SQL倉庫的身份驗證詳細信息,請執行以下操作:
每次使用Databricks SQL CLI運行命令時:
指定
——主機名
選擇權和你的倉庫服務器主機名從需求中獲得價值。指定
——http-path
選擇權和你的倉庫HTTP路徑從需求中獲得價值。指定
——訪問令牌
選項和您的個人訪問令牌值。
例如:
dbsqlcli - e"SELECT * FROM default. "鑽石限製2”\——主機名“dbc-a1b2345c-d6e78.cloud.www.eheci.com”\——http-path“/ sql / 1.0 /倉庫/ 1 abc2d3456e7f890a”\——訪問令牌“dapi1234567890b2cd34ef5a67bc8de90fa12b”
查詢資料
Databricks SQL命令行支持以下方式運行查詢:
查詢字符串
要將查詢作為字符串運行,請使用- e
選項,後跟查詢,表示為字符串。例如:
dbsqlcli - e"SELECT * FROM default. "鑽石限製2”
輸出:
_c0,克拉、切割、顏色、清晰、深度、表,價格,x, y, z1, 0.23,理想,E, SI2, 61.5, 55326, 3.95, 3.98, 2.432, 0.21,溢價,E, SI1, 59.8, 61326, 3.89, 3.84, 2.31
方法可切換輸出格式——表格格式
選項以及諸如美國信息交換標準代碼
對於ASCII表格式,例如:
dbsqlcli - e"SELECT * FROM default. "鑽石限製2”——表格格式ascii
輸出:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+|_c0|克拉|減少|顏色|清晰|深度|表格|價格|x|y|z|+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+|1|023)|理想的|E|SI2|61.5|55|326|3..95|3..98點|2點||2|0. 21|溢價|E|SI1|59.8|61|326|3..89|3.點|2。31|+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
有關可用輸出格式值的列表,請參閱table_format
設置在dbsqlclirc
文件。
文件
要運行包含SQL的文件,請使用- e
選項,後跟a的路徑. sql
文件。例如:
dbsqlcli - e my-query.sql
示例的內容my-query.sql
文件:
選擇*從默認的.鑽石限製2;
輸出:
_c0,克拉、切割、顏色、清晰、深度、表,價格,x, y, z1, 0.23,理想,E, SI2, 61.5, 55326, 3.95, 3.98, 2.432, 0.21,溢價,E, SI1, 59.8, 61326, 3.89, 3.84, 2.31
方法可切換輸出格式——表格格式
選項以及諸如美國信息交換標準代碼
對於ASCII表格式,例如:
dbsqlcli - e my-query.sql——表格格式ascii
輸出:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+|_c0|克拉|減少|顏色|清晰|深度|表格|價格|x|y|z|+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+|1|023)|理想的|E|SI2|61.5|55|326|3..95|3..98點|2點||2|0. 21|溢價|E|SI1|59.8|61|326|3..89|3.點|2。31|+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
有關可用輸出格式值的列表,請參閱table_format
設置在dbsqlclirc
文件。
REPL
進入默認數據庫範圍內的REPL (read-evaluate-print loop)模式。
dbsqlcli
您也可以通過運行以下命令進入特定數據庫範圍內的REPL模式:
dbsqlcli <數據庫名稱>
例如:
dbsqlcli違約
退出REPL模式。
退出
在REPL模式下,可以使用以下字符和鍵:
使用分號(
;
)來結束一行。使用F3切換多線模式。
如果建議尚未顯示,則使用空格鍵在插入點上顯示建議。
使用向上和向下箭頭來瀏覽建議。
使用右箭頭完成高亮顯示的建議。
例如:
dbsqlcli默認主機名:default> SELECT * FROM diamonds LIMIT2;+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+|_c0|克拉|減少|顏色|清晰|深度|表格|價格|x|y|z|+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+|1|023)|理想的|E|SI2|61.5|55|326|3..95|3..98點|2點||2|0. 21|溢價|E|SI1|59.8|61|326|3..89|3.點|2。31|+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+2行在集時間:0.703s主機名:默認>退出