Rozhraní příkazového řádku SQL Databricks
Poznámka:
Tento článek se zabývá rozhraním příkazového řádku SQL Databricks, které poskytujeme tak, jak je, a Databricks ho nepodporuje prostřednictvím kanálů technické podpory zákazníků. Dotazy a žádosti o funkce je možné sdělit na stránce Problémy v úložišti databricks/databricks-sql-cli na GitHubu.
Rozhraní příkazového řádku SQL Databricks (Databricks SQL CLI) umožňuje spouštět dotazy SQL ve stávajících skladech Sql Databricks z terminálu nebo příkazového řádku Windows místo z umístění, jako je editor SQL Databricks nebo poznámkový blok Azure Databricks. Z příkazového řádku získáte funkce produktivity, jako jsou návrhy a zvýraznění syntaxe.
Požadavky
- Alespoň jeden Databricks SQL Warehouse. Vytvořte sklad, pokud ho ještě nemáte.
- Python 3.7 nebo vyšší Pokud chcete zkontrolovat, jestli máte nainstalovaný Python, spusťte příkaz
python --version
z terminálu nebo příkazového řádku. (V některých systémech možná budete muset místo toho zadatpython3
.) Nainstalujte Python, pokud ho ještě nemáte nainstalovaný. - pip, instalační program balíčku pro Python. Ve výchozím nastavení se nainstalují
pip
novější verze Pythonu. Pokud chcete zkontrolovat, jestli jste nainstalovalipip
, spusťte příkazpip --version
z terminálu nebo příkazového řádku. (V některých systémech možná budete muset místo toho zadatpip3
.) Nainstalujte pip, pokud ho ještě nemáte nainstalovaný. - (Volitelné) Nástroj pro vytváření a správu virtuálních prostředí Pythonu, jako je například venv. Virtuální prostředí pomáhají zajistit, abyste společně používali správné verze Pythonu a rozhraní příkazového řádku SQL Databricks. Nastavení a používání virtuálních prostředí je mimo rozsah tohoto článku. Další informace naleznete v tématu Vytváření virtuálních prostředí.
Instalace rozhraní příkazového řádku SQL Databricks
Po splnění požadavků nainstalujte balíček Rozhraní příkazového řádku SQL Databricks z indexu balíčků Pythonu (PyPI). Balíček Rozhraní příkazového řádku SQL Databricks můžete pip
nainstalovat z PyPI spuštěním pip
jednoho z následujících příkazů.
pip install databricks-sql-cli
# Or...
python -m pip install databricks-sql-cli
Pokud chcete upgradovat dříve nainstalovanou verzi rozhraní příkazového řádku SQL Databricks, spusťte pip
jeden z následujících příkazů.
pip install databricks-sql-cli --upgrade
# Or...
python -m pip install databricks-sql-cli --upgrade
Pokud chcete zkontrolovat nainstalovanou verzi rozhraní příkazového řádku SQL Databricks, spusťte pip
jedním z následujících příkazů.
pip show databricks-sql-cli
# Or...
python -m pip show databricks-sql-cli
Ověřování
Pokud chcete provést ověření, musíte zadat rozhraní příkazového řádku SQL Databricks s podrobnostmi o připojení vašeho skladu. Konkrétně potřebujete hodnoty názvu hostitele serveru a cesty HTTP. Musíte také produktovat Rozhraní příkazového řádku SQL Databricks se správnými přihlašovacími údaji pro ověření.
Rozhraní příkazového řádku SQL Databricks podporuje ověřování tokenů pat databricks. Tokeny Microsoft Entra ID (dříve Azure Active Directory) se nepodporují.
Pokud chcete použít ověřování osobního přístupového tokenu Azure Databricks, vytvořte osobní přístupový token následujícím způsobem:
- V pracovním prostoru Azure Databricks klikněte na své uživatelské jméno Azure Databricks v horním panelu a pak v rozevíracím seznamu vyberte Nastavení.
- Klikněte na Vývojář.
- Vedle přístupových tokenů klikněte na Spravovat.
- Klikněte na Vygenerovat nový token.
- (Volitelné) Zadejte komentář, který vám pomůže identifikovat tento token v budoucnu a změnit výchozí životnost tokenu na 90 dnů. Pokud chcete vytvořit token bez životnosti (nedoporučuje se), nechte pole Životnost (dny) prázdné (prázdné).
- Klikněte na Vygenerovat.
- Zkopírujte zobrazený token do zabezpečeného umístění a klikněte na tlačítko Hotovo.
Poznámka:
Nezapomeňte zkopírovaný token uložit do zabezpečeného umístění. Nesdílejte svůj zkopírovaný token s ostatními. Pokud ztratíte zkopírovaný token, nemůžete tento úplně stejný token znovu vygenerovat. Místo toho musíte tento postup zopakovat, abyste vytvořili nový token. Pokud ztratíte zkopírovaný token nebo se domníváte, že došlo k ohrožení zabezpečení tokenu, databricks důrazně doporučuje tento token okamžitě odstranit z pracovního prostoru kliknutím na ikonu koše (Odvolat) vedle tokenu na stránce Přístupové tokeny .
Pokud v pracovním prostoru nemůžete vytvářet nebo používat tokeny, může to být proto, že správce pracovního prostoru zakázal tokeny nebo vám neudělil oprávnění k vytváření nebo používání tokenů. Obraťte se na správce pracovního prostoru nebo následující:
Tyto ověřovací informace můžete zadat do Rozhraní příkazového řádku SQL Databricks několika způsoby:
dbsqlclirc
V souboru nastavení ve výchozím umístění (nebo zadáním alternativního souboru nastavení prostřednictvím--clirc
možnosti pokaždé, když spustíte příkaz pomocí Rozhraní příkazového řádku SQL Databricks). Viz Nastavení soubor.- Nastavením proměnných
DBSQLCLI_HOST_NAME
DBSQLCLI_HTTP_PATH
prostředí aDBSQLCLI_ACCESS_TOKEN
a Viz proměnné prostředí. --hostname
Zadáním parametrů a--http-path
--access-token
možností při každém spuštění příkazu pomocí Rozhraní příkazového řádku SQL Databricks. Viz možnosti příkazu.
Poznámka:
Soubor dbsqlclirc
nastavení musí být k dispozici, i když nastavíte předchozí proměnné prostředí nebo zadáte předchozí možnosti příkazu nebo obojí.
Pokaždé, když spustíte Rozhraní příkazového řádku SQL Databricks, vyhledá podrobnosti o ověřování v následujícím pořadí a zastaví se, když najde první sadu podrobností:
- The
--hostname
,--http-path
and--access-token
options. DBSQLCLI_HTTP_PATH
ProměnnéDBSQLCLI_HOST_NAME
aDBSQLCLI_ACCESS_TOKEN
proměnné prostředí.- Soubor
dbsqlclirc
nastavení ve výchozím umístění (nebo alternativní soubor nastavení určený možností--clirc
).
Nastavení soubor
Pokud chcete použít dbsqlclirc
soubor nastavení k poskytnutí rozhraní příkazového řádku SQL Databricks s podrobnostmi o ověřování pro databricks SQL Warehouse, spusťte nejprve rozhraní příkazového řádku SQL Databricks následujícím způsobem:
dbsqlcli
Rozhraní příkazového řádku SQL Databricks pro vás vytvoří soubor nastavení v ~/.dbsqlcli/dbsqlclirc
systémech Unix, Linux a macOS a ve %HOMEDRIVE%%HOMEPATH%\.dbsqlcli\dbsqlclirc
Windows.%USERPROFILE%\.dbsqlcli\dbsqlclirc
Přizpůsobení tohoto souboru:
K otevření a úpravě
dbsqlclirc
souboru použijte textový editor.Posuňte se k následující části:
# [credentials] # host_name = "" # http_path = "" # access_token = ""
Odeberte čtyři
#
znaky a:- Vedle položky
host_name
zadejte hodnotu názvu hostitele serveru vašeho skladu z požadavků mezi""
znaky. - Vedle položky
http_path
zadejte hodnotu cesty HTTP vašeho skladu z požadavků mezi""
znaky. - Vedle položky
access_token
zadejte hodnotu osobního přístupového tokenu z požadavků mezi""
znaky.
Příklad:
[credentials] host_name = "adb-12345678901234567.8.azuredatabricks.net" http_path = "/sql/1.0/warehouses/1abc2d3456e7f890a" access_token = "dapi12345678901234567890123456789012"
- Vedle položky
Uložte soubor
dbsqlclirc
.
Případně můžete místo použití dbsqlclirc
souboru ve výchozím umístění zadat soubor v jiném umístění přidáním --clirc
možnosti příkazu a cesty k alternativnímu souboru. Obsah alternativního souboru musí odpovídat předchozí syntaxi.
Proměnné prostředí
Pokud chcete použít DBSQLCLI_HOST_NAME
proměnné prostředí a < DBSQLCLI_HTTP_PATH
a0/> DBSQLCLI_ACCESS_TOKEN
, které poskytují rozhraní příkazového řádku SQL Databricks s podrobnostmi o ověřování pro službu Databricks SQL Warehouse, postupujte takto:
Unix, linux a macos
Pokud chcete nastavit proměnné prostředí pouze pro aktuální relaci terminálu, spusťte následující příkazy. Pokud chcete nastavit proměnné prostředí pro všechny relace terminálu, zadejte do spouštěcího souboru prostředí následující příkazy a restartujte terminál. V následujících příkazech nahraďte hodnotu:
DBSQLCLI_HOST_NAME
s hodnotou názvu hostitele serveru vašeho skladu z požadavků.DBSQLCLI_HTTP_PATH
s hodnotou cesty HTTP vašeho skladu z požadavků.DBSQLCLI_ACCESS_TOKEN
s hodnotou vašeho osobního přístupového tokenu z požadavků.
export DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
export DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
export DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"
Windows
Pokud chcete nastavit proměnné prostředí pouze pro aktuální relaci příkazového řádku, spusťte následující příkazy a nahraďte hodnotu:
DBSQLCLI_HOST_NAME
s hodnotou názvu hostitele serveru vašeho skladu z požadavků.DBSQLCLI_HTTP_PATH
s hodnotou cesty HTTP vašeho skladu z požadavků.DBSQLCLI_ACCESS_TOKEN
s hodnotou vašeho osobního přístupového tokenu z požadavků:
set DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
set DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
set DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"
Pokud chcete nastavit proměnné prostředí pro všechny relace příkazového řádku, spusťte následující příkazy a restartujte příkazový řádek a nahraďte hodnotu:
DBSQLCLI_HOST_NAME
s hodnotou názvu hostitele serveru vašeho skladu z požadavků.DBSQLCLI_HTTP_PATH
s hodnotou cesty HTTP vašeho skladu z požadavků.DBSQLCLI_ACCESS_TOKEN
s hodnotou vašeho osobního přístupového tokenu z požadavků.
setx DBSQLCLI_HOST_NAME "adb-12345678901234567.8.azuredatabricks.net"
setx DBSQLCLI_HTTP_PATH "/sql/1.0/warehouses/1abc2d3456e7f890a"
setx DBSQLCLI_ACCESS_TOKEN "dapi12345678901234567890123456789012"
Možnosti příkazů
Pokud chcete použít --hostname
, --http-path
a --access-token
možnosti poskytnout Databricks SQL CLI s podrobnostmi o ověřování pro Databricks SQL Warehouse, postupujte takto:
Při každém spuštění příkazu pomocí rozhraní příkazového řádku SQL Databricks postupujte následovně:
--hostname
Zadejte možnost a hodnotu názvu hostitele serveru vašeho skladu z požadavků.--http-path
Zadejte možnost a hodnotu cesty HTTP vašeho skladu z požadavků.--access-token
Zadejte možnost a hodnotu vašeho osobního přístupového tokenu z požadavků.
Příklad:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" \
--hostname "adb-12345678901234567.8.azuredatabricks.net" \
--http-path "/sql/1.0/warehouses/1abc2d3456e7f890a" \
--access-token "dapi12345678901234567890123456789012"
Zdroje dotazů
Rozhraní příkazového řádku SQL Databricks umožňuje spouštět dotazy následujícími způsoby:
- Z řetězce dotazu.
- Ze souboru.
- V přístupu repl (read-evaluate-print loop). Tento přístup nabízí návrhy při psaní.
Řetězec dotazu
Pokud chcete spustit dotaz jako řetězec, použijte -e
možnost následovanou dotazem reprezentovanou jako řetězec. Příklad:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2"
Výstup:
_c0,carat,cut,color,clarity,depth,table,price,x,y,z
1,0.23,Ideal,E,SI2,61.5,55,326,3.95,3.98,2.43
2,0.21,Premium,E,SI1,59.8,61,326,3.89,3.84,2.31
Pokud chcete přepnout výstupní formáty, použijte --table-format
možnost spolu s hodnotou, například ascii
pro formát tabulky ASCII, například:
dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" --table-format ascii
Výstup:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
Seznam dostupných hodnot výstupního formátu najdete v komentářích k table_format
nastavení v dbsqlclirc
souboru.
Soubor
Pokud chcete spustit soubor, který obsahuje SQL, použijte -e
možnost následovanou cestou k .sql
souboru. Příklad:
dbsqlcli -e my-query.sql
Obsah ukázkového my-query.sql
souboru:
SELECT * FROM default.diamonds LIMIT 2;
Výstup:
_c0,carat,cut,color,clarity,depth,table,price,x,y,z
1,0.23,Ideal,E,SI2,61.5,55,326,3.95,3.98,2.43
2,0.21,Premium,E,SI1,59.8,61,326,3.89,3.84,2.31
Pokud chcete přepnout výstupní formáty, použijte --table-format
možnost spolu s hodnotou, například ascii
pro formát tabulky ASCII, například:
dbsqlcli -e my-query.sql --table-format ascii
Výstup:
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
Seznam dostupných hodnot výstupního formátu najdete v komentářích k table_format
nastavení v dbsqlclirc
souboru.
REPL
Pokud chcete zadat režim repl (read-evaluate-print), který je vymezený na výchozí databázi, spusťte následující příkaz:
dbsqlcli
Můžete také zadat režim REPL vymezený na konkrétní databázi spuštěním následujícího příkazu:
dbsqlcli <database-name>
Příklad:
dbsqlcli default
Pokud chcete ukončit režim REPL, spusťte následující příkaz:
exit
V režimu REPL můžete použít následující znaky a klíče:
- Pomocí středníku (
;
) ukončete čáru. - K přepnutí víceřádkového režimu použijte klávesu F3 .
- Pokud se návrhy nezobrazují, použijte mezerník k zobrazení návrhů na pozici kurzoru.
- Pomocí šipek nahoru a dolů můžete procházet návrhy.
- Pomocí šipky doprava dokončete zvýrazněný návrh.
Příklad:
dbsqlcli default
hostname:default> SELECT * FROM diamonds LIMIT 2;
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _c0 | carat | cut | color | clarity | depth | table | price | x | y | z |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| 1 | 0.23 | Ideal | E | SI2 | 61.5 | 55 | 326 | 3.95 | 3.98 | 2.43 |
| 2 | 0.21 | Premium | E | SI1 | 59.8 | 61 | 326 | 3.89 | 3.84 | 2.31 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
2 rows in set
Time: 0.703s
hostname:default> exit
Protokolování
Rozhraní příkazového řádku SQL Databricks protokoluje zprávy do souboru ~/.dbsqlcli/app.log
ve výchozím nastavení. Chcete-li změnit název nebo umístění tohoto souboru, změňte hodnotu log_file
nastavení v dbsqlclirc
souboru nastavení.
Ve výchozím nastavení se zprávy protokolují na INFO
úrovni protokolu a níže. Pokud chcete změnit tuto úroveň protokolu, změňte hodnotu log_level
nastavení v dbsqlclirc
souboru nastavení. Mezi dostupné hodnoty úrovně protokolu patří CRITICAL
, , ERROR
WARNING
, INFO
a DEBUG
jsou vyhodnoceny v daném pořadí. NONE
zakáže protokolování.
Další materiály
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro