Khóa học
Databricks Command Line Interface (CLI) là một công cụ mạnh mẽ cho phép người dùng tự động hóa tác vụ trên nền tảng Databricks trực tiếp từ terminal hoặc command prompt. Với CLI, bạn có thể thực thi các lệnh để quản lý cluster, job và notebook mà không cần điều hướng qua giao diện đồ họa, giúp tăng hiệu quả và dễ dàng tích hợp vào quy trình tự động hóa.
Hiện tại, Databricks CLI đang ở giai đoạn Public Preview cho các phiên bản 0.205 trở lên. Người dùng vận hành phiên bản cũ hơn cần lưu ý đây là bản kế thừa (legacy) và có thể không hỗ trợ các tính năng hoặc cải tiến mới nhất có trong các phiên bản mới.
Trong hướng dẫn này, tôi sẽ chỉ bạn cách cài đặt CLI và cách điều hướng CLI với các lệnh chính để tự động hóa workflow. Khi bắt đầu, tôi khuyến nghị bạn xem bài viết blog Cách học Databricks: Hướng dẫn cho người mới về Nền tảng Dữ liệu Hợp nhất của DataCamp để hiểu các tính năng cốt lõi và ứng dụng của Databricks, đồng thời có lộ trình học tập có cấu trúc.
Vì sao chúng ta dùng Databricks CLI
Là người dùng thường xuyên, tôi thấy những lý do sau đây là thuyết phục để bạn sử dụng Databricks CLI.
- Tự động hóa: CLI cho phép bạn viết script cho các thao tác như tạo cluster, gửi job và quản lý notebook. Sự tự động hóa này giúp tiết kiệm thời gian và giảm khả năng sai sót. Ví dụ, bạn có thể tạo và chạy job chỉ với một lệnh.
- Tích hợp: Databricks CLI cho phép bạn tích hợp liền mạch với các pipeline DevOps và quy trình CI/CD. Nhờ đó, bạn có thể dễ dàng cấu hình môi trường để tự động triển khai và cập nhật workflow Databricks mà không cần can thiệp thủ công. Chẳng hạn, bạn có thể kích hoạt job tự động trực tiếp từ các công cụ như Jenkins, GitHub Actions hoặc Azure DevOps.
- Đơn giản: Bạn có thể thực thi tác vụ trực tiếp từ máy local, tránh phải điều hướng web UI cho các công việc lặp lại. Tính năng này giúp quản lý workflow dễ dàng hơn bằng cách chạy lệnh để thực hiện các thao tác như tải notebook lên hoặc quản lý cluster mà không cần giao diện đồ họa.
- Linh hoạt: Databricks CLI hỗ trợ nhiều hệ điều hành và môi trường như Windows, macOS và Linux, giúp các nhóm đa dạng dễ tiếp cận. CLI cũng hỗ trợ xác thực đa hồ sơ (multi-profile), cho phép bạn quản lý hiệu quả nhiều tài khoản hoặc workspace Databricks.
Cài đặt và cập nhật Databricks CLI
Để bắt đầu với Databricks CLI, bạn cần đáp ứng các điều kiện tiên quyết của môi trường và làm theo hướng dẫn cài đặt phù hợp với hệ điều hành của mình. Tôi sẽ hướng dẫn bạn cách thiết lập môi trường và cập nhật CLI trên Linux, macOS và Windows.
Điều kiện tiên quyết của môi trường
Trước khi cài đặt Databricks CLI, hãy đảm bảo hệ thống của bạn đáp ứng các yêu cầu cơ bản sau:
- Trình quản lý gói: Mặc dù trình quản lý gói như Homebrew (cho macOS) hoặc WinGet (cho Windows) có thể đơn giản hóa việc cài đặt, bạn cũng có thể cài đặt trực tiếp bằng binary hoặc mã nguồn.
- Python: CLI yêu cầu Python 3.6 trở lên.
- Truy cập mạng tới workspace Databricks.
- Curl: Với một số phương thức cài đặt trên Linux và macOS, hãy đảm bảo đã cài curl.
- Quyền quản trị (cho một số phương thức cài đặt).
Cài đặt trên Linux
Có một số cách tiếp cận để cài đặt Databricks CLI trên Linux, bao gồm các cách sau:
Sử dụng Homebrew
Nếu bạn đã cài Homebrew, chạy:
brew install databricks-cli
Sử dụng curl
Bạn có thể tải và cài đặt Databricks CLI bằng curl bằng cách chạy lệnh sau:
curl -Lo databricks-cli.tar.gz https://github.com/databricks/databricks-cli/releases/latest/download/databricks-cli.tar.gz
tar -xzf databricks-cli.tar.gz -C /usr/local/bin
Tải thủ công
Ngoài ra, bạn có thể tải binary CLI từ kho GitHub Databricks CLI chính thức và di chuyển nó vào một thư mục trong PATH của bạn.
Cài đặt trên macOS
Nếu bạn dùng macOS, bạn có thể cài Databricks CLI bằng các lệnh sau.
Sử dụng Homebrew
Chạy lệnh dưới đây để cài Databricks CLI;
brew install databricks-cli
Cài đặt trực tiếp bằng binary
Tải binary mới nhất từ phần phát hành trên GitHub, giải nén và đặt vào PATH cục bộ của bạn. Cấp quyền thực thi bằng lệnh dưới đây:
chmod +x /usr/local/bin/databricks
Tải thủ công
Tương tự, bạn có thể tải binary CLI từ kho GitHub Databricks CLI chính thức và di chuyển nó vào một thư mục trong PATH của bạn.
Cài đặt trên Windows
Nếu bạn dùng hệ điều hành Windows, bạn có thể chọn cài Databricks CLI bằng các phương thức sau:
Sử dụng WinGet
Chạy lệnh sau trong command prompt:
winget install Databricks.DatabricksCLI
Sử dụng Chocolatey
Nếu bạn đã cài Chocolatey, dùng:
choco install databricks-cli
Sử dụng Windows Subsystem for Linux (WSL)
Nếu đã thiết lập WSL, hãy làm theo các bước cài đặt cho Linux.
Cài đặt trực tiếp bằng Binary
Tải tệp .exe từ kho GitHub Databricks CLI.
Thêm thư mục chứa tệp vào PATH của hệ thống để truy cập dễ dàng.
Xác minh cài đặt
Sau khi cài đặt, bạn nên xác minh Databricks CLI đã được cài đúng. Mở terminal hoặc command prompt và chạy:
databricks --version
Xác thực và cấu hình Databricks CLI
Để sử dụng hiệu quả Databricks CLI, bạn cần xác thực với workspace Databricks của mình. Trong phần này, tôi sẽ trình bày cách thiết lập xác thực và quản lý cấu hình.
Tạo personal access token
Cần có personal access token (PAT) để xác thực với Databricks CLI. Thực hiện các bước sau để tạo token:
Bước 1: Truy cập cài đặt người dùng
Đăng nhập vào workspace Databricks và nhấp vào tên người dùng của bạn trên thanh trên cùng. Chọn Settings từ menu thả xuống.

Cài đặt người dùng trong workspace Databricks. Hình do Tác giả cung cấp.
Bước 2: Điều hướng đến cài đặt dành cho developer
Nhấp vào Developer.

Cài đặt Developer của Databricks. Hình do Tác giả cung cấp.
Bước 3: Quản lý access token
Bên cạnh Access tokens, nhấp Manage.

Databricks Access tokens. Hình do Tác giả cung cấp
Bước 4: Tạo token mới
Nhấp Generate new token.

Tạo Databricks Access token mới. Hình do Tác giả cung cấp.
Bước 5: Nhập thông tin và lưu token
Cung cấp nhận xét để nhận diện token và đặt thời hạn hiệu lực theo ngày. Nếu để trống, giá trị mặc định sẽ là thời hạn tối đa (thường là 730 ngày). Nhấp Generate, sao chép token một cách an toàn, rồi nhấp Done.

Tạo Databricks Access token mới. Hình do Tác giả cung cấp.
Cấu hình profile
Khi đã có token, hãy cấu hình CLI để giao tiếp với workspace của bạn. Quy trình này bao gồm việc thiết lập một profile chứa URL workspace và token của bạn.
Cấu hình cơ bản
Chạy lệnh sau để thiết lập profile mặc định:
databricks configure --token
Bạn sẽ được nhắc nhập:
URL host Databricks (ví dụ: https://<databricks-instance>.cloud.databricks.com).
Personal Access Token bạn đã tạo trước đó.

Cấu hình profile Databricks CLI. Hình do Tác giả cung cấp.
Nhiều profile
Bạn có thể cấu hình nhiều profile cho các môi trường khác nhau (ví dụ: dev, staging, production):
databricks configure --profile <profile-name> --token
Để dùng một profile cụ thể, thêm cờ --profile vào lệnh CLI của bạn:
databricks clusters list --profile staging
Xác thực nâng cao
Databricks CLI hỗ trợ Databricks Unified Authentication, tích hợp với các hệ thống quản lý danh tính doanh nghiệp như Single Sign-On (SSO) và OAuth. Điều này cho phép xác thực an toàn và khả năng mở rộng trên tất cả API của Databricks. Unified authentication đơn giản hóa quản lý người dùng bằng cách cho phép một cấu hình SSO duy nhất cho nhiều workspace, giúp dễ dàng quản lý truy cập và tự động hóa tác vụ bằng service principal.
Các lệnh Databricks CLI chính
Databricks CLI tổ chức chức năng thành các nhóm cấp cao, mỗi nhóm có các lệnh con phù hợp với tác vụ cụ thể. Dưới đây là phần phân tách các nhóm chính và ví dụ thực tế để bạn bắt đầu. Nếu bạn cần ôn lại kiến thức về các tính năng chính của Databricks, tôi khuyến nghị xem hướng dẫn 7 khái niệm bắt buộc cho mọi chuyên gia dữ liệu của chúng tôi.
Clusters
Các lệnh clusters dùng để quản lý cluster Databricks, bao gồm tạo, liệt kê, khởi động và xóa. Các lệnh con phổ biến gồm:
-
create: Tạo cluster mới. -
list: Liệt kê tất cả cluster trong workspace. -
startvàdelete: Khởi động hoặc xóa cluster.
Ví dụ, lệnh sau tạo một cluster mới tên my-cluster với 4 worker loại Standard_D2_v2.
databricks clusters create --cluster-name my-cluster --node-type-id Standard_D2_v2 --num-workers 4
Bạn cũng có thể dùng lệnh sau để liệt kê tất cả cluster trong workspace Databricks của bạn.
databricks clusters list
Jobs
Đây là các lệnh để quản lý job Databricks, bao gồm tạo, chạy và liệt kê. Các lệnh con phổ biến gồm:
-
create: Tạo job mới. -
run-now: Kích hoạt một job hiện có ngay lập tức. -
list: Liệt kê tất cả job hiện có.
Ví dụ, bạn có thể tạo một job mới tên my-job chạy một tác vụ notebook.
databricks jobs create --job-name my-job --notebook-task /path/to/notebook
Bạn cũng có thể kích hoạt một job hiện có theo ID bằng lệnh dưới đây.
databricks jobs run-now --job-id 12345
Workspace
Đây là các lệnh để quản lý tài nguyên workspace, như nhập và xuất notebook. Các lệnh con phổ biến gồm:
-
import: Nhập notebook hoặc thư viện. -
export: Xuất notebook về máy local. -
list: Liệt kê nội dung của một thư mục trong workspace.
Ví dụ, bạn có thể xuất một notebook ra tệp local bằng lệnh dưới đây.
databricks workspace export /Users/username/notebook /local/path/notebook.py
Tương tự, bạn có thể nhập một notebook bằng lệnh dưới đây.
databricks workspace import /local/path/notebook.py /Users/username/notebook
Hệ thống tệp (DBFS)
Đây là các lệnh để tương tác với Databricks File System (DBFS), bao gồm tải lên và tải xuống tệp. Các lệnh con phổ biến gồm:
-
cp: Sao chép tệp đến hoặc từ DBFS. -
ls: Liệt kê tệp trong một thư mục DBFS. -
rm: Xóa tệp hoặc thư mục khỏi DBFS.
Ví dụ, bạn có thể dùng lệnh dưới đây để tải một tệp local lên DBFS.
databricks fs cp /local/path/file.txt dbfs:/path/in/dbfs/
Tương tự, lệnh sau cho phép bạn tải một tệp từ DBFS về đường dẫn local.
databricks fs cp dbfs:/path/in/dbfs/file.txt /local/path/
Repos
Các lệnh repos cho phép bạn quản lý repository trong Databricks, hỗ trợ kiểm soát phiên bản. Các lệnh con phổ biến gồm:
-
list: Liệt kê tất cả repository. -
create: Thêm repository mới.
Ví dụ, lệnh sau sẽ liệt kê tất cả Databricks Repos trong workspace của bạn.
databricks repos list
Quyền truy cập (Permissions)
Bạn có thể dùng các lệnh này để thiết lập và quản lý quyền cho workspace, job và cluster. Các lệnh con phổ biến về quyền gồm:
-
get: Xem quyền hiện tại. -
update: Sửa đổi quyền.
Ví dụ, lệnh dưới đây cho phép bạn xem quyền của một tài nguyên cụ thể.
databricks permissions get --type cluster --id 12345
Các lệnh Databricks SQL
Các lệnh này cho phép bạn tương tác với Databricks SQL để truy vấn cơ sở dữ liệu và quản lý SQL warehouse.
Truy vấn sau sẽ lấy và hiển thị 10 hàng đầu tiên từ sales_table.
databricks sql query --query "SELECT * FROM sales_table LIMIT 10;"
Nếu bạn cần ôn lại kiến thức về Databricks SQL, tôi khuyến nghị đọc hướng dẫn Databricks SQL của chúng tôi để học cách dùng SQL truy vấn dữ liệu từ Databricks SQL Warehouse.
Các trường hợp sử dụng phổ biến và kịch bản ví dụ
Databricks CLI mang đến các giải pháp thực tiễn để tự động hóa các tác vụ thường nhật. Dưới đây là các ví dụ chi tiết về những kịch bản phổ biến thể hiện tính linh hoạt của nó.
Tạo hoặc chỉnh sửa cluster
Để tạo cluster, hãy dùng một tệp cấu hình JSON, như cluster-config.json, chỉ định các thiết lập cluster.
{
"cluster_name": "example-cluster",
"spark_version": "11.3.x-scala2.12",
"node_type_id": "Standard_DS3_v2",
"num_workers": 2
}
Sau đó chạy lệnh sau để tạo cluster:
databricks clusters create --json-file cluster-config.json
Để cập nhật cấu hình của một cluster hiện có, trước tiên hãy xuất các thiết lập hiện tại của cluster bằng lệnh dưới đây:
databricks clusters get --cluster-id <cluster-id> > cluster-config.json
Tiếp theo, chỉnh sửa tệp cluster-config.json theo nhu cầu và áp dụng thay đổi cho cluster.
databricks clusters edit --json-file cluster-config.json
Quản lý notebook
Trong một số trường hợp, bạn có thể muốn xuất một notebook từ Databricks về thư mục local rồi nhập lại. Dùng lệnh sau để xuất notebook:
databricks workspace export /path/to/notebook.ipynb /local/path/notebook.ipynb
Lệnh dưới đây dùng để tải notebook lên lại Databricks.
databricks workspace import /local/path/notebook.ipynb /path/to/notebook.ipynb
Kích hoạt job
Khi muốn tạo các tác vụ tự động, bạn có thể cần tạo một job chạy notebook hoặc script và lên lịch chạy hàng ngày. Trước hết, dùng một tệp JSON như job-config.json để định nghĩa một job chạy notebook cụ thể.
{
"name": "example-job",
"new_cluster": {
"spark_version": "11.3.x-scala2.12",
"node_type_id": "Standard_DS3_v2",
"num_workers": 1
},
"notebook_task": {
"notebook_path": "/Users/username/my-notebook"
},
"schedule": {
"quartz_cron_expression": "0 0 * * * ?",
"timezone_id": "UTC"
}
}
Tạo job bằng lệnh dưới đây:
databricks jobs create --json-file job-config.json
Sau đó bạn có thể chạy job theo job ID của nó.
databricks jobs run-now --job-id <job-id>
Thao tác tệp trên DBFS
Nếu bạn cần liệt kê, sao chép hoặc xóa tệp trong DBFS, hãy dùng các lệnh sau.
Để xem tệp trong một thư mục:
databricks fs ls dbfs:/path/to/directory
Tải một tệp local lên DBFS:
databricks fs cp /local/path/file.txt dbfs:/path/to/remote-file.txt
Xóa một tệp hoặc thư mục:
databricks fs rm dbfs:/path/to/file.txt
Thực tiễn tốt nhất và mẹo
Hãy cân nhắc áp dụng các thực tiễn tốt nhất sau để tối đa hóa hiệu quả, bảo mật và độ tin cậy của Databricks CLI.
- Luôn cập nhật phiên bản: Đảm bảo bạn dùng Databricks CLI phiên bản 0.200 trở lên để hưởng lợi từ phát triển chủ động và tính năng mới. Các phiên bản cũ được coi là legacy và có thể thiếu hỗ trợ cho các chức năng mới nhất.
- Bảo mật: Tránh lưu personal access token dưới dạng văn bản thuần. Thay vào đó, dùng biến môi trường hoặc các phương thức lưu trữ an toàn như tệp mã hóa hoặc công cụ quản lý bí mật.
- Viết script: Sử dụng script Bash hoặc Python để tự động hóa tác vụ bằng cách xâu chuỗi nhiều lệnh CLI. Cách tiếp cận này đơn giản hóa workflow phức tạp và tăng tính tái lập.
- Ghi log/Gỡ lỗi: Dùng cờ --debug để bật xuất chi tiết phục vụ gỡ lỗi. Điều này giúp chẩn đoán sự cố bằng cách cung cấp thông báo lỗi chi tiết.
databricks --debug clusters create --cluster-name my-cluster --node-type-id Standard_D2_v2 --num-workers 4
So sánh Databricks CLI với các cách tiếp cận khác
Khi làm việc với Databricks, người dùng có nhiều lựa chọn để tương tác với nền tảng, bao gồm Databricks CLI, REST API, Databricks Python SDK và web UI. Mỗi phương thức đều có ưu và nhược điểm, tùy thuộc vào nhu cầu và sở thích cụ thể của người dùng hoặc tổ chức.
REST API
Databricks REST API cung cấp quyền truy cập trực tiếp, cấp thấp vào chức năng của Databricks, mang lại tính linh hoạt cao cho các tích hợp không phụ thuộc ngôn ngữ.
Databricks Python SDK
Databricks Python SDK cung cấp giao diện theo phong cách Python để tương tác với Databricks, đưa ra các trừu tượng cấp cao trên REST API.
Web UI
Databricks Web UI cung cấp giao diện đồ họa tương tác để quản lý cluster, job, notebook và nhiều hơn nữa.
Tôi sẽ tóm tắt ưu điểm, nhược điểm và trường hợp sử dụng của các phương thức trên trong bảng sau:
| Cách tiếp cận | Thế mạnh | Điểm yếu | Phù hợp nhất cho |
|---|---|---|---|
| Databricks CLI | Tự động hóa đơn giản, có thể viết script, không phụ thuộc hệ điều hành | Giới hạn trong các lệnh CLI được hỗ trợ | Tự động hóa nhẹ và tác vụ lặp lại |
| REST API | Linh hoạt, không phụ thuộc ngôn ngữ | Phức tạp, cần nhiều công sức triển khai | Tích hợp tùy chỉnh và tính năng mới nhất |
| Python SDK | Thân thiện với Python, trừu tượng cấp cao | Thêm phụ thuộc, yêu cầu kỹ năng Python | Workflow nặng Python và pipeline dữ liệu |
| Web UI | Thân thiện người dùng, không cần thiết lập | Không mở rộng cho tự động hóa | Tác vụ tương tác, đơn lẻ hoặc khám phá |
Khắc phục sự cố và vấn đề đã biết
Khi sử dụng Databricks CLI, bạn có thể gặp các lỗi và thách thức thường thấy. Dưới đây là tóm tắt các vấn đề phổ biến và giải pháp thực tiễn, cùng mẹo chẩn đoán các sự cố liên quan mạng.
Lỗi thường gặp
Các lỗi thường gặp khi sử dụng Databricks CLI bao gồm:
- Authorization Failed: Lỗi có thể do personal access token không đúng hoặc đã hết hạn. Để khắc phục, hãy đảm bảo token hợp lệ và được cấu hình đúng trong cài đặt CLI. Nếu cần, hãy tạo token mới.
- CLI Not Found in PATH: Lỗi này xảy ra khi tệp thực thi Databricks CLI không có trong PATH của hệ thống. Để khắc phục, luôn thêm thư mục chứa tệp thực thi CLI vào biến môi trường PATH của hệ thống.
- Token Expiration: Token có thời hạn và sẽ hết hạn sau một khoảng thời gian nhất định. Để tránh lỗi này, hãy gia hạn token định kỳ hoặc thiết lập cơ chế tự động làm mới token.
Chẩn đoán sự cố mạng
Trong các môi trường có mạng hạn chế hoặc danh sách cho phép IP (IP allowlists), bạn có thể gặp vấn đề khi kết nối tới Databricks. Dưới đây là một số bước để chẩn đoán và khắc phục:
-
Kiểm tra cấu hình mạng: Đảm bảo mạng của bạn cho phép kết nối đi tới URL workspace Databricks. Xác minh mọi tường lửa hoặc máy chủ proxy được cấu hình chính xác.
-
IP Allowlists: Nếu workspace của bạn yêu cầu danh sách cho phép IP, hãy đảm bảo địa chỉ IP của bạn nằm trong danh sách. Dùng công cụ như
curlđể kiểm tra kết nối từ máy của bạn tới Databricks API. -
Xác minh SSL: Nếu bạn gặp lỗi xác minh SSL, hãy thử tạm thời vô hiệu hóa xác minh SSL bằng tùy chọn -k với curl để cô lập vấn đề.
Kết luận và tài nguyên học thêm
Tôi hy vọng đã thuyết phục bạn rằng việc thực hành sử dụng Databricks CLI là xứng đáng. Như bạn đã thấy, Databricks CLI cho phép tự động hóa nhanh, có thể viết script cho các tác vụ như quản lý cluster, kích hoạt job và thao tác tệp, giảm phụ thuộc vào web UI, từ đó tiết kiệm thời gian. Tôi ấn tượng với sự linh hoạt của nó và việc tích hợp với các pipeline DevOps.
Có rất nhiều chi tiết cụ thể mà tôi không thể đề cập hết trong một bài viết, vì vậy hãy thử tra cứu tài liệu chính thức của Databricks hoặc trang GitHub của CLI nếu bạn đang tìm câu trả lời cho một câu hỏi cụ thể. Để tìm hiểu thêm các khái niệm nền tảng quan trọng, hãy thử khóa học Giới thiệu về Databricks của chúng tôi. Khóa học này dạy bạn về Databricks như một giải pháp kho dữ liệu cho Business Intelligence. Tôi cũng khuyến nghị, nếu bạn đang theo con đường học Databricks, hãy đọc hướng dẫn về Chứng chỉ Databricks, để không chỉ học Databricks mà còn giúp bạn định vị tốt hơn trên thị trường việc làm.
Câu hỏi thường gặp về Databricks CLI
Databricks CLI là gì và vì sao tôi nên dùng nó?
Databricks CLI là giao diện dòng lệnh cho phép người dùng tương tác với Databricks một cách lập trình. Nó giúp tự động hóa các tác vụ lặp lại, tích hợp với pipeline DevOps và giảm phụ thuộc vào web UI, giúp hoạt động hằng ngày hiệu quả hơn.
Làm thế nào để cài đặt Databricks CLI?
Bạn có thể cài Databricks CLI bằng các trình quản lý gói như Homebrew, Curl, Winget hoặc Chocolatey. Ngoài ra, bạn có thể cài thủ công bằng mã nguồn.
Databricks CLI có thể dùng trên mọi hệ điều hành không?
Có, CLI đa nền tảng và hoạt động trên Linux, macOS và Windows. Nó cũng có thể chạy trên Windows Subsystem for Linux (WSL) cho người dùng thích môi trường giống Linux.
CLI có hỗ trợ tất cả tính năng của Databricks không?
CLI hỗ trợ phạm vi tính năng rộng, nhưng một số chức năng mới có thể chưa có ngay. Để dùng các tính năng mới nhất, hãy cân nhắc sử dụng REST API hoặc Python SDK.
