Crate iceberg_catalog_hms

Source
Expand description

Iceberg Hive Metastore Catalog implementation.

To build a hive metastore with configurations

§Example

use std::collections::HashMap;

use iceberg::CatalogBuilder;
use iceberg_catalog_hms::{
    HMS_CATALOG_PROP_URI, HMS_CATALOG_PROP_WAREHOUSE, HmsCatalogBuilder,
};

#[tokio::main]
async fn main() {
    let catalog = HmsCatalogBuilder::default()
        .load(
            "hms",
            HashMap::from([
                (HMS_CATALOG_PROP_URI.to_string(), "127.0.0.1:1".to_string()),
                (
                    HMS_CATALOG_PROP_WAREHOUSE.to_string(),
                    "s3://warehouse".to_string(),
                ),
            ]),
        )
        .await
        .unwrap();
}

Structs§

HmsCatalog
Hive metastore Catalog.
HmsCatalogBuilder
Builder for [RestCatalog].

Enums§

HmsThriftTransport
Which variant of the thrift transport to communicate with HMS See: https://github.com/apache/thrift/blob/master/doc/specs/thrift-rpc.md#framed-vs-unframed-transport

Constants§

HMS_CATALOG_PROP_THRIFT_TRANSPORT
HMS Catalog thrift transport
HMS_CATALOG_PROP_URI
HMS catalog address
HMS_CATALOG_PROP_WAREHOUSE
HMS Catalog warehouse location
THRIFT_TRANSPORT_BUFFERED
HMS Catalog buffered thrift transport
THRIFT_TRANSPORT_FRAMED
HMS Catalog framed thrift transport