A comprehensive command-line interface for Dremio Cloud and Dremio Software
Project description
Dremio CLI
A comprehensive command-line interface for Dremio Cloud and Dremio Software.
🚀 Features
- 100% API Coverage - Complete support for all Dremio APIs
- Dual Platform Support - Works with both Dremio Cloud and Software
- Profile Management - Easily switch between environments
- Rich Output - Table, JSON, and YAML formatting
- Comprehensive Documentation - Detailed guides for every feature
📦 Installation
pip install dremio-cli
⚡ Quick Start
# Configure a profile
dremio profile create --name myprofile --type software \
--base-url https://dremio.company.com \
--username admin --password secret
# List catalog
dremio catalog list
# Execute SQL
dremio sql execute "SELECT * FROM customers LIMIT 10"
# Create a view
dremio view create --path "Analytics.summary" \
--sql "SELECT * FROM customers WHERE region = 'US'"
📚 Documentation
Core Guides
- Installation - Setup and configuration
- Profiles - Manage connection profiles
- Catalog - Browse and navigate data
- SQL - Execute queries and analyze plans
- Jobs - Monitor query execution
Data Management
- Sources - Connect to data systems
- Views - Create virtual datasets
- Tables - Manage physical datasets
- Spaces & Folders - Organize your catalog
Governance & Security
- Tags & Wiki - Document and categorize
- Grants - Access control and permissions
- Users - User management
- Roles - Role-based access control
🎯 Key Features
Catalog Operations
Browse and navigate your Dremio catalog with ease.
dremio catalog list
dremio catalog get <id>
dremio catalog get-by-path "MySpace.MyFolder.MyView"
SQL Execution
Execute queries, explain plans, and validate syntax.
dremio sql execute "SELECT * FROM table"
dremio sql execute --file query.sql --async
dremio sql explain "SELECT * FROM table"
dremio sql validate "SELECT * FROM table"
Source Management
Connect to and manage data sources.
dremio source list
dremio source create --name MyDB --type POSTGRES --config-file db.json
dremio source refresh <id>
View Management
Create and manage virtual datasets.
dremio view create --path "Analytics.summary" --sql "SELECT * FROM data"
dremio view update <id> --sql "SELECT * FROM updated_data"
dremio view list --space Analytics
Job Management
Monitor and manage query jobs.
dremio job list
dremio job get <id>
dremio job results <id> --output-file results.json
dremio job profile <id> --download profile.zip
Access Control
Manage permissions and grants.
dremio grant list <catalog-id>
dremio grant add <id> --grantee-type ROLE --grantee-id analyst --privileges SELECT
dremio user list
dremio role list
🔧 Configuration
Profile-Based Configuration
# Create profile
dremio profile create --name prod --type cloud \
--base-url https://api.dremio.cloud \
--project-id <project-id> \
--token <pat-token>
# Use profile
dremio --profile prod catalog list
# Set default profile
dremio profile set-default prod
Environment Variables
# Set in .env file
DREMIO_BASE_URL=https://dremio.company.com
DREMIO_USERNAME=admin
DREMIO_PASSWORD=secret
📊 Output Formats
# Table format (default)
dremio catalog list
# JSON format
dremio --output json catalog list
# YAML format
dremio --output yaml catalog list
🌐 Platform Support
| Feature | Software | Cloud |
|---|---|---|
| Catalog Operations | ✅ | ✅ |
| SQL Execution | ✅ | ⚠️ Limited |
| Job Management | ✅ | ✅ |
| View Management | ✅ | ✅ |
| Source Management | ✅ | ✅ |
| Grant Management | ✅ | ✅ |
| User/Role Management | ✅ | ⚠️ Via Console |
💻 Development
# Clone repository
git clone https://github.com/developer-advocacy-dremio/dremio-python-cli.git
cd dremio-python-cli/dremio-cli
# Install in development mode
pip install -e .
# Run tests
pytest
# Run live tests
python scripts/test_sql_operations.py
🤝 Contributing
Contributions are welcome! Please see CONTRIBUTING.md for details.
📄 License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
🔗 Links
🆘 Support
For issues and questions:
- GitHub Issues: Report an issue
- Documentation: Read the docs
- Community: Dremio Community
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dremio_cli-1.3.0.tar.gz.
File metadata
- Download URL: dremio_cli-1.3.0.tar.gz
- Upload date:
- Size: 72.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9332fed1a7d22c14f46e861df51c06fa027dfc4be3c53795d26db7ffb26f4710
|
|
| MD5 |
0a8e6ea73e7bc9ca601a3ec5c04bd22b
|
|
| BLAKE2b-256 |
848591fd614467b65b7fe1041018869945a279c0b9f1f620d617c70f20565682
|
File details
Details for the file dremio_cli-1.3.0-py3-none-any.whl.
File metadata
- Download URL: dremio_cli-1.3.0-py3-none-any.whl
- Upload date:
- Size: 53.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36f18648d8c6d290a2924fd4b92d5f937ad9d7491122734bf42bedbec82a291f
|
|
| MD5 |
d99a0948a68d72f44879a795fa193463
|
|
| BLAKE2b-256 |
a6ae617817862a552fae157de838efec544498427d84c9d88aca67250b7ccdf9
|