#rest #interface #databricks #wrapper #api

bin+lib rustbricks

基于 Rust 的接口,用于与 Databricks REST API 无缝集成

5 个版本

0.1.1 2024 年 3 月 7 日
0.1.0 2024 年 3 月 6 日
0.0.3 2024 年 3 月 1 日
0.0.2 2024 年 3 月 1 日
0.0.1 2024 年 3 月 1 日

#1544 in Web 编程

Download history 1/week @ 2024-04-01 1/week @ 2024-05-27 56/week @ 2024-07-01 238/week @ 2024-07-08

每月 294 次下载

MIT 许可证

26KB
580

Rustbricks

Rustbricks 提供了一个基于 Rust 的框架,旨在高效集成 Databricks REST API,使 Rust 应用程序能够轻松与 Databricks 服务交互。该库简化了执行 SQL 语句、管理集群以及与 Databricks 的请求-响应周期。

功能

  • SQL 执行:从 Rust 中直接执行 SQL 语句。
  • 集群管理:访问和管理 Databricks 集群信息。
  • 持久连接:利用基于会话的方法来管理持久连接,以提高性能。

安装

要使用 Rustbricks,请在您的 Cargo.toml 中将其添加为依赖项。

[dependencies]
rustbricks = "0.1.1"

快速入门

以下示例演示了如何使用 Rustbricks 和新的 DatabricksSession 执行 SQL 语句。

use rustbricks::{
    config::Config,
    models::{SqlStatementRequest, SqlStatementResponse},
    services::DatabricksSession,
};
use std::error::Error;

#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
    // Initialize the configuration
    let config = Config::new()?;
    
    // Create a new session with the configuration
    let session = DatabricksSession::new(config)?;

    // Define a SQL statement request
    let request_body = SqlStatementRequest {
        statement: "SELECT * FROM range(10)".to_string(),
        warehouse_id: "abcdefg123456789".to_string(),
        catalog: None,
        schema: None,
        parameters: None,
        row_limit: None,
        byte_limit: None,
        disposition: "INLINE".to_string(),
        format: "JSON_ARRAY".to_string(),
        wait_timeout: Some("10s".to_string()),
        on_wait_timeout: Some("CONTINUE".to_string()),
    };

    // Execute the SQL statement using the session
    let response = session.execute_sql_statement(request_body).await?;

    // Print the response
    println!("{:#?}", response);

    Ok(())
}

文档

有关详细文档,包括所有可用函数及其用法,请参阅 docs.rs 上的 Rustbricks 文档。

许可证

Rustbricks 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。

依赖项

~7–22MB
~300K SLoC