Bagikan melalui


Databricks SQL CLI

Penting

Databricks SQL CLI tidak dalam pengembangan aktif.

Catatan

Artikel ini membahas Databricks SQL CLI, yang disediakan apa adanya dan tidak didukung oleh Databricks melalui saluran dukungan teknis pelanggan. Pertanyaan dan permintaan fitur dapat dikomunikasikan melalui halaman Masalah repositori databricks/databricks-sql-cli di GitHub.

Antarmuka baris perintah Databricks SQL (Databricks SQL CLI) memungkinkan Anda menjalankan kueri SQL pada gudang Databricks SQL yang ada dari terminal atau Perintah Windows, bukan dari lokasi seperti editor Databricks SQL atau buku catatan Azure Databricks. Dari baris perintah, Anda mendapatkan fitur produktivitas seperti saran dan penyorotan sintaksis.

Persyaratan

  • Setidaknya satu gudang Databricks SQL. Buat gudang, jika Anda belum memilikinya.
  • Python 3.7 atau lebih tinggi. Untuk memeriksa apakah Anda telah menginstal Python, jalankan perintah python --version dari terminal atau Prompt Perintah Anda. (Pada beberapa sistem, Anda mungkin perlu memasukkan python3 sebagai gantinya.) Instal Python, jika Anda belum menginstalnya.
  • pip, alat penginstal paket untuk Python. Versi Python yang lebih baru menginstal pip secara otomatis. Untuk memeriksa apakah Anda telah pip menginstal, jalankan perintah pip --version dari terminal atau Prompt Perintah Anda. (Pada beberapa sistem, Anda mungkin perlu memasukkan pip3 sebagai gantinya.) Instal pip, jika Anda belum menginstalnya.
  • (Opsional) Utilitas untuk membuat dan mengelola lingkungan virtual Python, seperti venv. Lingkungan virtual membantu memastikan bahwa Anda menggunakan versi Python dan Databricks SQL CLI yang benar bersama-sama. Menyiapkan dan menggunakan lingkungan virtual berada di luar cakupan artikel ini. Untuk informasi selengkapnya, lihat Membuat Lingkungan Virtual.

Menginstal Databricks SQL CLI

Setelah Anda memenuhi persyaratan, instal paket Databricks SQL CLI dari Indeks Kemasan Python (PyPI). Anda dapat menggunakan pip untuk menginstal paket Databricks SQL CLI dari PyPI dengan menjalankan pip salah satu perintah berikut.

pip install databricks-sql-cli

# Or...

python -m pip install databricks-sql-cli

Untuk meningkatkan versi Databricks SQL CLI yang diinstal sebelumnya, jalankan pip dengan salah satu perintah berikut.

pip install databricks-sql-cli --upgrade

# Or...

python -m pip install databricks-sql-cli --upgrade

Untuk memeriksa versi CLI Databricks SQL yang diinstal, jalankan pip dengan salah satu perintah berikut.

pip show databricks-sql-cli

# Or...

python -m pip show databricks-sql-cli

Autentikasi

Untuk mengautentikasi, Anda harus menyediakan Databricks SQL CLI dengan detail koneksi gudang Anda. Secara khusus, Anda memerlukan nama host server dan jalur HTTP. Anda juga harus membuat Databricks SQL CLI dengan kredensial autentikasi yang tepat.

Databricks SQL CLI mendukung token akses pribadi (PATs) Databricks. Untuk menggunakan autentikasi PAT Azure Databricks, Anda harus membuat token akses pribadi. Untuk detail tentang proses ini, lihat Mengautentikasi dengan token akses pribadi Azure Databricks (warisan).

Token ID Microsoft Entra tidak didukung.

Anda dapat memberikan informasi autentikasi ini ke Databricks SQL CLI dengan beberapa cara:

  • File pengaturan dbsqlclirc di lokasi defaultnya (atau menentukan file pengaturan alternatif melalui opsi --clirc saat Anda menjalankan perintah dengan Databricks SQL CLI). Lihat File pengaturan.
  • Dengan mengatur DBSQLCLI_HOST_NAMEvariabel lingkungan , DBSQLCLI_HTTP_PATH dan DBSQLCLI_ACCESS_TOKEN . Lihat Variabel lingkungan.
  • Dengan menentukan opsi --hostname, --http-path, dan --access-token setiap kali Anda menjalankan perintah dengan Databricks SQL CLI. Lihat Opsi perintah.

Catatan

File dbsqlclirc pengaturan harus ada, bahkan jika Anda mengatur variabel lingkungan sebelumnya atau menentukan opsi perintah sebelumnya atau keduanya.

Setiap kali Anda menjalankan Databricks SQL CLI, Databricks SQL CLI mencari detail autentikasi dalam urutan berikut dan berhenti saat menemukan serangkaian detail pertama:

  1. Opsi --hostname, --http-path, dan --access-token .
  2. Variabel DBSQLCLI_HOST_NAMElingkungan , DBSQLCLI_HTTP_PATH dan DBSQLCLI_ACCESS_TOKEN .
  3. File dbsqlclirc pengaturan di lokasi default (atau file pengaturan alternatif yang ditentukan oleh opsi --clirc).

File pengaturan

Untuk menggunakan dbsqlclirc file pengaturan untuk menyediakan Databricks SQL CLI dengan detail autentikasi untuk gudang Databricks SQL Anda, jalankan Databricks SQL CLI untuk pertama kalinya, sebagai berikut:

dbsqlcli

Databricks SQL CLI membuat file pengaturan untuk Anda, di ~/.dbsqlcli/dbsqlclirc Unix, Linux, dan macOS, dan di %HOMEDRIVE%%HOMEPATH%\.dbsqlcli\dbsqlclirc atau %USERPROFILE%\.dbsqlcli\dbsqlclirc di Windows. Untuk menyesuaikan file ini:

  1. Gunakan editor teks untuk membuka dan mengedit dbsqlclirc file.

  2. Gulir ke bagian berikut:

    # [credentials]
    # host_name = ""
    # http_path = ""
    # access_token = ""
    
  3. Hapus empat # karakter, dan:

    1. Di samping host_name, masukkan nilai Nama host Server gudang Anda sesuai dengan persyaratan, di antara karakter "".
    2. Di samping http_path, masukkan nilai jalur HTTP gudang Anda yang diambil dari persyaratan di antara "".
    3. Di samping access_token, masukkan nilai token akses pribadi Anda dari persyaratan antara "" karakter.

    Contohnya:

    [credentials]
    host_name = "adb-12345678901234567.8.azuredatabricks.net"
    http_path = "/sql/1.0/warehouses/1abc2d3456e7f890a"
    access_token = "dapi12345678901234567890123456789012"
    
  4. Simpan file dbsqlclirc.

Atau, alih-alih menggunakan dbsqlclirc file di lokasi defaultnya, Anda dapat menentukan file di lokasi yang berbeda dengan menambahkan --clirc opsi perintah dan jalur ke file alternatif. Konten file alternatif tersebut harus sesuai dengan sintaks sebelumnya.

Variabel lingkungan

Untuk menggunakan DBSQLCLI_HOST_NAMEvariabel lingkungan , DBSQLCLI_HTTP_PATH, dan DBSQLCLI_ACCESS_TOKEN untuk menyediakan Databricks SQL CLI dengan detail autentikasi untuk gudang Databricks SQL Anda, lakukan hal berikut:

Unix, Linux, dan macOS

Untuk mengatur variabel lingkungan hanya untuk sesi terminal saat ini, jalankan perintah berikut. Untuk mengatur variabel lingkungan untuk semua sesi terminal, masukkan perintah berikut ke dalam file startup shell Anda lalu mulai ulang terminal Anda. Dalam perintah berikut, ganti nilai:

  • DBSQLCLI_HOST_NAME dengan nilai nama host server dari persyaratan gudang Anda.
  • DBSQLCLI_HTTP_PATH dengan nilai jalur HTTP dari persyaratan gudang Anda.
  • DBSQLCLI_ACCESS_TOKEN dengan nilai token akses pribadi Anda dari instruksi.
export DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
export DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
export DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"

Windows

Untuk mengatur variabel lingkungan hanya untuk sesi Prompt Perintah saat ini, jalankan perintah berikut, ganti nilai:

  • DBSQLCLI_HOST_NAME dengan nilai nama host server dari persyaratan gudang Anda.
  • DBSQLCLI_HTTP_PATH dengan nilai jalur HTTP dari persyaratan gudang Anda.
  • DBSQLCLI_ACCESS_TOKEN dengan nilai token akses pribadi Anda sesuai persyaratan.
set DBSQLCLI_HOST_NAME="adb-12345678901234567.8.azuredatabricks.net"
set DBSQLCLI_HTTP_PATH="/sql/1.0/warehouses/1abc2d3456e7f890a"
set DBSQLCLI_ACCESS_TOKEN="dapi12345678901234567890123456789012"

Untuk mengatur variabel lingkungan untuk semua sesi Command Prompt, jalankan perintah berikut lalu segarkan Command Prompt Anda, dengan mengganti nilainya:

  • DBSQLCLI_HOST_NAME dengan nilai nama host server dari persyaratan gudang Anda.
  • DBSQLCLI_HTTP_PATH dengan nilai jalur HTTP dari persyaratan gudang Anda.
  • DBSQLCLI_ACCESS_TOKEN dengan nilai token akses pribadi Anda dari instruksi.
setx DBSQLCLI_HOST_NAME "adb-12345678901234567.8.azuredatabricks.net"
setx DBSQLCLI_HTTP_PATH "/sql/1.0/warehouses/1abc2d3456e7f890a"
setx DBSQLCLI_ACCESS_TOKEN "dapi12345678901234567890123456789012"

Pilihan perintah

Untuk menggunakan opsi --hostname, --http-path, dan --access-token untuk menyediakan CLI SQL Databricks dengan detail autentikasi untuk gudang SQL Databricks Anda, lakukan hal berikut:

Lakukan hal berikut setiap kali Anda menjalankan perintah dengan Databricks SQL CLI:

  • --hostname Tentukan opsi dan nilai Nama host Server gudang Anda dari persyaratan.
  • Tentukan opsi --http-path dan tentukan nilai jalur HTTP gudang Anda sesuai dengan persyaratan.
  • Tentukan --access-token opsi dan nilai token akses pribadi Anda dari persyaratan.

Contohnya:

dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" \
--hostname "adb-12345678901234567.8.azuredatabricks.net" \
--http-path "/sql/1.0/warehouses/1abc2d3456e7f890a" \
--access-token "dapi12345678901234567890123456789012"

Sumber kueri data

Databricks SQL CLI memungkinkan Anda menjalankan kueri dengan cara berikut:

  • String kueri berasal dari.
  • Dari file.
  • Dalam pendekatan putaran baca-nilai-cetak (REPL). Pendekatan ini memberikan saran saat Anda mengetik.

Untai kueri

Untuk menjalankan kueri sebagai string, gunakan -e opsi diikuti oleh kueri, yang direpresentasikan sebagai string. Contohnya:

dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2"

Keluaran

_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

Untuk beralih format output, gunakan --table-format opsi bersama dengan nilai seperti ascii untuk format tabel ASCII, misalnya:

dbsqlcli -e "SELECT * FROM default.diamonds LIMIT 2" --table-format ascii

Keluaran

+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _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 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+

Untuk daftar nilai format output yang tersedia, lihat komentar untuk pengaturan table_format di dalam file dbsqlclirc.

Arsip

Untuk menjalankan file yang berisi SQL, gunakan -e opsi diikuti dengan jalur ke .sql file. Contohnya:

dbsqlcli -e my-query.sql

Isi dari file contoh my-query.sql:

SELECT * FROM default.diamonds LIMIT 2;

Keluaran

_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

Untuk beralih format output, gunakan --table-format opsi bersama dengan nilai seperti ascii untuk format tabel ASCII, misalnya:

dbsqlcli -e my-query.sql --table-format ascii

Keluaran

+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+
| _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 |
+-----+-------+---------+-------+---------+-------+-------+-------+------+------+------+

Untuk daftar nilai format output yang tersedia, lihat komentar untuk pengaturan table_format di dalam file dbsqlclirc.

REPL

Untuk memasuki mode loop read-evaluate-print (REPL) yang diterapkan pada database default, jalankan perintah berikut:

dbsqlcli

Anda juga dapat memasukkan mode REPL yang dicakup ke database tertentu, dengan menjalankan perintah berikut:

dbsqlcli <database-name>

Contohnya:

dbsqlcli default

Untuk keluar dari mode REPL, jalankan perintah berikut:

exit

Dalam mode REPL, Anda dapat menggunakan karakter dan kunci berikut:

  • Gunakan titik koma (;) untuk mengakhiri garis.
  • Gunakan F3 untuk mengalihkan mode multibaris.
  • Gunakan bilah spasi untuk menampilkan saran di titik penyisipan, jika saran belum ditampilkan.
  • Gunakan panah atas dan bawah untuk menavigasi saran.
  • Gunakan panah kanan untuk menyelesaikan saran yang disorot.

Contohnya:

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

Pencatatan

Databricks SQL CLI mencatat pesannya ke file ~/.dbsqlcli/app.log secara default. Untuk mengubah nama atau lokasi file ini, ubah nilai log_file pengaturan dalam dbsqlclircfile pengaturan.

Secara default, pesan dicatat di INFO tingkat log dan di bawah ini. Untuk mengubah tingkat log ini, ubah nilai pengaturan log_level di dalam pengaturan file dbsqlclirc. Nilai tingkat log yang tersedia meliputi CRITICAL, ERROR, WARNING, INFO, dan DEBUG dievaluasi dalam urutan tersebut. NONE menonaktifkan pengelogan.

Sumber Daya Tambahan: