Crate ydb_unofficial
source ·Expand description
§Unofficial Ydb Client library
There is an alternative of ydb
§Targets:
- more usability
- more freedom to use wrappers or raw objects from grpc bindings
- ability to create your own implementation of common traits, like
Credentials - easy to use pool objects
§Goals:
- YQL Query for data (like DML)
- YQL Query for sheme (like DDL)
- Connect over grpcs (with tls)
- Connect over grpc (without tls) - not worked, unknown cause
-
Connection pool (with
deadpool) (featurepool) - Token authentication
-
Service account key authentication (feature
auth-sa) - Metadata authentication
- Query helpers (a lot of)
sqlxintegration - partially done (featuresqlx):- Connection string
- connection
- binding parameters
- preparing statements
- transaction manager
- DML (data) operations
- DDL (scheme) operations
- primitive types (bool, i8, i32, i64, u8, u32, u64, f32, f64, Vec<u8>, String)
- date types (Date, Datetime, Timestamp, Interval)
- Decimal type
- connection pool balancing for discovery
- compile-time checked queries
- migrations
- multiple transaction modes
- log statements
- operation parameters
§Features
Re-exports§
pub use client::YdbConnection;pub use client::YdbTransaction;pub use tonic;
Modules§
- Staff to implement authentication to Ydb. You can make your own auth by implement
Credentials - Common Ydb client, that wraps GRPC(s) transport with needed headers
- Some error types that may appear when interacting with Ydb
- A lot of autogenerated (with
tonic) grpc-types from ydb .proto files - pool
poolImplementation of pool ofYdbConnection. Uses methodlist_endpointsofDiscoveryServiceClientto create pool on multiple endpoints - sqlx
sqlxSQLX traits implementation for Ydb
Traits§
- The trait to invoke payload result from response. See examples in
crate::client
Type Aliases§
- Ascii encoded value to use in grpc metadata