Expand description
§Rust Spice SDK
Rust SDK for Spice.ai
§Installation
Add Spice SDK
cargo add spiceai
§Usage
§Usage with locally running spice runtime
Follow the quiqstart guide to install and run spice locally
use spiceai::ClientBuilder;
#[tokio::main]
async fn main() {
let mut client = ClientBuilder::new()
.flight_url("http://localhost:50051")
.build()
.await
.unwrap();
let data = client.query("SELECT trip_distance, total_amount FROM taxi_trips ORDER BY trip_distance DESC LIMIT 10;").await;
}
§New client with https://spice.ai cloud
use spiceai::ClientBuilder;
#[tokio::main]
async fn main() {
let mut client = ClientBuilder::new()
.api_key("API_KEY")
.use_spiceai_cloud()
.build()
.await
.unwrap();
}
§Arrow Query
SQL Query
use spiceai::ClientBuilder;
#[tokio::main]
async fn main() {
let mut client = ClientBuilder::new()
.api_key("API_KEY")
.use_spiceai_cloud()
.build()
.await
.unwrap();
let data = client.query("SELECT * FROM eth.recent_blocks LIMIT 10;").await;
}
§Firecache Query
Firecache SQL Query
use spiceai::ClientBuilder;
#[tokio::main]
async fn main() {
let mut client = ClientBuilder::new()
.api_key("API_KEY")
.use_spiceai_cloud()
.build()
.await
.unwrap();
let data = client.fire_query("SELECT * FROM eth.recent_blocks LIMIT 10;").await;
}
§Documentation
Check out our Documentation to learn more about how to use the Rust SDK.
Structs§
- Client
- The
SpiceClient
is the main entry point for interacting with the Spice API. It provides methods for querying the Spice Flight and Firecache endpoints. - Client
Builder - Builder for creating a
SpiceClient
.
Traits§
- Stream
Ext - An extension trait for
Stream
s that provides a variety of convenient combinator functions.